Inferring variability from customized standard software products

Systematic variability management is an important prerequisite for successful software reuse. However, it requires significant effort and extensive domain knowledge to document and maintain information on variability. In this paper we present a tool-supported approach which supports semi-automatically inferring variability information from customized standard software products. The approach does not only enable the identification and documentation of variability information based on existing products, it is also capable of incrementally updating this information. To guarantee quick access to reusable code artifacts (e.g. requirements, features or software components), the presented solution stores these artifacts together with related requirements and a generated variability model in an asset repository. The tool-supported approach has been applied to customizations of Microsoft Dynamics AX ERP systems. Our experiences highlight the potential and benefits of our approach compared to manually gathering information on software variability.

[1]  Alexander Egyed,et al.  On Extracting Feature Models from Sets of Valid Feature Combinations , 2013, FASE.

[2]  Isabel John,et al.  Capturing Product Line Information from Legacy User Documentation , 2006, Software Product Lines.

[3]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[4]  Yinxing Xue Reengineering legacy software products into software product line based on automatic variability analysis , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[5]  B. Allan Quigley,et al.  Creating practical knowledge through action research : posing ploblems, solving ploblems, and improving daily practice , 1997 .

[6]  Rich Hilliard On representing variation , 2010, ECSA '10.

[7]  Christian Kästner,et al.  Variability Mining with LEADT , 2011 .

[8]  Tewfik Ziadi,et al.  Feature Identification from the Source Code of Product Variants , 2012, 2012 16th European Conference on Software Maintenance and Reengineering.

[9]  Norbert Seyff,et al.  Managing variability of ERP ecosystems: research issues and solution ideas from Microsoft Dynamics AX , 2012, VaMoS.

[10]  Klaus Schmid,et al.  Software product lines in action - the best industrial practice in product line engineering , 2007 .

[11]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[12]  Ned Kock Information Systems Action Research: An Applied View of Emerging Concepts and Methods (Integrated Series in Information Systems) , 2006 .

[13]  Linda M. Northrop,et al.  Adopting and Institutionalizing a Product Line Culture , 2002, SPLC.

[14]  Mathieu Acher,et al.  Reverse Engineering Architectural Feature Models , 2011, ECSA.

[15]  Paris Avgeriou,et al.  The notion of variability in software architecture: results from a preliminary exploratory study , 2011, VaMoS.

[16]  Denys Poshyvanyk,et al.  FLAT3: feature location and textual tracing tool , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[17]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[18]  Mathieu Acher,et al.  On extracting feature models from product descriptions , 2012, VaMoS.

[19]  Ruzanna Chitchyan,et al.  A framework for constructing semantically composable feature models from natural language requirements , 2009, SPLC.

[20]  Danny Weyns,et al.  Variability in software architecture: current practice and challenges , 2011, SOEN.

[21]  Christoph Pohl,et al.  An Exploratory Study of Information Retrieval Techniques in Domain Analysis , 2008, 2008 12th International Software Product Line Conference.

[22]  Krzysztof Czarnecki,et al.  Reverse engineering feature models , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[23]  Pierre-Yves Schobbens,et al.  Experimenting with the Selection of an Off-The-Shelf Conference Management System : Poster presented at the 1st Intl. Workshop on Variability Modelling of Software-intensive Systems (VaMoS) , 2006 .

[24]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[25]  Norbert Seyff,et al.  A Lightweight Approach for Product Line Scoping , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.