Back to top

Agile Architecture Essentials | Agile Programming

Create a firm foundation for a robust, high-quality system

Use this practice to actively address the technical risks facing the project and establish an appropriate architecture.

This practice allows teams to:

  • Effectively address the technical risks facing the project
  • Share the major decisions about the structure and organization of the implemented system
  • Verify that the system exhibits the key characteristics expected by the customer
  • Objectively prove that the selected approach is fit for purpose
  • Add this new practice to your existing way of working
  • Focus on the essential things which need to be done
  • Ensure your development efforts stay on track

Things to Produce

This practice involves the production of a number of implementation and test related artifacts:

  • The architecture is documented by preparing an architecture description, a set of architectural test cases, and architectural views of the design model
  • The architecture is verified by testing the executable system produced

Key Competencies

This practice requires skills to shape systems, develop architectural prototypes, test the architecture, involve customers and coach the team.

Things to Do

The practice starts by identifying and clarifying those requirements that are of architectural signicance. This establishes the goals of the architecture.

The architecture solution is determined and tests are identied to verify the architecture implementation.

The initial architecture implementation is produced as a “skinny” system. Then, the architecture evolves through re-factoring and the addition of essential functionality.

All system builds are subject to the architectural tests to ensure the continued validity of the architectural implementation and to demonstrate that the solution meets the architectural significant requirements.