Managing design-time uncertainty in software engineering

02/04/2016 - 15:30
02/04/2016 - 16:30
Michalis Famelis, (UBC)
Colloquium DIRO, Université de Montréal, Pavillon André-Aisenstadt, 2920 ch. de la Tour, salle 3195

Every software system is the accumulated result of a myriad of design decisions. But what happens when developers are uncertain about how to make these decisions? The best developer teams are those that are experts at keeping possible options open, juggling multiple design alternatives, and avoiding premature commitments. However, existing tools, languages and methodologies rarely, if ever, take design-time uncertainty into account. I will present a formal but practical framework that supports deferring design decisions while uncertainty persists, allowing development and analysis to continue. This requires drawing from diverse areas of software engineering to create novel abstractions, notations and automation approaches to seamlessly "lift" existing operations to correctly and efficiently handle sets of possible solutions to open design decisions.

Last edited by on Fri, 01/29/2016 - 16:18