Architectural Modelling in Product Family Context

The software development community pursues the development of software systems with a higher degree of reuse, reduction of costs, and shorter time to market. One of the successful mechanisms followed to achieve these goals is based on sharing the development efforts, producing sets of similar products. This approach is known as Product Family Engineering (PFE). Architectural modeling (producing architectural models) in product families is a key issue in PFE activities and it will be the main focus of this paper. First, we will propose an architectural UML meta-model for PFE, able to represent the different variations in products. This meta-model will set up the conceptual basis for two valuable sets of activities that reflect industrial best practices: one deals with effectively building and maintaining the product family architecture and the other with the automatic derivation of architectures of specific products. A small example of automatic derivation is included.

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

[2]  Leonard J. Bass,et al.  Managing variability in software architectures , 2001, SSR '01.

[3]  Juan Antonio de la Puente,et al.  Framework for documenting design decisions in product families development , 1997, Proceedings. Third IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.97TB100168).

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

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

[6]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture: A System of Patterns: John Wiley & Sons , 1987 .

[7]  Mike Mannion,et al.  Using Patterns to Model Variability in Product Families , 1999, IEEE Softw..

[8]  Frank van der Linden,et al.  Software Product Families in Europe: The Esaps & Café Projects , 2002, IEEE Softw..

[9]  J. C. Wortmann,et al.  Development and Evolution of Software Architectures for Product Families , 1998, Lecture Notes in Computer Science.

[10]  Thomas G. Lane Studying software architecture through design spaces and rules , 1990 .

[11]  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).

[12]  Daniel Hoffman,et al.  Commonality and Variability in Software Engineering , 1998, IEEE Softw..

[13]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[14]  Martin L. Griss Implementing Product-Line Features By Composing Component Aspects , 2000 .

[15]  Mehdi Jazayeri,et al.  Software Architecture for Product Families: Principles and Practice , 2000 .