Variation Mechanisms and Multi-view Architecting in Platform-based Product Family Development

Jan Gerben Wijnstra

Research output: ThesisThesis fully internal (DIV)

3279 Downloads (Pure)


Over the past decades, the size and complexity of software within products has grown rapidly. Furthermore, the variation in products has increased. One way to cope with these trends is to develop products within the context of a product family. Product family development introduces a structured approach for reusing software across the products within the family. Product families are gaining in importance in the software industry. This thesis presents the work we have performed at Philips Research using industrial cases. It consists of three parts, each addressing an area of research related to product family development. In the first part we deal with the question how variation can be supported in a product family. We describe two methods for dealing with variation. The first method uses component frameworks with plug-in components. The component frameworks capture the generic functionality and form a stable part of the software architecture. The plug-in components provide the specific functionality that is needed to make a specific product. We focus especially on component frameworks, where the functionality is defined in the form of services. We describe a second method that is used for the development of a platform with reusable components. For a specific product components can be reused from this platform. An important element of this method is the explicit handling of interfaces, allowing the exchange of components providing the same interface. Another important element is the use of information models, which describe the data that are exchanged via the interfaces. In the second part of this thesis we describe a method that contributes to the management of complexity, especially product families. This method uses design aspects, which are related to views that crosscut the main decomposition of a system, such as data logging or error handling. They provide a valuable structuring mechanism for the various phases of development; we will give various examples of this. Design aspects help to obtain components that can be easily reused. Since design aspects do not deal with domain specific functionality, the design aspects and their relation to the architecture requirements we describe in our study are broader applicable. In the third part we deal with the question how a product family approach can be successfully introduced and maintained. In this part, we deal not only with technical issues, but also with business, process and organization issues. Based on a number of case studies, we identify important factors that must be considered to obtain successful product family development. Furthermore, we introduce a classification scheme for product family approaches, which is based platform coverage and variation mechanisms. This classification scheme supports the selection of a suitable product family approach and can be used to evaluate and compare existing product families. We also discuss product family introduction strategies using the scheme.
Original languageEnglish
QualificationDoctor of Philosophy
Awarding Institution
  • University of Groningen
  • van den Bosch, R.J, Supervisor, External person
Award date3-Dec-2004
Print ISBNs9074445632
Publication statusPublished - 2004


  • GOO 54.52 programmatuurontwikkeling
  • Proefschriften (vorm)
  • Programmatuurtechniek, Productbeleid


Dive into the research topics of 'Variation Mechanisms and Multi-view Architecting in Platform-based Product Family Development'. Together they form a unique fingerprint.

Cite this