Identify architectural drivers and scenarios (for current iteration)
Identify the architecture priorities for the iteration. These can take the form of one or more Concept: Architecture Mechanism brought into scope by association to the use case
scenarios prioritized for the current iteration. Other drivers may also be apparent. For example, it may be necessary
to move certain aspects of the architecture from prototype to production quality implementation; or explore certain
aspects of the architecture to inform future iterations.
Identifying these drivers will enable the Role: Project Manager to allocate the resources needed.
|
Identify common solutions accross scenarios
Look for commonality across scenarios as they are they are being analyzed and designed, then propose
common components and patterns for their solution. The use of patterns includes covers both the
technical and business domains (see Concept: Design Mechanism and Concept: Business Pattern).
Identify Design Mechanisms
Refine Concept: Architecture Mechanisms into Concept: Design Mechanisms by looking at the requirements in context.
Identify Business Patterns
Identify areas of related or similar behaviour and propose any appropriate generic designs.
|
Identify Components from existing assets
Identify reuse opportunities: Leverage reuse of existing components by looking to their interfaces and
the behavior they provide.
Identify how to interface to existing components: Existing code and database definitions can be
'scavenged' to make work done on previous projects or iterations available to the current project/iteration. By using
potential reuse opportunities as a filter, the work that is reverse engineered can be focused on just the components
which are reusable for the current iteration.
|
Identify Components from the problem space
Consider each high priority use case in turn, mapping use case scenarios onto the architecture. Walk through
the actions that the use case initiates, highlighting the areas of the architecture that participate in realizing the
use case.
|
Define development and test architectures
Decide on additional architectural elements required to support the development and test activities.
|
Evaluate results
Verify that the architectural decisions taken are fit for purpose. This may take the form of such activities as
verifying the success of exploratory prototypes; peer review of documentation; or formal assessment reviews.
|
Communicate and document decisions
Ensure that those who need to act upon the architecture work are aware of what they need to know.
|
|