99 Invited Talk

"Lightweight And Electric Object Models"

Daniel Jackson, MIT

Object models play a central role in almost all object-oriented development methods. Until now, however, object models have not been analyzable. I'll explain a new approach to object modelling comprising a simple and precise notation and a fully automatic analysis. The notation, Alloy, is designed to be as expressive as possible while retaining tractability, and supports a lightweight style of modelling that allows essential properties to be described tersely and naturally. Its analysis tool, Alcoa, makes object models "electric", by animating invariants and operations. As a result, object modelling is a more fun and compelling activity that combines the immediacy and concreteness of programming with the abstraction and partiality of formal specification.

More details at: http://sdg.lcs.mit.edu/alcoa/

Daniel Jackson is the Ross Career Development Professor of Software Technology at the Massachusetts Institute of Technology, and is the co-leader of the Laboratory for Computer Science?s Software Design Group. He received an MA from Oxford University (1984) in Physics, and his SM (1988) and PhD (1992) from MIT in Computer Science. He has been a software engineer for Logica UK Ltd. (1984-1986), and has worked for several large corporations, including AT&T, Digital and Fujitsu. He was Assistant Professor of Computer Science at Carnegie Mellon University (1992 -1997), where he was a designer of the curriculum for the Masters of Software Engineering degree. He is associate editor of several leading journals in software engineering, and has served on the programme committee of more than 30 international conferences. He has broad interests in several areas of software construction, including development methods, automatic analysis of designs and specifications, and reverse engineering of code.