search menu icon-carat-right cmu-wordmark

A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0

Technical Report
This 2007 report describes an example application of the ADD method, an approach to defining a software architecture in which the design process is based on the quality attribute requirements the software must fulfill.
Publisher

Software Engineering Institute

CMU/SEI Report Number
CMU/SEI-2007-TR-005
DOI (Digital Object Identifier)
10.1184/R1/6571706.v1

Abstract

This report describes an example application of the Attribute-Driven Design (ADD) method developed by the Carnegie Mellon Software Engineering Institute. The ADD method is an approach to defining a software architecture in which the design process is based on the quality attribute requirements the software must fulfill. ADD follows a recursive process that decomposes a system or system element by applying architectural tactics and patterns that satisfy its driving quality attribute requirements. 

The example in this report shows a practical application of the ADD method to a client-server system. In particular, this example focuses on selecting patterns to satisfy typical availability requirements for fault tolerance. The design concerns and patterns presented in this report—as well as the models used to determine whether the architecture satisfies the architectural drivers—can be applied in general to include fault tolerance in a system. Most of the reasoning used throughout the design process is pragmatic and models how an experienced architect works.

Cite This Technical Report

Wood, W. (2007, February 1). A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0. (Technical Report CMU/SEI-2007-TR-005). Retrieved April 18, 2024, from https://doi.org/10.1184/R1/6571706.v1.

@techreport{wood_2007,
author={Wood, William},
title={A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0},
month={Feb},
year={2007},
number={CMU/SEI-2007-TR-005},
howpublished={Carnegie Mellon University, Software Engineering Institute's Digital Library},
url={https://doi.org/10.1184/R1/6571706.v1},
note={Accessed: 2024-Apr-18}
}

Wood, William. "A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0." (CMU/SEI-2007-TR-005). Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, February 1, 2007. https://doi.org/10.1184/R1/6571706.v1.

W. Wood, "A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0," Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, Technical Report CMU/SEI-2007-TR-005, 1-Feb-2007 [Online]. Available: https://doi.org/10.1184/R1/6571706.v1. [Accessed: 18-Apr-2024].

Wood, William. "A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0." (Technical Report CMU/SEI-2007-TR-005). Carnegie Mellon University, Software Engineering Institute's Digital Library, Software Engineering Institute, 1 Feb. 2007. https://doi.org/10.1184/R1/6571706.v1. Accessed 18 Apr. 2024.

Wood, William. A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0. CMU/SEI-2007-TR-005. Software Engineering Institute. 2007. https://doi.org/10.1184/R1/6571706.v1