Two Novel Concepts for systematic product line development

Framelets and implementation cases are new concepts to manage the complexity of product line development. Framelets are “small product lines” that address, as self-standing units, specific problems within the product line. A product line is obtained as a combination of framelets. Framelets simplify the development and extension of product lines, and make their integration with other product lines and with other software simpler. Implementation cases are introduced as ways to continuously monitor the adequacy of an evolving product line design. They describe an aspect of the product line instantiation process by specifying how an architectural feature for an application can be implemented using the constructs offered by the product line. This paper discusses the two concepts in the context of the design of a product line of on board satellite software. Heuristics for defining framelets and implementation cases derived from the experience are also discussed.

[1]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[2]  Erich Gamma,et al.  ET++—an object oriented application framework in C++ , 1988, OOPSLA 1988.

[3]  Douglas C. Schmidt,et al.  Object-oriented application frameworks , 1997, CACM.

[4]  Douglas C. Schmidt,et al.  Building application frameworks: object-oriented foundations of framework design , 1999 .

[5]  Juha Kuusela,et al.  Object-oriented technology for real-time systems , 1996 .

[6]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

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

[8]  Wolfgang Pree,et al.  Meta Patterns - A Means For Capturing the Essentials of Reusable Object-Oriented Design , 1994, ECOOP.

[9]  Jan Bosch,et al.  Framework Problems and Experiences , 1999 .

[10]  Kai Koskimies,et al.  Rearchitecting Legacy System - Concepts and Case Study , 1999, WICSA.

[11]  Reinhold Plösch,et al.  Object-Oriented Process Control Software , 1994, J. Object Oriented Program..

[12]  Ralph E. Johnson,et al.  Frameworks = (components + patterns) , 1997, CACM.

[13]  Adele Goldberg,et al.  Smalltalk-80 - the interactive programming environment , 1984 .

[14]  Wolfgang Pree,et al.  Design Patterns for Object-Oriented Software Development , 1994, Proceedings of the (19th) International Conference on Software Engineering.

[15]  Kai Koskimies,et al.  Rearchitecturing Legacy Systems— Concepts & Case Study , 2001 .

[16]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[17]  Gustav Pomberger,et al.  Quantitative and Qualitative Aspects of Object-Oriented Software Development , 1994, ISOOMS.

[18]  Marcus Fontoura A Systematic Approach for Framework Development , 1999 .