Developers and acquirers of complex software systems need
their systems to be modifiable and to perform predictably. They may also
need them
to be secure, interoperable, portable, usable, and reliable. These quality
attributes depend more on the software architecture than on code-level
practices, such as language choice. Moreover, these qualities do not
exist in isolation. Performance affects modifiability, interoperability
affects security, and everything affects cost.
An architecture either
explicitly or implicitly makes tradeoffs among these qualities, often
with undesirable consequences. The SEI has developed
a high-payoff method for identifying the relationships and tradeoffs
among such quality attributes. The Architecture Tradeoff Analysis
MethodSM (ATAMSM)
enables software developers and acquirers to evaluate an architecture
for required quality attributes and business goals before the system
is actually developed. Because architectural decisions are difficult
and expensive to change later, an early evaluation with a proven
method makes sense.
Purpose
The SEI's work in software
architectures
| > |
ensures that architectural errors in software-intensive
systems can be detected early in development or evolution, when the
cost to fix them is minimal and the reduction in total cost of system
ownership is the greatest |
| > |
provides acquirers and developers with a high-level
capability for evaluating software architectures: the ATAM and its
variants. By conducting architecture evaluations on existing and
proposed software, acquirers and developers exert significantly greater
control over key software qualities, such as affordability, reliability,
security, modifiability, and performance. Conducting ATAM evaluations
also helps to mitigate the risks involved in making the necessary
tradeoffs among these software qualities. |
| > |
provides acquirers and developers with effective
architectural practices based on best commercial practices in leading
software organizations |
 |
 |
|
2002
Accomplishments
New
Book, Documenting Software Architectures, Published
Documenting Software Architectures,
published this year in the SEI
Series in Software Engineering, was written by SEI staff members to
help practicing architects produce a comprehensive documentation package
for a software architecture that will be useful to its many stakeholders.
The approach is view based; the fundamental principle is that documenting
an architecture consists of documenting the relevant views of that architecture
and then documenting the information that applies to more than one view.
Documenting
Software
Architectures is of immense value. The description and communication
of software architecture is quite crucial to its many stakeholders, and
this handbook should save you months of trials and errors, lots of undeserved
hassle, and many costly mistakes that could potentially jeopardize the
whole endeavor. It will become an important reference on the shelf of
the software architect.
Philippe Kruchten
Director of Process Development, Rational Software Canada
Architecture Training
Courses Developed
The SEI has developed new courses to help software
practitioners and acquirers better understand architectural principles
and best practices. The Software Architecture Familiarization course,
based on the book Software Architecture in Practice, Second Edition,
provides the fundamentals. The ATAM Evaluators Training course prepares
qualified practitioners to perform ATAM evaluations. The tutorial titled
"Integrating Software Architecture Analysis and Evaluation in DoD System
Acquisitions" presents architecture evaluation practices in an acquisition
context and provides guidelines for their use. These courses were piloted
in
FY2002 and will be among the SEI's
public courses in FY2003.
Architecture Tradeoff Analysis
Method Stabilized; Adoption Program to Begin
The SEI has been developing and piloting the ATAM and associated architecture
tradeoff technology for several years. The method has been technically
validated in both commercial and DoD applications and has now stabilized.
The SEI is preparing to offer adoption packages to outside organizations
to perform SEI-authorized ATAM evaluations. The adoption package includes
SEI training and coaching to prepare individuals from those organizations.
|