Research interests

photo of Dr. Jo AtleeProfessor Atlee is interested in all aspects of model-based software engineering, with a particular interest in requirements and design notations that are understandable and readable by practitioners, yet have semantics that are precise enough to be automatically analyzed.

Much of her research work has focused on automated tools and techniques for analyzing software requirements and specifications. She works with model checkers and reachability analyzers that exhaustively check that a software model adheres to desired system properties (e.g., safety, liveness, and timing properties, expressed as logic formulae).

These tools hold the promise of providing software practitioners with push-button verification of their specifications and designs. However, such verification is computationally expensive in both space and time; thus, much of her work involves understanding how to structure and abstract specifications, so that their model checking is feasible.

Recently, Professor Atlee started a new research initiative in configurable model-driven development. In traditional model-driven development (MDD), software development is centred around a formal description (model) of the proposed software system, and other software artifacts, such as model analysis, code, test suites, are derived directly from the model. Configurable MDD is an extension of these ideas, such that specifiers are able to configure the semantics of their models, yet still have access to the types of analysis tools and code generators normally associated with model-driven development. Professor Atlee and colleagues have developed a formalism, called template semantics, that structures the operational semantics of a family of notations as a set of predefined templates that must be instantiated with user-provided parameter values. Thus, the semantics of a single notation can be described succinctly as a set of parameter values to this template. They use this formalism to develop parameterized semantics-based tools, such as model analyzers and code generators.

Other interests include software requirements, software architecture and design, feature interactions, and software engineering education and professionalism.

Degrees and awards

BS (William and Mary), MS, PhD (Maryland)

SRI International Fellow (1999)

Industrial and sabbatical experience

During her studies, Professor Atlee worked part time as a Systems Analyst at NASA Goddard, designing a distributed computing environment for coordinating distributed software components.

In 1992, during her first few months as a Waterloo faculty member, she was a visiting scientist at the Software Engineering Laboratory at Bell-Northern Research, now Nortel Networks. This collaboration led to her work on feature interactions in telephony, which, over the years, has involved extensive collaboration with researchers and developers at Nortel Networks, Mitel Networks, and AT&T Labs. As part of her work on automated analysis of software specifications, she has worked with specification writers and researchers at the U.S. Naval Research Laboratory (analyzing the operational flight program for a naval aircraft) and at Rockwell-Collins (analyzing the flight guidance system for a generic Rockwell aircraft).

In 1999, Professor Atlee spent her sabbatical as an international fellow at SRI International, visiting the Formal Methods Group.

She is currently working with GM Canada on their model-driven development techniques, focusing on requirements modeling and feature interactions.

Representative publications

S. L. Pfleeger and J. M. Atlee. Software Engineering: Theory and Practice, 4ed, Prentice Hall, 2009.

A. Prout, J. M. Atlee, N. A. Day, and P. Shaker. Semantically Configurable Code Generation. Proceedings of ACM/IEEE Int. Conf. on Model Driven Engineering Languages and Systems, 2008.

J. Niu, J. M. Atlee, and N. A. Day. Template Semantics for Model-Based Notations. IEEE Transactions on Software Engineering, 29(10):866-882, 2003.

J. D. Hay and J. M. Atlee. Composing Features and Resolving Interactions. Proceedings of ACM Foundations of Software Engineering (FSE), pp. 110-119, 2000.

University of Waterloo
Contact information: 

Profiles by type