Variability Representation in Product Lines using Concept Lattices: Feasibility Study with Descriptions from Wikipedia's Product Comparison Matrices

Several formalisms can be used to express variability in a product line. Product comparison matrix is a common and simple way to display variability of existing products from a same family, but they lack of formalisation. In this paper, we focus on concept lattices, another alternative already explored in several works to express variability. We first propose a method to translate a description from existing product comparison matrices into a concept lattice using Formal Concept Analysis. Then, we propose an approach to represent the case where a product family is described by other product families with interconnected lattices using Relational Concept Analysis. Because of the combinatorial aspect of these approaches, we evaluate the scalability of the produced structures. We show that a particular structure (AOC-poset) possesses interesting properties for the studies that we envision.

[1]  Jaejoon Lee,et al.  FORM: A feature-;oriented reuse method with domain-;specific reference architectures , 1998, Ann. Softw. Eng..

[2]  Bernhard Ganter,et al.  Formal Concept Analysis: Mathematical Foundations , 1998 .

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

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

[5]  Abdelhak-Djamel Seriai,et al.  Mining Features from the Object-Oriented Source Code of a Collection of Software Variants Using Formal Concept Analysis and Latent Semantic Indexing , 2013, SEKE.

[6]  Rainer Koschke,et al.  Locating Features in Source Code , 2003, IEEE Trans. Software Eng..

[7]  Nan Niu,et al.  Concept analysis for product line requirements , 2009, AOSD '09.

[8]  Houari A. Sahraoui,et al.  Recovering Architectural Variability of a Family of Product Variants , 2015, ICSR.

[9]  Klaus Kabitzsch,et al.  Extraction of feature models from formal contexts , 2011, SPLC '11.

[10]  Abdelhak-Djamel Seriai,et al.  Feature-to-code traceability in a collection of software variants: Combining formal concept analysis and information retrieval , 2013, 2013 IEEE 14th International Conference on Information Reuse & Integration (IRI).

[11]  Yiming Yang,et al.  Domain Feature Model Recovery from Multiple Applications Using Data Access Semantics and Formal Concept Analysis , 2009, 2009 16th Working Conference on Reverse Engineering.

[12]  Zhenchang Xing,et al.  Feature Location in a Collection of Product Variants , 2012, 2012 19th Working Conference on Reverse Engineering.

[13]  Amedeo Napoli,et al.  Relational concept analysis: mining concept lattices from multi-relational data , 2013, Annals of Mathematics and Artificial Intelligence.

[14]  C. Urtado,et al.  Concept lattices: A representation space to structure software variability , 2014, 2014 5th International Conference on Information and Communication Systems (ICICS).

[15]  Olivier Barais,et al.  Automating the formalization of product comparison matrices , 2014, ASE.

[16]  Mathieu Acher,et al.  From comparison matrix to Variability Model: The Wikipedia case study , 2013, 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[17]  Martin L. Griss,et al.  Integrating feature modeling with the RSEB , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).

[18]  F. Loesch,et al.  Restructuring Variability in Software Product Lines using Concept Analysis of Product Configurations , 2007, 11th European Conference on Software Maintenance and Reengineering (CSMR'07).

[19]  Abdelhak-Djamel Seriai,et al.  Reverse Engineering Feature Models from Software Configurations using Formal Concept Analysis , 2014, CLA.

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