Feature-Based Product Line Instantiation Using Source-Level Packages

In this paper, we discuss the construction of software products from customer-specific feature selections. We address variability management with the Feature Description Language (FDL) to capture variation points of product line architectures. We describe feature packaging, which covers selecting and packaging implementation components according to feature selections using the autobundle tool. Finally, we discuss a generic approach, based on the abstract factory design pattern, to make instantiated (customer-specific) variability accessible in applications.The solutions and techniques presented in this paper are based on our experience with the product line architecture of the commercial documentation generator DocGen.

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

[2]  Merijn de Jonge Source Tree Composition , 2002, ICSR.

[3]  David Sharp Pattern Usage in an Avionics Mission Processing Product Line , 2001 .

[4]  P. Bassctt Framing software reuse - lessons from real world , 1997 .

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

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

[7]  Arie van Deursen,et al.  Building documentation generators , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[8]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

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

[10]  K. Beck,et al.  Extreme Programming Explained , 2002 .

[11]  Paul G. Bassett,et al.  Framing software reuse: lessons from the real world , 1996 .

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

[13]  Jan Bosch,et al.  Product Instantiation in Software Product Lines: A Case Study , 2000, GCSE.

[14]  Ivar Jacobson,et al.  Software Reuse: Architecture, Process And Organization For Business Success , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[15]  Rudolph E. Seviora,et al.  Engineering components for ease of customisation and evolution , 2000, IEE Proc. Softw..

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

[17]  Arie van Deursen,et al.  Domain-specific language design requires feature descriptions , 2002 .

[18]  John Vlissides Pluggable factory, part 2 , 1999 .

[19]  Don S. Batory,et al.  Achieving extensibility through product-lines and domain-specific languages: a case study , 2000, TSEM.

[20]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[21]  Cristina Gacek,et al.  Implementing product line variabilities , 2001, SSR '01.

[22]  Andreas Zeller,et al.  Unified versioning through feature logic , 1997, TSEM.

[23]  Krzysztof Czarnecki,et al.  Generative Programming , 2001, ECOOP Workshops.