Deriving Architectural Tactics: A Step Toward Methodical Architectural Design
March 2003 • Technical Report
This 2003 technical report provides the status on the work being done by the SEI to understand the relationship between quality requirements and architectural design.
Software Engineering Institute
CMU/SEI Report Number
This is one of several reports that provide the current status on the work being done by the Software Engineering Institute (SEI) to understand the relationship between quality requirements and architectural design. The ultimate objective of this work is to provide analysis-based guidance to designers so that the quality attributes of generated designs are more predictable and better understood.
Currently, four distinct problems must be solved to achieve that objective: (1) the precise specification of quality attribute requirements, (2) the enumeration of architectural decisions that can be used to achieve desired quality attribute requirements, (3) a means of coupling one quality attribute requirement to the relevant architectural decisions, and (4) a means of composing the relevant architectural decisions into a design. Embodying the solutions to these four problems into a design method that is sensitive to business priorities is an additional problem. This report deals with the third problem—coupling one quality attribute requirement to architectural decisions that achieve it.
This report provides initial evidence that there is, in fact, a systematic relationship between general scenarios, concrete scenarios, architectural tactics, and design fragments. It examines, in detail, two concrete scenarios—one for performance and one for modifiability—and describes how to move from each scenario, through tactics, to design fragments that satisfy the scenario.