SAAM
Architecture proposals are hard to compare without shared change cases.
- ScenarioScenario: A change expresses the evaluation task.
- MappingMapping: Scenario impact is mapped to components.
- ComparisonComparison: Solutions are compared by their impact.
Context
Why this is important
Compare modifiability through concrete change cases.
Compare modifiability through concrete change cases.
SAAM: inspect the decision
The shop example uses the existing shared database and seven modules. Any added service or deployment model is a hypothetical extension. For a new EU tax rule, the shop team defines a SAAM scenario: pricing must be updated within one release. It marks affected pricing, cart, and invoice components and compares two designs by direct and indirect changes. The result shows which option isolates the rule and which touches several modules at once. The finding informs a decision; actual change cost is measured later.
This is how you read the picture
- Scenario Scenario
- Mapping Mapping
- Comparison Comparison
| Concept | Meaning | Review question |
|---|---|---|
| Scenario | A change expresses the evaluation task. | Which change case compares the two shop designs? |
| Mapping | Scenario impact is mapped to components. | What must remain the same for both designs? |
| Comparison | Solutions are compared by their impact. | Which conclusion can SAAM support here? |
Benefits & limitations
Helps if:
- Compare modifiability through concrete change cases.
- Phrase scenarios so each architecture represents the same change.
Boundaries
- Scenario coverage limits conclusions to the changes examined.
- SAAM compares modifiability for selected scenarios and does not assess general runtime performance.
In practice
- Write the EU tax scenario with its trigger, changed tax rule, affected orders, and measurable outcome; distinguish direct from indirect change consequences.
- Mark the pricing calculation, cart, invoicing module, and persisted orders in the component view, then link each scenario to components that must change or be checked.
- Compare scenarios by the number and reach of affected components, and record assumptions such as whether historical orders are recalculated or remain archived unchanged.
Read the detailed explanation
SAAM analyzes architecture designs through concrete scenarios, especially with respect to modifiability. Scenarios are classified and mapped to affected components and relationships; indirect effects expose structural coupling.
The method supports a traceable comparison of architecture proposals. Its outcome depends on comparable descriptions and precise scenarios; evaluating selected qualities says nothing about properties that were not examined.
The shop example uses the existing shared database and seven modules. Any added service or deployment model is a hypothetical extension. For a new EU tax rule, the shop team defines a SAAM scenario: pricing must be updated within one release. It marks affected pricing, cart, and invoice components and compares two designs by direct and indirect changes. The result shows which option isolates the rule and which touches several modules at once. The finding informs a decision; actual change cost is measured later. review and atam help compare this decision with adjacent concerns.
Check your understanding
Test yourself in three stages
ReadingCheck in the picture
Which change case compares the two shop designs?
View the solution with justification
Implementing a new tax rule.
ApplyingTransferred to a new situation
What must remain the same for both designs?
View the solution with justification
The change scenario, its assumptions, and the evaluation criterion.
EvaluateWeighing an alternative
Which conclusion can SAAM support here?
View the solution with justification
A comparison of modifiability for this case, not general runtime quality.
Explore further
These building blocks continue the thoughts of this page.
References
- SAAM: A Method for Analyzing the Properties of Software Architectures (opens in new tab)SEI primary work on scenario-based analysis and comparability.
- Scenario-Based Analysis of Software Architecture (opens in new tab)SEI work on using scenarios in architecture reviews.
- Evaluating System Architecture (opens in new tab)SEI history of the development of SAAM and ATAM.