Identify reuse opportunities
Leverage reuse of existing components by evaluating their interfaces and the behavior that they provide. Work with
developers to gain consensus on the suitability of using existing components.
|
Identify architecturally significant design elements
Refine the key abstractions to decide on the important design elements (such as classes and subsystems) that
make up the architecture, and provide at least a name and brief description for each. Add them to the Design. Gain consensus with the developers on architecturally significant design
choices.
|
Define development architecture and test architecture
Decide on additional architecture elements that will be required for the development and test activities. Work with the
developer(s) and Tester(s) to ensure that their requirements are addressed.
|
Evaluate results
Work with the whole team, particularly developers, stakeholders, testers, project managers, and testers, to verify
that the architecture decisions are appropriate for their purpose.
|
Communicate and document decisions
Ensure that those who need to act upon the architectural work understand it and are able to work with
it. Make sure that the description of the architecture clearly conveys not only the solution but also the
motivation and objectives related to the decisions that have been made in shaping the architecture. This will make
it easier for others to understand the architecture and to adapt it over time.
|
|