An Exploratory Study of Information Retrieval Techniques in Domain Analysis

Domain analysis involves not only looking at standard requirements documents (e.g., use case specifications) but also at customer information packs, market analyses, etc. Looking across all these documents and deriving, in a practical and scalable way, a feature model that is comprised of coherent abstractions is a fundamental and non-trivial challenge. We conduct an exploratory study to investigate the suitability of information retrieval (IR) techniques for scalable identification of commonalities and variabilities in requirement specifications for software product lines. Accordingly, based on observations derived from industrial experience and on state-of-the-art research and practice, we also propose an initial framework, leveraging IR to systematically abstract requirements from existing specifications of a given domain into a feature model. We evaluate this framework, present a roadmap for its further extension, and formulate hypotheses to guide future work in exploring IR techniques for domain analysis.

[1]  Peter Sawyer,et al.  Shallow knowledge as an aid to deep understanding in early phase requirements engineering , 2005, IEEE Transactions on Software Engineering.

[2]  Richard A. Harshman,et al.  Indexing by Latent Semantic Analysis , 1990, J. Am. Soc. Inf. Sci..

[3]  Haiyan Zhao,et al.  An approach to constructing feature models based on requirements clustering , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[4]  Ilka Philippow,et al.  EXTENDING FEATURE DIAGRAMS WITH UML MULTIPLICITIES , 2002 .

[5]  Jan Bosch,et al.  Design and use of software architectures - adopting and evolving a product-line approach , 2000 .

[6]  Gerard Salton,et al.  A vector space model for automatic indexing , 1975, CACM.

[7]  R. Gray Entropy and Information Theory , 1990, Springer New York.

[8]  Jan Bosch,et al.  On the notion of variability in software product lines , 2001, Proceedings Working IEEE/IFIP Conference on Software Architecture.

[9]  Ricardo J. Machado,et al.  Automating Mappings between Use Case Diagrams and Feature Models for Software Product Lines , 2007, 11th International Software Product Line Conference (SPLC 2007).

[10]  Lidia Fuentes,et al.  AMPLE : Supporting Product Line Engineering through Synthesis of Aspect-Oriented and Model-Driven Development , 2008 .

[11]  Peter Sawyer,et al.  Identifying tacit knowledge-based requirements , 2006, IEE Proc. Softw..

[12]  Björn Regnell,et al.  An experiment on linguistic tool support for consolidation of requirements from multiple sources in market-driven product development , 2006, Empirical Software Engineering.

[13]  Krzysztof Czarnecki,et al.  Generative programming - methods, tools and applications , 2000 .

[14]  Peter Sawyer,et al.  A Flexible Framework To Experiment With Ontology Learning Techniques , 2007, SGAI Conf..

[15]  Elisa L. A. Baniassad,et al.  Isolating and relating concerns in requirements using latent semantic analysis , 2006, OOPSLA '06.