Talk at CSER 2017 Spring

I gave a talk at the CSER 2017 Spring meeting. You can find the slides here.

Lightweight Formal Support for Software Design

Software systems are the accumulated result of myriads 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. In this talk, I present past and planned work on helping the designers of software balance efficiency and quality in the face of uncertainty in contemporary software engineering. To do this I build on 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.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s