Essential Artifacts (in order of importance)
|
State at milestone
|
Prototypes
|
One or more executable architectural prototypes have been created to explore critical functionality and
architecturally significant scenarios. See the note below on the role of prototyping.
|
Risk List
|
Updated and reviewed. New risks are likely to be architectural in nature, primarily relating to the
handling of non-functional requirements.
|
Development Process
|
The development process, including any project-specific guidelines and templates, has been refined
based on early project experience, and is sufficiently defined for the construction phase to
proceed.
|
Development Infrastructure
|
The development environment for construction is in place, including all tools and automation
support for the process.
|
Software Architecture Document
|
Created and baselined, including detailed descriptions for the architecturally significant use cases
(use-case view), identification of key mechanisms and design elements (logical view), plus definition
of the process view and the deployment view (see Artifact: Deployment Model) if the system is
distributed or must deal with concurrency issues.
|
Design Model (and all constituent artifacts)
|
Defined and baselined. Design use-case realizations for architecturally significant scenarios have been
defined and required behavior has been allocated to appropriate design elements. Components have been
identified 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 requirements.
|
Data Model
|
Defined and baselined. Major data model elements (e.g. important entities, relationships, tables)
defined and reviewed.
|
Implementation Model (and all constituent artifacts,
including Implementation Elements)
|
Initial structure created and major components prototyped.
|
Vision
|
Refined, 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.
|
Software Development Plan
|
Updated and expanded to cover the Construction and Transition phases.
|
Iteration Plan
|
Iteration plan for the construction phase completed and reviewed.
|
Use-Case Model (Actors, Use Cases)
|
A use-case model (approximately 80% complete)-all use cases having been identified in the use-case
model survey, all actors having been identified, and most use-case descriptions (requirements
capture) have been developed.
|
Supplementary Specifications
|
Supplementary requirements capturing the non functional requirements are documented and reviewed.
|
Test Suite ("smoke test")
|
Tests implemented and executed to validate the stability of the build for each executable releases
created during the elaboration phase.
|
Test Automation Architecture
|
A baselined composition of the various mechanisms and key software elements that embody the fundamental
characteristics of the test automation software system.
|
Optional Artifacts
|
State at milestone
|
Business Case
|
Updated if architectural investigations uncover issues that change fundamental project assumptions.
|
Analysis Model
|
May be developed as a formal artifact; frequently not formally maintained, evolving into an early
version of the Design Model instead.
|
User Support Material
|
User Manuals and other training materials. Preliminary draft, based on use cases. May be needed
if the system has a strong user interface aspect.
|