On-demand integration of product lines: a study of reuse and stability

The integration of multiple SPLs is increasingly becoming a trend to enable on-demand derivation of new products and accelerate their time-to-market. Integration of SPLs often implies the reuse of a previously-implemented feature across other SPLs. The reuse of a SPL feature is only viable if the underlying programming mechanisms enable its smooth composition within the code of other SPLs. If the required modifications are significant, the design of the target SPLs are likely to be destabilized. This paper presents an exploratory study on the integration of three product lines from the board game domain. We investigate how aspect-oriented and feature-oriented programming impact on the reuse and stability of those product lines.

[1]  Francisco Dantas,et al.  Software Reuse versus Stability: Evaluating Advanced Programming Techniques , 2010, 2010 Brazilian Symposium on Software Engineering.

[2]  Mira Mezini,et al.  An Overview of CaesarJ , 2006, LNCS Trans. Aspect Oriented Softw. Dev..

[3]  Jan Bosch,et al.  Framework integration problems, causes, solutions , 1999, CACM.

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

[5]  Viviana Bono,et al.  Delta-Oriented Programming of Software Product Lines , 2010, SPLC.

[6]  Sven Apel,et al.  When to use features and aspects?: a case study , 2006, GPCE '06.

[7]  Sven Apel,et al.  A Case Study Implementing Features Using AspectJ , 2007, 11th International Software Product Line Conference (SPLC 2007).

[8]  Mira Mezini,et al.  Integrating independent components with on-demand remodularization , 2002, OOPSLA '02.

[9]  Vander Alves,et al.  Extracting and Evolving Code in Product Lines with Aspect-Oriented Programming , 2007, LNCS Trans. Aspect Oriented Softw. Dev..

[10]  Cláudio Sant'Anna,et al.  Evolving software product lines with aspects , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[11]  Christian Prehofer,et al.  Feature-Oriented Programming: A Fresh Look at Objects , 1997, ECOOP.

[12]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[13]  Thomas Leich,et al.  Aspectual mixin layers: aspects and features in concert , 2006, ICSE '06.

[14]  Thomas Leich,et al.  On the duality of aspect-oriented and feature-oriented design patterns , 2007, ACP4IS.