Roadmap: How to Adopt This Practice
This roadmap describes how to adopt the Evolutionary Architecture Practice.
Main Description

Getting Started 

Begin by making sure the team, including key stakeholders, understands what software architecture is and the value for capturing it in a separate artifact from the implementation itself.  Thus, Concept: Software Architecture is a great place to start. 

Once there is agreement that the architecture should be captured, it is important to come to an agreement on what architectural information you want to capture and what format it should take.  Review the Artifact: Architecture Notebook and associated guidance.  Agree, as a team, what you want to document.

Now you can turn your attention to deciding as a team how and when the architectural Tasks should be performed. 

  • If you are working on a new project and you are at the beginning of the lifecycle, you can try envisioning the architecture (Task: Envision the Architecture) to be developed and then evolving the architecture (Task: Evolve the Architecture) as development proceeds.
  • If you are working on a project that is already underway, just take some time to document the decisions that have already been made and continue to evolve the architecture as development proceeds. See Task: Evolve the Architecture.

Common Pitfalls

Try to avoid spending too much time on developing extensive architectural documentation. Capture the key decisions and the rationale for these decisions.  Refer to more detailed documentation, where necessary.  Try to keep the documentation clear and concise.  Make sure that the consumers of the architecture (the development team) are comfortable with the format and content of the architecture.  Is there more or different information they would like see?  Would they like to see less?

Make sure that you have periodic checkpoints where the architecture is reviewed and refined to match the developed solution. 

More Information