Task Descriptor: Refine the Architecture
Make concrete decisions about the architecture to provide guidance and direction to the development work for the iteration.
Based on Method Task:  Refine the Architecture
Relationships
RolesMain: Additional: Assisting:
InputsMandatory: Optional:
  • None
External:
  • None
Outputs
Steps
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.

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.

Properties
Multiple Occurrences
Event-Driven
Ongoing
Optional
Planned
Repeatable