Managing Variability in Software Architectures
• SEI Report
Publisher
Software Engineering Institute
Topic or Tag
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.
Part of a Collection
Attribute-Driven Design Method Collection
Cite This SEI Report
Bachmann, F., & Bass, L. (2001, May 1). Managing Variability in Software Architectures. Retrieved September 11, 2026, from https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/.
@techreport{bachmann_2001,
author={Bachmann, Felix and Bass, Len},
title={Managing Variability in Software Architectures},
month={May},
year={2001},
institution={Software Engineering Institute, Carnegie Mellon University},
url={https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/},
note={Accessed: 2026-Sep-11}
}
Bachmann, Felix, and Len Bass. "Managing Variability in Software Architectures." Software Engineering Institute, Carnegie Mellon University. Software Engineering Institute, May 1, 2001. https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/.
F. Bachmann, and L. Bass, "Managing Variability in Software Architectures," Software Engineering Institute, Carnegie Mellon University. Software Engineering Institute, 1-May-2001 [Online]. Available: https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/. [Accessed: 11-Sep-2026].
Bachmann, Felix, and Len Bass. "Managing Variability in Software Architectures." Software Engineering Institute, Carnegie Mellon University, Software Engineering Institute, 1 May. 2001. https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/. Accessed 11 Sep. 2026.
Bachmann, Felix; & Bass, Len. Managing Variability in Software Architectures. Software Engineering Institute. 2001. https://www.sei.cmu.edu/library/managing-variability-in-software-architectures/