Model-Driven Product Line Architectures

  • Dirk Muthig
  • Colin Atkinson
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2379)

Abstract

It has long been recognized that successful product line engineering revolves around the creation of a coherent and flexible product line architecture that consolidates the common parts of a product family for reuse and captures the variant parts for simple adaptation. However, it has been less clear what form such architectures should take and how they should be represented. One promising approach is offered by the new Model-Driven Architecture (MDA) paradigm of the Object Management Group (OMG). This paradigm holds that an organization’s key architectural assets should be represented in an abstract “platform-independent” way, in terms of Unified Modeling Language (UML) models, and thereby be shielded from the idiosyncrasies and volatility of specific implementation technologies. In this paper, we discuss the opportunities and challenges involved in using the MDA paradigm for product line engineering and explain how model-driven, product line architectures can be developed, maintained and applied. After first outlining the core concepts of product line engineering and the ad hoc strategies currently used to support it, the paper provides a detailed metamodel of the information that needs to be stored within a product line architecture.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    OMG Unified Modeling Language Specification, http://www.omg.org, Version 1.3, First Edition, March 2000
  2. 2.
    P. Donohoe. Software Product Lines-Experience and Research Directions, Kluwer Academic Publishers, Proceedings of the 1st Software Product Line Conference, 2000Google Scholar
  3. 3.
    H. Gomaa, L. Kerschberg, V. Sugumaran, C. Bosch, I. Tavakoli, and L. O’Hara. A Knowledge-Based Software Engineering Environment for Reusable Software Requirements and Architectures, in Automated Software Engineering, vol. 3, Aug. 1996Google Scholar
  4. 4.
    I. Jacobson, M. Griss, and P. Jonsson. Software Reuse-Architecture, Process, and Organization for Business Success, Addison-Wesley, 1997Google Scholar
  5. 5.
    D. D’Souza and A. Wills. Objects, Components, and Frameworks with UML-The Catalysis Approach, Addison-Wesely, Object Technology Series, 1999Google Scholar
  6. 6.
    B. Keepence and M. Mannion. Using Patterns to Model Variability in Product Families, IEEE Software, Jul./Aug. 1999Google Scholar
  7. 7.
    G. Larsen. Designing Component-Based Frameworks using Patterns in the UML, in Communications of the ACM, Vol. 42, No. 10, October 1999Google Scholar
  8. 8.
    M. Coriat, J. Jourdan, and F. Boisbourdin. The SPLIT Method-Building Product Lines for Software-Intensive Systems in [2]Google Scholar
  9. 9.
    O. Flege. Using a Decision Model to Support Product Line Architecture Modeling, Evaluation, and Instantiation, in Proceedings of the Product Line Architecture Workshop with SPL-C, 2000Google Scholar
  10. 10.
    S. Thiel and F. Peruzzi. Starting a Product Line for an Envisioned Market-Research and Experience in an Industrial Environment, in [2]Google Scholar
  11. 11.
    J. Warmer and A. Kleppe. The Object Constraint Language-Precise Modeling with UML, Addison-Wesley, 1999Google Scholar
  12. 12.
    E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, 1995Google Scholar
  13. 13.
    J. Bayer, O. Flege, P. Knauber, R. Laqua, D. Muthig, K. Schmid, T. Widen, and J.-M. Debaud. PuLSE: A Methodology to Develop Software Product Lines, in the Proceedings of the Symposium on Software Reuse (SSR’99), May 1999Google Scholar
  14. 14.
    C. Atkinson, J. Bayer, C. Bunse, O. Laitenberger, R. Laqua, E. Kamsties, D. Muthig, B. Paech, J. Wüst, and J. Zettel. Component-based Product Line Engineering with UML, Component Series, Addison-Wesley, 2001Google Scholar
  15. 15.
    C. Atkinson, J. Bayer, and D. Muthig. Component-Based Product Line Development: The KobrA Approach, in [2]Google Scholar
  16. 16.
    C. Atkinson and D. Muthig. A Concrete Method for Developing and Applying Product Line Architectures, submitted to the Third Working IEEE/IFIP Conference on Software Architecture (WICSA-3), Montreal, August 2002Google Scholar
  17. 17.
    D. Coleman, P. Arnold, S. Bodoff, C. Dollin, H. Gilchrist. F. Hayes, P. Jeremaes. Object-Oriented Development: The Fusion Method, Prentice-Hall International, 1994Google Scholar
  18. 18.
    D. Muthig. A Light-weight Approach Facilitating an Evolutionary Transition towards Software Product Lines, Ph. D. Thesis, University of Kaiserslautern, Germany, 2002Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Dirk Muthig
    • 1
  • Colin Atkinson
    • 1
  1. 1.Fraunhofer Institute Experimental Software Engineering (IESE)KaiserslauternGermany

Personalised recommendations