The goal of the elaboration phase is to baseline the architecture of the
system to provide a stable basis for the bulk of the design and implementation
effort in the construction phase. The architecture evolves out of a
consideration of the most significant requirements (those that have a great
impact on the architecture of the system) and an assessment of risk. The
stability of the architecture is evaluated through one or more architectural
The primary objectives of the elaboration phase include:
In order to achieve this primary objectives, it is equally important to set up
the supporting environment for the project. This includes creating a development
case, create templates, guidelines, and setting up tools.
- To ensure that the architecture, requirements and plans are stable enough,
and the risks sufficiently mitigated to be able to predictably determine the
cost and schedule for the completion of the development. For most projects,
passing this milestone also corresponds to the transition from a
light-and-fast, low-risk operation to a high cost, high risk operation with
substantial organizational inertia.
- To address all architecturally significant risks of the project
- To establish a baselined architecture derived from addressing the
architecturally significant scenarios,
which typically expose the top technical risks of the project.
- To produce an evolutionary prototype
of production-quality components, as well as possibly one or more
exploratory, throw-away prototypes to mitigate specific risks such as:
- design/requirements trade-offs
- component reuse
- product feasibility or demonstrations to investors, customers, and
- To demonstrate that the baselined architecture will support the
requirements of the system at a reasonable cost and in a reasonable time.
- To establish a supporting environment.
- Defining, validating and baselining the architecture as
rapidly as practical.
- Refining the Vision, based on new information obtained
during the phase, establishing a solid understanding of the most critical
use cases that drive the architectural and planning decisions.
- Creating and baselining detailed iteration plans for the
- Refining the development case and putting in place the development
environment, including the process, tools and automation support
required to support the construction team.
- Refining the architecture and selecting components.
Potential components are evaluated and the make/buy/reuse decisions
sufficiently understood to determine the construction phase cost and
schedule with confidence. The selected architectural components are
integrated and assessed against the primary scenarios. Lessons learned from
these activities may well result in a redesign of the architecture, taking
into consideration alternative designs or reconsideration of the
Milestone: Lifecycle Architecture
The Lifecycle Architecture milestone establishes a managed baseline for the
architecture of the system and enables the project team to scale during the
Construction phase. (See Milestone: Lifecycle Architecture for more information).