Systematic definition of reusable architectures
Ilka Philippow, Matthias Riebisch · 2002
Reusable architectures, like frameworks or product lines, can improve the efficiency of software development. In this paper, methods from the areas of software engineering, domain engineering, software architectures and tool-supported implementation are combined and integrated to successfully build reusable architectures. Special emphasis is placed on process issues and on modeling. Software product line architectures form the reusable base of similar systems, and thus a system family. This architecture is developed in an evolutionary process while using existing systems and reusable components, so-called COTS systems. Within this process, the family's reusable core is specified by the integrated domain analysis methods. The implementation of the product line architecture is done with reusable frameworks. These frameworks are automatically instantiated by means of a method and a tool based on extended collaborations. The description of variants of the reusable architectures and the automatic instantiation technique are based on UML.