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
   206   207   208   209   210   211   212   213   214   215   216