Page 211 -
P. 211
196 BARBER AND GRASER
Domain Model such that the resulting DRA reflects high-level quality attributes selected by the
architect to meet stakeholder needs. Prior to this research, deriving a DRA by identifying a set
of DRACs and allocating data and functionality to those DRACs was more akin to an art than
a science, requiring a significant amount of guesswork and intuition on the part of the architect.
The primary contribution of the RARE process is to formalize the DRA derivation process and to
quantify architecture evaluation in light of quality goals. Several challenges are associated with
architecture derivation, which partly explains why the architecture derivation process has been
largely manual to date. Selected challenges addressed by RARE include the following:
1. Prioritizing qualities under consideration: During RARE’s “Plan-Generation” phase, the
qualities selected and prioritized by the architect are represented in a “Derivation Plan” as
“quality goals.” For each quality goal, the “Derivation Plan” contains relevant strategies
(sequences of steps that transform the DRA) from the RARE knowledge base.
2. Selecting and applying heuristics for DRA derivation: The RARE KB associates one or
more heuristics (i.e., rules of thumb) with each quality goal, and the KB is structured such
that a goal may be associated with more than one heuristic and a heuristic may be associ-
ated with more than one goal. After selecting specific quality goals for a derivation, the
“Plan-Generation” phase initializes the “Derivation Plan” with the respective heuristics
and corresponding strategies. Thus the KB helps determine which heuristics to apply given
selected quality goals and how to apply them, based on corresponding strategies.
3. Resolving conflicts among qualities selected: Each strategy is defined with a list of con-
flicting strategies, and because strategies are associated with heuristics and heuristics are
related to quality goals, conflicting strategies infer conflicts among selected quality goals.
During “Plan-Generation,” conflicting strategies in the “Derivation Plan” are identified
and strategies associated with lower priority goals are pruned.
4. Evaluating the architecture with respect to quality goals: There is often a many-to-many
relationship between low-level metrics (e.g., structural metrics such as class coupling,
cohesion, and size) and associated high-level qualities (e.g., reusability, maintainabil-
ity), making correlation difficult. To bridge this gap, metrics are associated with quality
goals in the RARE KB through heuristics. Heuristics represent suggested approaches
for achieving a quality goal, and low-level metrics are useful indicators in determining
whether a heuristic has been achieved.
Despite the potential impact that the RARE tool promises for the architecting process, this
research is not designed to replace the architect altogether. On the contrary, the capabilities of the
architect remain essential to the derivation process. Unique situations arise in different domains and
under different projects that require architect input and cannot be addressed in a fully automated
fashion. Nonetheless, the architect is burdened with numerous concerns during derivation. Particu-
larly difficult to manage are issues related to capturing decision rationale. Without justification,
other stakeholders (e.g., other architects or project team members) may be quick to question the
architect’s overall “vision” as well as specific decisions. By capturing the “Derivation Plan” and
logging DRA transformation actions, RARE allows the information retained during derivation
to speak for the architect.
It is an even greater challenge for the architect to quantitatively demonstrate that a DRA under
derivation satisfies the quality attributes expressed by stakeholders. When deriving an architecture
as abstract as the SEPA DRA, there is much room for interpretation, and evaluation approaches
are often subjective. The RARE approach attempts to quantify DRA evaluation through metrics