Introduction to the Architecture Development Method (ADM)

Overview    ADM Cycle    Adapting the ADM     Architecture Scope    Architecture Integration    Summary


ADM Overview

The TOGAF Architecture Development Method (ADM) is the result of continuous contributions from a large number of architecture practitioners. It describes a method for developing an enterprise architecture, and forms the core of TOGAF. It integrates elements of TOGAF as well as other available architectural assets, to meet the business and information technology needs of an organization.

The TOGAF Architecture Development Method (ADM) forms the core of TOGAF.  It is a method for developing an enterprise architecture to meet the business and information technology needs of an organization, utilizing the other elements of TOGAF described in this document, and other architectural assets available to the organization.

Relationship to Other Parts of TOGAF

There are two other main parts to TOGAF, besides the ADM:

The ADM and the Enterprise Continuum

As mentioned above, the TOGAF Enterprise Continuum provides a framework and context for the leveraging of relevant architecture assets in executing the ADM. These assets may include architecture descriptions, models and patterns taken from a variety of sources, as explained in Part III. At relevant places throughout the ADM, there are reminders to consider which architecture assets from the Enterprise Continuum the architect should use, if any. In some cases, for example in the development of a Technology Architecture, this may be TOGAF's own Foundation Architecture (see Part III). In other cases, for example in the development of a business architecture, it may be a reference model for e-Commerce taken from the industry at large.

The practical implementation of the Enterprise Continuum will often take the form of a repository that includes reference architectures, models and patterns that have been accepted for use within the enterprise, and actual architectural work done previously within the enterprise. The architect would seek to reuse as much as possible from the Continuum that was relevant to the project at hand. (In addition to the collection of architecture source material, the repository would also contain architecture development work-in-progress.)

The criteria for including source materials in an organization's Enterprise Continuum will typically form part of the organization's IT governance process.

The Enterprise Continuum is thus a framework (a "framework-within-a-framework") for categorizing architectural source material – both the contents of the architecture working repository, and the set of relevant, available reference models in the industry.

In executing the ADM, the architect is not only developing the end result of an organization-specific architecture, s/he is also populating the organization's own Enterprise Architecture Continuum, with all the architectural assets identified and leveraged along the way -- including, but not limited to, the resultant enterprise-specific architecture.

Architecture development is an iterative, on-going process, and in executing the ADM repeatedly over time, the architect gradually populates more and more of the organization's Enterprise Continuum. Although the primary focus of the ADM is on the development of the enterprise-specific architecture, in this wider context the ADM can also be viewed as the process of populating the enterprise's own Enterprise Continuum with relevant reusable building blocks.

In fact, the first execution of the ADM will often be the hardest, since the architecture assets available for re-use will be relatively few. Even at this stage of development, however, there will be architecture assets available from external sources such as TOGAF, as well as the IT industry at large, that could be leveraged in support of the effort.

Subsequent executions will be easier, as more and more architecture assets become identified; are used to populate the organization's Enterprise Continuum; and are thus available for future re-use.

The ADM is also useful to populate the Foundation Architecture of an enterprise. Business requirements of an enterprise may be used to identify the necessary definitions and selections in the Foundation Architecture. This could be a set of re-usable common models, policy and governance definitions, or even as specific as overriding technology selections (e.g. if mandated by law). Population of the Foundation Architecture follows similar principles as for an Enterprise Architecture, with the difference that requirements for a whole enterprise are restricted to the overall concerns and thus less complete than for a specific enterprise.

It is important to recognize that existing models from these various sources may not necessarily be integratable into a coherent enterprise architecture. "Integratability" of architecture descriptions is considered below, under Architecture Integration.

The ADM and the Resource Base

The TOGAF Resource Base is a set of resources - guidelines, templates, checklists, and other detailed materials - that support the TOGAF Architecture Development Method.

The individual sections of the Resource Base are described separately in Part IV so that they can be  referenced from the relevant points in the ADM as necessary, rather than having the detailed text clutter the description of the ADM itself.


The Architecture Development Cycle

Key Points

The following are the key points about the ADM:

These issues are considered in detail under Adapting the ADM below.

In addition to the method itself being iterative, there is also iteration within the ADM cycle, both among the individual phases and among the steps within each phase.

Basic Structure

The basic structure of the ADM is shown in Figure 1.

Throughout the ADM cycle, there needs to be frequent validation of results against the original expectations, both those for the whole ADM cycle, and those for the particular phase of the process.

architecture development cycle

Figure 1: Architecture Development Cycle

The phases of the ADM cycle shown in Figure 1 are further divided into steps, such as the ones depicted by the expansion of the Technology Architecture phase in Figure 2.

architecture development cycle - expansion

Figure 2: Architecture Development Cycle - Expansion

The phases of the cycle are described in detail in the following subsections. Phase D, the creation of a Technology Architecture, is described in even greater detail in a separate section, Target Architecture - Detailed Description.

Note that output is generated throughout the process, and that the output in an early phase may be modified in a later phase. The versioning of output is managed through version numbers.


Adapting the ADM

The ADM is a generic method for architecture development, which is designed to deal with most system and organizational requirements. However, it will often be necessary to modify or extend the ADM, to suit specific needs. One of the tasks before applying the ADM is to review its components for applicability, and then tailor them as appropriate to the circumstances of the individual enterprise. This activity may well produce an 'enterprise-specific' ADM.

One reason for wanting to adapt the ADM, which it is important to stress, is that the order of the phases in the ADM is to some extent dependent on the maturity of the architecture discipline within the enterprise concerned. For example, if the business case for doing architecture at all is not well recognized, then creating an Architecture Vision is almost always essential; and a detailed Business Architecture often needs to come next, in order to underpin the Architecture Vision, detail the business case for remaining architecture work, and secure the active participation of key stakeholders in that work. In other cases a slightly different order may be preferred: for example, a detailed inventory of the baseline environment may be done before undertaking the Business Architecture.

The order of phases may also be defined by the business and architectural principles of an enterprise. For example, the business principles may dictate that the enterprise be prepared to adjust its business processes to meet the needs of a packaged solution, so that it can be implemented quickly to enable fast response to market changes. In such a case, the Business Architecture (or at least the completion of it) may well follow completion of the Information Systems Architecture or the Technology Architecture.

Another reason for wanting to adapt the ADM is if TOGAF is to be integrated with another enterprise framework (as explained in Part I, TOGAF in the Enterprise). For example, an enterprise may wish to use TOGAF and its generic ADM in conjunction with the well-known Zachman Framework, or another enterprise architecture framework that has a defined set of deliverables specific to a particular vertical sector: Government, Defense, e-Business, Telecommunications, etc. The ADM has been specifically designed with this potential integration in mind.

Other possible reasons for wanting to adapt the ADM include:

Note: Readers interested in the concept of infrastructure architecture, and/or its use to support acquisitions and mergers, consolidation, etc., are referred to Part IV, Infrastructure Architecture, where an approach to infrastructure architecture using the TOGAF ADM is outlined.


Architecture Governance

The ADM, whether adapted by the organisation or used as documented here, is a key process to be managed in the same manner as other architecture artefacts in the Enterprise Continuum. The Architecture Board should be satisfied that the method is being applied correctly across all phases of an architecture development iteration. Compliance with the ADM is fundamental to the governance of the architecture, to ensure that all considerations are made and all required deliverables are produced.


Process Management

The management of all architectural artefacts, governance, and related processes should be supported by a managed environment. Typically this would be based on one or more repositories supporting versioned object and process control and status.

Governance process management includes repository management, access, communication, training, and accreditation. This section is included to identify the major information areas managed by the governance repository. The repository initially consists of one or more data storage facilities that will contain the following types of information:

The Governance artefacts and process are themselves part of the contents of the Enterprise Continuum.


Scoping the Architecture Activity

There are many reasons for wanting to limit the scope of the architecture activity to be undertaken, most of which come down to the availability of people, finance, and other resources. The scope chosen for the architecture activity is normally directly dependent on available resources, and in the final analysis  is usually a question of feasibility.

Whatever the reasons for wanting or having to limit the scope of the architecture activity, there are four dimensions in which the scope may be defined and limited:

These aspects are explored in detail below. In each case, particularly in large-scale environments where architectures are necessarily developed in a federated manner, there is a danger of architects optimizing within their own scope of activity, instead of at the level of the overall enterprise. It is often necessary to sub-optimize in a particular area, in order to optimize at the enterprise level. The aim should always be to seek the highest level of commonality and focus on scalable and reusable modules in order to maximize re-use at the enterprise level.

Enterprise Scope / Focus

One of the key decisions is the focus of the architecture effort, in terms of the breadth of overall enterprise activity to be covered (which specific business sectors, functions, organizations, geographical areas, etc.).

One important factor in this context is the increasing tendency for large-scale architecture developments to be undertaken in the form of "federated architectures" - independently developed, maintained and managed architectures that are subsequently integrated within a meta architectural framework. Such a framework specifies the principles for interoperability, migration, and conformance. This allows specific business units to have architectures developed and governed as stand-alone architecture projects.

Complex architectures are extremely hard to manage, not only in terms of the architecture development process itself, but also in terms of getting buy-in from large numbers of stakeholders. This in turn requires a very disciplined approach to identifying common architectural components, and management of the commonalties between federated components – deciding how to integrate, what to integrate, etc.

There are two basic approaches to federated architecture development:

The US government, and in particular the US Department of Defense, has undertaken and published leading work in the field of federated architectures, emphasizing the need for integrated repositories and metamodels to aid integration and ensure interoperability. This work is very much at the leading edge of the state of the art, however, and what works in practice is still very much a matter of debate.

The Introduction section in the Federal Enterprise Architecture Framework published by the US Federal CIO Council explains the choices in approach that faced the US government in the development of the Federal Enterprise Architecture Framework (FEAF):

"In developing the Federal Enterprise Architecture Framework, the CIO Council evaluated three approaches.

.....To mitigate the risk of overreaching with minimal returns, curtail startup costs for a conventional architecture, and realize returns quickly, the CIO Council selected the segment approach.......

The Federal Enterprise Architecture Framework allows critical parts of the overall Federal Enterprise, called architectural segments, to be developed individually, while integrating these segments into the larger Enterprise Architecture."

The FEAF approach thus seeks to do a "complete" enterprise architecture across a succession of selected individual business domains (or segments), and then to integrate these into a more comprehensive, overarching enterprise architecture.

Conversely, the "Practical Guide to Federal Architecture", also issued by the US Federal CIO Council, highlights the dangers of selecting too narrow an enterprise scope, particularly at the higher business levels:

It is critically important that EA development be approached in a top-down, incremental manner, consistent with the hierarchical architectural views that are the building blocks of proven EA frameworks.... In doing so, it is equally important that the scope of the higher level business views of the EA span the entire enterprise or agency. By developing this enterprise-wide understanding of business processes and rules, and information needs, flows, and locations, the agency will be positioned to make good decisions about whether the enterprise, and thus the EA, can be appropriately compartmentalized. Without doing so, scoping decisions about the EA run the risk of promoting "stove-piped" operations and systems environments, and ultimately sub-optimizing enterprise performance and accountability.  "A Practical Guide to Federal Architecture", Chief Information Officer Council, Version 1.0, February 2001.

Current experience does seem to indicate that, in order to cope with the increasingly broad focus and ubiquity of architectures, it is often necessary to have a number of different architectures existing across an enterprise, focused on particular time frames, business functions, or business requirements; and this phenomenon would seem to call into question the feasibility of a single enterprise-wide architecture for every business function or purpose. In such cases, the paramount need is to manage and exploit the 'federations' of architecture. A good starting point is to adopt a publish-and-subscribe model that allows Architecture to be brought under a governance framework. In such a model, architecture developers and architecture consumers in projects (the supply and demand sides of Architecture work) sign up to a mutually beneficial framework of governance that ensures that:

1. architectural material is of good quality, up to date, fit for purpose, and published (reviewed and agreed to be made public).

2. usage of architecture material can be monitored, and compliance with standards, models, and principles can be exhibited, via

  1. a compliance assessment process that describes what the user is subscribing to, and assesses their level of compliance; and
  2. a dispensation process that may grant dispensations from adherence to Architecture standards and guidelines in specific cases (usually with a strong business imperative).

Publish and subscribe techniques are being developed as part of general IT governance and specifically for the Defense sphere."

Architecture Domains

A complete enterprise architecture should address all four architecture domains (business, data, applications, technology), but the realities of resource and time constraints often mean there is not enough time, funding, or resources to build a top-down, all-inclusive architecture description encompassing all four architecture domains.

Architecture descriptions will normally be built with a specific purpose in mind - a specific set of business drivers that drive the architecture development - and clarifying the specific issue(s) that the architecture description is intended to help explore, and the questions it is expected to help answer, is an important part of the initial phase of the ADM. 

For example, if the purpose of a particular architecture effort is to define and examine technology options for achieving a particular capability, and the fundamental business processes are not open to modification, then a full business architecture well may not be warranted. However, because the data, applications and infrastructure architectures build on the business architecture, the business architecture still needs to be thought through and understood.

While circumstances may sometimes dictate building an architecture description not containing all four architecture domains, it should be understood that such an architecture can not, by definition, be a complete enterprise architecture. One of the risks is lack of consistency and therefore ability to integrate. Integration either needs to come later, with its own costs and risks; or the risks and trade-offs involved in not developing a complete and integrated architecture need to be articulated by the architect, and communicated to and understood by the enterprise management.

Vertical Scope / Level of Detail

Care should be taken to judge the appropriate level of detail to be captured, based on the intended use of the Enterprise Architecture and the decisions to be made based on it. It is important that a consistent and equal level of depth be completed in each architecture domain (business, data, applications, infrastructure) included in the architecture effort. If pertinent detail is omitted, the architecture may not be useful. If unnecessary detail is included, the architecture effort may exceed the time and resources available, and/or the resultant architecture may be confusing or cluttered.

It is also important to predict the future uses of the architecture so that, within resource limitations, the architecture can be structured to accommodate future tailoring, extension, or reuse. The depth and detail of the Enterprise Architecture needs to be sufficient for its purpose, and no more.

John Zachman advocates developing enterprise-wide architecture at an enormous level of detail, in the same way as an aerospace company needs blueprints for everything down to nuts and bolts. Some regard this is an extreme position in terms of vertical scope, but it can certainly be justified when compared with the lifetime costs of alternatives. Zachman’s argument is that information systems are not special. In other industries where very expensive, complex things are built, and where there is an expectation of repair or change, models are kept at an enormous level of detail, with concurrent expense. Aeroplanes, buildings, and cars are built this way. Why are information systems different?

However, it is not necessary to aim to complete a detailed architecture description at the first attempt. Future iterations of the Architecture Development Method, in a further architecture life-cycle, will build on the artefacts and the  competencies created during the current iteration.

The bottom line is: there is a need to document all the models in an enterprise, to whatever level of detail is affordable, within an assessment of the likelihood of change and the concomitant risk, and bearing in mind the need to integrate the components of the different architecture domains (business / data / applications / infrastructure). The key is to understand the status of the enterprise's architecture work, and what can realistically be achieved with the resources and competencies available, and then focus on identifying and delivering the value that is achievable. Stakeholder value is a key focus: too broad a scope may deter some stakeholders (no RoI).

Time Horizon

The ADM is described in terms of a single cycle of architecture vision, and a set of target architectures (business, data, applications, technology) that enable the implementation of the vision.

However, when the enterprise scope is large, and/or the target architectures particularly complex, the development of target architecture descriptions may encounter major difficulties, or indeed prove "mission impossible", especially if being undertaken from scratch.

In such cases, a wider view may be taken, whereby an enterprise is represented by several different architecture instances, each representing the enterprise at a particular point in time. One architecture instance will represent the current enterprise state (the "as-is", or baseline). Another architecture instance, perhaps defined only partially, will represent the ultimate target end-state (the "vision"). In-between, intermediate or "transitional" architecture instances may be defined, each comprising its own set of target architecture descriptions.

By this approach, the target architecture work is split into two or more discrete stages:

  1. First develop Target Architecture descriptions for the overall (large-scale) system, demonstrating a response to stakeholder objectives and concerns for a relatively distant timeframe (for example, a six-year period)
  2. Then develop one or more "Transitional Architecture" descriptions, as increments or plateaus, each in line with and converging on the Target Architecture descriptions, and describing the specificities of the increment concerned.

In such an approach, the Target Architectures are evolutionary in nature, and require periodic review and update according to evolving business requirements and developments in technology, whereas the Transitional Architectures are (by design) incremental in nature, and in principle should not evolve during the implementation phase of the increment, in order to avoid the "moving target" syndrome. This of course is only possible if the implementation schedule is under tight control and relatively short (typically less than two years).

The Target Architectures remain relatively generic, and because of that are less vulnerable than the Transitional Architectures to obsolescence. They embody only the key strategic architectural decisions, which should be blessed by the stakeholders from the outset, whereas the detailed architectural decisions in the Transitional Architectures are deliberately postponed as far as possible (i.e. just before implementation) in order to improve responsiveness vis-à-vis new technologies and products.

The enterprise evolves by migrating to each of these Transitional Architectures in turn. As each Transitional Architecture is implemented, the enterprise achieves a consistent, operational state on the way to the ultimate vision. However, this vision itself is periodically updated to reflect changes in the business and technology environment, and in effect may never actually be achieved, as originally described. The whole process continues for as long as the enterprise exists and continues to change.

Such a breakdown of the architecture description into a family of related architecture products of course requires effective management of the set and their relationships.


Architecture Integration

There is a need to provide an integration framework that sits above the individual architectures. This can be an 'enterprise framework' such as Zachman to position the various domains and artefacts, or it may be a meta-architectural framework (i.e. principles, models and standards) to allow interoperability, migration, and conformance between federated architectures. The purpose of this meta-architectural framework is to: 1) allow the architect to understand how components fit into the framework; 2) derive the architectural models that focus on enterprise level capabilities; 3) define the conformance standards that enable the integration of components for maximum leverage and reuse.

As described above, a significant number of scoping decisions need to be taken, in terms of enterprise focus, architecture scope, level of detail, time horizons, and choice of transitional architectures, any one of which may result in a less than complete architecture description being developed. A potential way of assessing the gaps in scope or level of detail is to use an enterprise architecture framework (e.g. Zachman) to understand the coverage of the artefacts.

There are varying degrees of architecture description “integratability.” At the low end, integratability means that different architecture descriptions (whether prepared by one organizational unit or many) should have a “look and feel” that is sufficiently similar to enable critical relationships between the descriptions to be identified, thereby at least indicating the need for further investigation. At the high end, integratability ideally means that different descriptions should be capable of being combined into a single logical and physical representation.

At the present time the state of the art is such that architecture integration can be accomplished only at the lower end of the integratability spectrum. Key factors to consider are the granularity and level of detail in each artefact, and the maturity of standards for the interchange of architectural descriptions.

As organizations address common themes (such as service oriented architecture, and integrated information infrastructure), and universal data models and standard data structures emerge, integration toward the high end of the spectrum will be facilitated. However, there will always be the need for effective standards governance to reduce the need for manual co-ordination and conflict resolution.


Summary

The TOGAF ADM defines a recommended sequence for the various phases and steps involved in developing an architecture, but it cannot recommend a scope: this has to be determined by the organization itself, bearing in mind that the recommended sequence of development in the ADM process is an iterative one, with the depth and breadth of scope and deliverables increasing with each iteration. Each iteration will add resources to the organization's Architecture Continuum.

The choice of scope is critical to the success of the architecting effort. The key factor here is the sheer complexity of a complete, horizontally and vertically integrated enterprise architecture, as represented by a fully populated instantiation of the Zachman Framework. Very few enterprise architecture developments today actually undertake such an effort in a single development project, simply because it is widely recognized to be at the limits of the state of the art, a fact that John Zachman himself recognizes:

"Some day, you are going to wish you had all these models ...  However, I am not so altruistic to think that we have to have them all today ... or even that we understand how to build and manage them all today. But the very fact that we can identify conceptually where we want to get SOME day, makes us think more about what we are doing in the current time frame that might prevent us from getting to where we want to go in the future." John Zachman, in email correspondence to George Brundage.

John Zachman himself likes to point out the alternatives available to those who can't countenance the amount of work implied in developing the all models required in his framework. There are only three choices: trial and error ("knocking down the walls"); starting from new; or reverse engineering the architecture from the existing systems; all of which are risky and/or hugely expensive. What is necessary due to the pace of change is to have a set of readily deployable artifacts and a process for assembling them swiftly.

While such a complete framework is useful (indeed, essential) to have in mind as the ultimate long-term goal, in practice there is a key decision to be made as to the scope of a specific enterprise architecture effort. This being the case, it is vital to understand the basis on which scoping decisions are being made, and to set expectations aright for what is the goal of the effort.

The main guideline is to focus on what creates value to the enterprise, and to select horizontal and vertical scope, and time horizons, accordingly. Whether or not this is the first time around, understand that this exercise will be repeated, and that future iterations will build on what is being created in the current effort, adding greater width and depth.


Copyright © The Open Group, 1998, 1999, 2001, 2002, 2003