10. Architecture Alternatives and Trade-Offs
This chapter describes a technique to identify alternative Target Architectures and perform trade-offs between the alternatives.
10.1 Concept
There is often more than one possible Target Architecture that would conform to the Architecture Vision, Architecture Principles, and Requirements. It is important to identify alternative Target Architectures and build understanding of different possibilities and identify trade-offs between the alternatives. Creating an architecture normally requires trade-offs among competing forces. Presenting different alternatives and trade-offs to stakeholders helps architects to extract hidden agendas, principles, and requirements that could impact the final Target Architecture.
10.2 Method
It is most common that a single alternative does not exist that will meet all stakeholders' concerns. The TOGAF Standard supports a technique to investigate different alternatives and to discuss these with the stakeholders. Commonly, alternatives are defined per domain. This is done to simplify the analysis of the different alternatives. Of course, the alternatives per domain can be merged into on overall analysis of the alternatives for the whole architecture.
Figure 10-1 illustrates the architecture trade-off method.
The first part of the method uses the vision, principles, requirements, and other information to select sets of criteria fitting for different alternatives.
This second part of the method defines alternatives based on the criteria and builds understanding of each.
The third part of this method will either select one of the alternatives, or else combine features from more than one, to create the proposed alternative. Perform the following activities in just enough detail to support that decision. The method can be used for any phase at any level of an architecture.
10.2.1 Criteria
The criteria are used for the different alternatives and are derived from many different inputs to the architecture. Consider the influence of architecture principles, requirements, vision, and stakeholder concerns.
Each alternative will have distinct advantages or disadvantages that will need to be discussed and agreed with stakeholders.
Additional viewpoints and views may be needed to allow stakeholders to explore the alternatives and understand any dependencies,
risks, and uncertainties.
Typical examples of alternative types (based on criteria) include:
- Flexible alternative
- Time and cost of realizing the alternative, including any transitions and plateaus ("islands of stability")
- Time period over which estimated benefits of the alternative will be achieved
- Adherence to architecture styles or guidelines
- Solution delivery method (e.g., re-use, develop, buy)
- Minimal impact on business capabilities during implementation of the alternative
- Minimized risk associated with the alternative and any mitigating actions needed
- etc., ...
10.2.2 Identify Alternatives
Identify a set of possible alternatives using the Architecture Vision, Principles, and Requirements.
For each alternative:
- Define the overview criteria for the alternative
Use the Architecture Vision, Principles, and Requirements to define the criteria for the alternative. The criteria can be applied at different abstraction levels and ADM phases to identify different architecture alternatives.
- Describe the architecture for the alternative
Create a set of necessary architecture views to reach a proper understanding of the impact of the alternative. Add any other needed information. Do not go into too much detail. It is important, however, to carry out a good impact assessment and identify inter-dependencies between alternatives and the existent landscape and have a complete picture of the implications of the alternative implementation.
- Estimate gaps between the baseline and this alternative
Based on current understanding of the baseline state, outline the gaps that exist between the baseline and this alternative. If the baseline has not yet been defined, this gap analysis will be informal. More detail on how to do gap analysis appears in 5. Gap Analysis .
- Understand the impacts and trade-offs of the alternative across the Architecture Landscape:
- Identify the impact that the alternative will have on any existing architectures, and on any Transition Architecture within the Architecture Landscape
- Identify the impact the alternative will have on any running or planned implementation projects
- Identify constraints imposed on this alternative by any running or planned implementation projects
- Identify impacts on architecture in other ADM phases in this architecture project
- Identify Architecture Requirements/Change Requests from this architecture that will constrain other architectures
- Identify the final value delivered by the alternative, to what extent it covers the gap to reach the future state, and the purpose of the iteration
10.2.3 Choose from Alternatives and Define in Detail
This step draws on the alternatives to select or define an alternate alternative. Use trade-off analysis to resolve conflicts between alternatives:
- Understand the strengths and weaknesses of each alternative
- Compare the alternatives based on how well they align with the defined criteria
- Select the most suitable alternative or combine features from more than one of the alternatives, to define an alternate alternative in collaboration with stakeholders
- Assemble the alternative:
- Finalize the description of the alternative
- Ensure that all the architecture viewpoints identified have been worked through for the alternative
- Ensure that the alternative is defined in enough detail to support decision-making
- Resolve impacts across the Architecture Landscape
- Conduct formal stakeholder review to determine alternative decision and funding
The impact analysis of the alternatives was done in just enough detail to choose between them.
TOGAF is a registered trademark of The Open Group