Managing variability in software architectures

  • Authors:
  • Felix Bachmann;Len Bass

  • Affiliations:
  • Carnegie Bosch Institute, Carnegie Mellon University, Pittsburgh, Pa;Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pa

  • Venue:
  • SSR '01 Proceedings of the 2001 symposium on Software reusability: putting software reuse in context
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents experience with explicitly managing variability within a software architecture. Software architects normally plan for change and put mechanisms in the architecture to support those changes. Understanding the situations where change has been planned for and recording the options possible within particular situations is usually not done explicitly. This becomes important if the architecture is used for many product versions over a long period or in a product line context where the architecture is used to build a variety of different products. That is, it is important to explicitly represent variation and indicate within the architecture locations for which change has been allowed.We will describe how the management of variations in an architecture can be made more explicit and how the use of variation points connected to the choices a customer has when ordering a product can help to navigate to the appropriate places in the architecture.