Skip to main content
2011-2012 Colloquium Series: Joanne Atlee

2011-2012 CSE Lecture Series



Title: Feature-Oriented Requirements: the Good, the Bad, and the Ugly

Dr. Joanne Atlee
University of Waterloo

Date:   Oct 28, 2011
Time:  2:00pm
Room: 1345 EB

Host: Laura Dillon 




A software system is often thought of in terms of its constituent features. In requirements engineering, features can serve as a shared vocabulary among stakeholders of varying backgrounds (e.g., users, developers, marketers). In design, they can form the basis of system decomposition, in which feature modules are treated as separate components that are developed in relative isolation or are supplied by third-party vendors.

The challenge of feature modularity is in managing feature interactions. Seemingly independent features may interact with each other in subtle and surprising ways. For example, a new feature may override existing behaviour, violate invariant properties, or refine the definitions of terms. Determining how interacting features ought to behave is a requirements-engineering problem. However, the scale of the feature interaction problem is non-linear in the number of features -- to the point where identifying and resolving interactions dominate the feature-development process.

This presentation will give an overview of the research on feature modularity and interactions from the perspective of the feature-interaction community. It will look at general strategies for detecting and resolving classes of interactions. It will also look at some of the wicked open problems.

Joanne Atlee is an Associate Professor in the David R. Cheriton School of Computer Science at the University of Waterloo. Her research interests include software modelling, automated analysis of software models, modular software development, feature interactions, and software-engineering education. She spent 10 years investigating the feature interaction problem in the telephony domain, working with companies such as Nortel Networks, AT&T Labs, and Mitel Networks. More recently, she has started to explore the modelling, analysis, and coordination of automotive features. She was Program Co-Chair for the 31st International Conference on Software Engineering (ICSE’09) and was Program Chair for the 13th IEEE Requirements Engineering Conference (RE'05). She serves on the ACM SIGSOFT Executive Committee as an at-large member and is a member of the International Federation for Information Processing (IFIP) Working Group 2.9 on Software Requirements Engineering. She is a co-author with Shari Lawrence Pfleeger on their textbook “Software Engineering: Theory and Practice”.