21.01.2014 Views

A Rationale-based Model for Architecture Design Reasoning

A Rationale-based Model for Architecture Design Reasoning

A Rationale-based Model for Architecture Design Reasoning

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.3. Existing methods <strong>for</strong> capturing and representing design rationale<br />

3.3.6 Views and Beyond (V&B)<br />

Views and Beyond is a collection of methods proposed by Clements et al. to document<br />

software architecture [23]. It proposes a number of view types to represent software architecture:<br />

Module Viewtype, Component-and-Connector Viewtype and the Allocation<br />

Viewtype. Each viewtype gives a different perspective of the structure of the system. For<br />

instance, the module viewtype has several representation styles such as decomposition of<br />

code and layering of modules.<br />

As well as documenting what the architecture is, they argue that it is important to<br />

document why the architecture is what it is. Many decisions are made in a design and not<br />

all decisions need to be justified. A number of principles to guide decision documentation<br />

are suggested:<br />

• <strong>Design</strong> team have spent significant time evaluating the options <strong>for</strong> the decision<br />

• Decision is critical to the achievement of the requirement/goal<br />

• Decision requires considerations of non-trivial background in<strong>for</strong>mation<br />

• Issues in a non trivial decision<br />

• Decision has a widespread implication to the rest of the architecture design and will<br />

be difficult to undo<br />

• It is more cost-effective to document the decision now rather than later<br />

Similar to ADDT, they take a pragmatic approach to documenting design rationale.<br />

Instead of documenting the deliberation relationship, the following in<strong>for</strong>mation, which is<br />

centric to a decision, is documented:<br />

• Decision - a summary of the decision<br />

• Constraints - key constraints that rule out possibilities<br />

• Alternatives - options that have been considered and the reasons of ruling them out<br />

• Effects - the implications and ramifications of the decision<br />

• Evidence - any confirmation that the decision was a good one<br />

This list of design rationales can be easily mapped to the ADDT template. ADDT<br />

provides a more comprehensive classification to assist designers to capture all the design<br />

rationale. The V&B template is more general and easier to implement.<br />

37

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!