Active Reviews for Intermediate Designs (ARID)
Whereas methods such as the Architecture Tradeoff Analysis Method® (ATAM®) are available for analyzing complete software architectures, architects and designers often need insight into the viability of their early design strategies (or portions of their designs) before a comprehensive method such as the ATAM can be brought to bear. These early designs are often poorly documented and sketchy, lacking important details that will emerge later. Nevertheless, reviewing a design in its pre-release stages can uncover important inconsistencies or oversights whose early correction can be invaluable.
Out of this need was born Active Reviews for Intermediate Designs, or ARID. Combining the best of active design reviewers and scenario-based architecture evaluation methods such as the ATAM, ARID fills a niche in the spectrum of design review techniques.
Active design reviews are an effective technique for insuring quality detailed designs in software. The method ensures reviewers' active participation by asking them to utilize the design in a series of exercises, while carefully avoiding yes/no questions that are easy for a reviewer to undermine with a carelessly considered answer. This tests actual, not feigned, understanding.
The major steps of ARID are as follows.
-
The designer who has commissioned the review works with the ARID facilitator to identify the best reviewers. These are usually the software engineers who will be expected to use the design, as they are in the best position to judge its adequacy.
-
The designer prepares a briefing explaining the design, which is reviewed by the ARID facilitator. The designer presents the overview to the reviewers and walks through examples of using the design. A scribe captures questions and answers.
-
The reviewers brainstorm scenarios for using the design to solve problems they expect to face. After a facilitated prioritization, the resulting set of scenarios operationally defines what it means for the design to be usable: If it performs well under the adopted scenarios, then it must be agreed that the design has passed the review.
-
The reviewers begin to jointly craft code (or pseudo-code) that uses the design's services to solve the problem posed by each high-priority scenario. The scribe records issues, problems, and places where the stakeholders get stuck.
A typical ARID exercise takes about a day and a half.
Additional Information
Read More:
-
Evaluating Software Architectures: Methods and Case Studies, by Paul Clements, Rick Kazman, and Mark Klein.
-
Robert L. Nord, James E. Tomayko, Rob Wojcik, Integrating Software-Architecture-Centric Methods into Extreme Programming (XP) (CMU/SEI-2004-TN-036).
-
Paul C. Clements, Active Reviews for Intermediate Designs (CMU/SEI-2000-TN-009)
Products and Services: Learn about ARID, and architecture evaluation and analysis related products and services.
Contact Information: For technical details about ARID, contact Paul Clements.
Working with the SEI: Learn more about working with the SEI in software architecture.