Combining feature modeling and Object Oriented concepts to manage the software variability

Feature modeling is a key technique for capturing and explicit documenting the software product line variability. Object Oriented (00) concepts have been frequently used to encapsulate and reuse software resources in large scale systems. To improve the possibilities of combination and derivation between distinct feature models, this paper defines the Object Oriented Feature Modeling (OOFM) approach. It is a combination of Object Oriented concepts and Feature Modeling techniques that allows the declaration of feature classes and its derivation methods, and the instantiation of feature objects with their encapsulated informations. As a result, the integration and the production of multiple product lines, by the definition of feature frameworks, combining distinct feature classes according to the domain interest, can be applied.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Klaus Schmid,et al.  A customizable approach to full lifecycle variability management , 2004, Sci. Comput. Program..

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

[4]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[5]  Matthias Weber,et al.  Managing Highly Complex Product Families with Multi-Level Feature Trees , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[6]  Tim Trew,et al.  Using Feature Diagrams with Context Variability to Model Multiple Product Lines for Software Supply Chains , 2008, 2008 12th International Software Product Line Conference.

[7]  Paul Clements,et al.  Variability in Software Product Lines , 2005 .

[8]  Klaus Pohl,et al.  Variability management in software product line engineering , 2006, ICSE.

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

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

[11]  Marko Rosenmüller,et al.  Automating the Configuration of Multi Software Product Lines , 2010, VaMoS.

[12]  Fei Cao,et al.  Automating Feature-Oriented Domain Analysis , 2003, Software Engineering Research and Practice.

[13]  Krzysztof Czarnecki,et al.  Staged Configuration Using Feature Models , 2004, SPLC.

[14]  Kathrin Berg,et al.  A Critical Analysis of Using Feature Models for Variability Management , 2005 .

[15]  Krzysztof Czarnecki,et al.  Staged configuration through specialization and multilevel configuration of feature models , 2005, Softw. Process. Improv. Pract..

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

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

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

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

[20]  Alessandro Pasetti,et al.  XML-Based Feature Modelling , 2004, ICSR.

[21]  Jan Bosch,et al.  Managing Variability in Software Product Lines , 2000 .