Software Architecture Evaluations |
* Requires Javascript enabled |
How do you know if a software architecture for a system is suitable without having to build the system first?
The answer is to conduct an evaluation of it. A formal software architecture evaluation should be a standard part of the architecture-based software development life cycle. Architecture evaluation is a cost-effective way of mitigating the substantial risks associated with this highly important artifact.
The achievement of a software system's qualities attributes depends much more on the software architecture than on code-related issues such as language choice, fine-grained design, algorithms, data structures, testing, and so forth. Most complex software systems are required to be modifiable and have good performance. They may also need to be secure, interoperable, portable, and reliable. But for any particular system, what precisely do these quality attributes - modifiability, security, performance, reliability - mean? Can a system be analyzed to determine these desired qualities? How soon can such an analysis occur? What happens these quality attributes are in conflict with each other? How can the tradeoffs be examined, analyzed, and captured?
The SEI has developed the following methods for evaluating system and software architectures:
- Active Reviews for Intermediate Designs (ARID), used to evaluate early designs or portions of designs for their viability in satisfying stakeholder concerns
- Architecture Tradeoff Analysis Method® (ATAM®), used to reveal how well the architecture satisfies particular quality attribute requirements and the risks, sensitivities, and tradeoffs involved in satisfying the requirements
- Cost-Benefit Analysis Method (CBAM), which guides system engineers and other stakeholders to make economic and utility tradeoffs associated with the architectural decisions
These techniques can be used alone or in combination to obtain early and continuous benefits to any software development project.
Read More
To learn more about architecture evaluations, you may wish to view
Work With Us
SEI products and services associated with architecture evaluations include
- Active Reviews for Intermediate Designs (ARID)
- Architecture Tradeoff Analysis Method® (ATAM®)
- ATAM Evaluator Certificate Program
- ATAM Evaluator Training Course
- ATAM Facilitator Training Course
- ATAM Lead Evaluator Certificate Program
- Cost Benefit Analysis Method (CBAM)
- Evaluating Software Architectures: Methods and Case Studies
Architecture Evaluation Contacts
For technical details or to arrange architecture evaluation products and services: Linda Northrop.



