Agile Architecture Method Explained - Chapter 7 - Reviewing Your Architecture

From Guidance Share

Jump to: navigation, search

- J.D. Meier , Alex Homer, David Hill, Jason Taylor , Prashant Bansode , Lonnie Wall, Rob Boucher Jr, Akshay Bogawat.


Overview

Reviewing the architecture for your application is a critically important task to reduce the cost of mistakes, and find and fix architectural problems as early as possible. Architecture review is a proven, cost effective way of reducing project costs and reducing the chances of an architectural failure. Create your architecture to make it as easy as possible to communicate and review your architecture. Build you architecture with common review questions in mind, both to improve your architecture and to reduce the time required for each review.

The main goal of an architecture review is to verify that the architecture correctly links the functional requirements and the quality attributes with the proposed technical solution. Additionally, it helps to identify issues and areas of improvement.


Scenario-Based Evaluations

Scenario-based evaluations are a powerful method for reviewing an architecture design. In a scenario-based evaluation, the focus is on the scenarios that are most important from the business perspective, and which have largest impact on the architecture. Consider one of the following common review methodologies:

  • Software Architecture Analysis Method (SAAM). SAAM was originally designed for assessing modifiability, but later was extended for reviewing architecture with respect to quality attributes such as modifiability, portability, extensibility, integratibility, and functional coverage. SAAM is also used to review the performance and reliability aspect of the architecture.
  • Architecture Tradeoff Analysis Method (ATAM). ATAM is a refined and improved version of SAAM that helps review architectural decisions with respect to the quality attributes requirements, and how well they satisfy particular quality goals.
  • Active Design Review (ADR). This architecture review technique is best suited for incomplete or in-progress architectures. The main difference is that the review is more focused on set of issues or individual sections of the architecture at a time, rather than performing a general review.
  • Active Reviews of Intermediate Designs (ARID). This architecture review technique combines the ARD aspect of reviewing in-progress architecture with focus on set of issues, and ATAM and SAAM’s approach of scenario-based review focused on quality attributes.
  • Cost Benefit Analysis Method (CBAM). This architecture review technique focuses on analyzing the costs, benefits, and schedule implications of architectural decisions.
  • Architecture Level Modifiability Analysis (ALMA). Evaluates the modifiability of architecture for Business Information Systems (BIS).
  • Family-Architecture Assessment Method (FAAM). This architecture review technique evaluates information-system family architectures for interoperability and extensibility.
Personal tools