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
Abstract:
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.
Biography
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”.