Extractive Product Line Requirements Engineering

Nan Niu
University of Toronto


Proactive approaches to product line engineering slow its adoption by requiring substantial up-front effort and abrupt transition from an organization's existing practices. To lower the adoption barrier, we contribute a lightweight framework for extracting, modeling, and analyzing a software product line's requirements assets. We define the notion of functional requirements profiles (FRPs) according to the linguistic characterization of a domain's action-oriented concerns, and show that FRPs can be extracted from a natural language document based on domain-aware lexical affinities that bear a 'verb - direct object' relation. We then use Fillmore's case theory to characterize each FRP's semantics so as to model the domain's commonalities and variabilities. We introduce on-demand cluster analysis to accommodate stakeholders' different goals in finding structures in requirements, and perform concept analysis to assess requirements modularity and interactions. Several empirical studies are described to show that our framework complements contemporary methods by enabling engineers to develop domain models more easily. Overall, our work shows that, in extractive product line requirements engineering, 'scenarios define problem, primitives determine context, and form follows function.'