Page 193 -
P. 193
178 BARBER AND GRASER
goals to derive a particular DRA. The goals selected will be accompanied by corresponding
heuristics (guidance on satisfying goals), metrics (means for measuring characteristics
related to heuristics), and strategies (approaches for achieving heuristics).
2. Copy and Adjust Heuristics, Strategies, Metrics, and Metric Ranges under Selected Goals
(performed jointly by RARE and the architect): Following selection and prioritization of
goals, RARE copies the goals and corresponding heuristics, strategies, and metrics to a
working set of “Derivation Goals” that will become part of the Derivation Plan. While
it is not necessary to modify the heuristics, metrics, and strategies under a selected goal
after being copied from the KB, the architect has the option to prune heuristics, adjust
heuristic weights, prune strategies, prune metrics, adjust metric weights, and change metric
acceptance range values. Such adjustments allow the architect to tailor the plan when
deriving a particular DRA. For example, the architect may want to define subsystems
(collections of DRACs) manually, and thus would want to remove strategies for creating
subsystems. The architect may also modify acceptable metric ranges, since the tolerance
for a metric in the context of a particular project (e.g., “Number of services in DRAC”
must be between 2 and 8) may be more or less than the range defined in the KB.
In most cases, the architect (particularly a novice architect) would accept the guid-
ance offered by the KB. However, given the ability to massage heuristics, strategies, and
metrics, a company may choose to install its own guidelines or an architect may decide
to customize to accommodate project-specific exceptions.
3. Build Derivation Plan (performed by RARE): From the set of goals and associated
heuristics, metrics, and strategies selected by the architect, RARE builds a Derivation
Plan, a sequence of steps that determines when selected strategies can be applied during
derivation.
4. Perform “Static” Strategy Evaluation (performed jointly by RARE and the architect):
Strategies assigned to the Derivation Plan may conflict based on conflict declarations in
each strategy definition. When two strategies conflict, RARE suggests that the strategy
associated with the lower priority goal and/or lower weight heuristic be pruned from the
Derivation Plan. The resulting set of pruned and nonpruned strategies is presented to the
architect for review.
DRA Plan-Execution
The Plan-Execution phase processes the Derivation Plan created during the Plan-Generation
phase by stepping through the sequence of strategies in the plan in an iterative fashion. During
each iteration, relevant strategies from the Derivation Plan are applied and associated metrics are
calculated. Following strategy application and metric calculation, the architect reviews the result-
ing DRA and evaluation results against metrics to determine if the DRA is satisfactory or requires
further refinement. Evaluation of the DRA is based in part on the value of goal satisfaction indices
calculated from low-level metrics. Refinement can continue as long as unexecuted strategies remain
in the Derivation Plan. The processes in this phase (see Figure 10.5) are:
1. Identify Applicable Strategies for the Current Iteration (performed by RARE): For the
current step in the Derivation Plan, determine whether any strategy preconditions are
satisfied based on the input architecture, DRA . Active strategies are added to a pending
n
execution list. If no strategies in the current plan step are active, the subsequent step is
examined. If no more steps are available, the derivation process ends.