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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.5. How well design rationale methods work?<br />

There is an implicit assumption that such traceability can provide the explanatory power<br />

to help designers understand the system. However, design reasoning is missing and needs<br />

to be reconstructed even though source code or design objects can be traced back to<br />

requirements. Additionally, implicit assumptions and constraints cannot be traced by<br />

such methods. As such, the traceability of design rationale requires further investigation.<br />

A more detailed discussion on design rationale traceability is in Chapter 9.<br />

3.5 How well design rationale methods work?<br />

Although researchers have different ideas of what and how to represent design rationale,<br />

they basically agree on the importance of retaining design rationale, and it is concurred<br />

by practising software architects [157]. With such common view, why then are design<br />

rationale methods not widely adopted by the software industry?<br />

Shipman III and McCall suggested that neither the argumentation nor the communication<br />

perspective of argumentation-<strong>based</strong> design rationale has been generally successful<br />

in practice [139]. From the argumentation perspective, the issue has been the ineffective<br />

capture of rationale. From the communication perspective, design rationale cannot be<br />

retrieved effectively. Regli et al. [132] have a similar argument that design rationale must<br />

have three qualities: ease of input, effective view and activeness. That means the rationale<br />

capture process must least interfere with the natural progression of design activities.<br />

Gruber and Russell [55] examined a set of empirical studies of people requesting,<br />

communicating and using in<strong>for</strong>mation associated with design rationale. They found two<br />

basic uses <strong>for</strong> in<strong>for</strong>mation explicitly related to decisions. First, decisions serve as loci<br />

<strong>for</strong> considering alternatives and linking dependent elements. Second, a designer would<br />

evaluate a design or a sub-design to predict the potential impacts on criteria. For design<br />

rationale to be successful, it must be captured as a by-product of the design process using<br />

software tools to make the ef<strong>for</strong>t worthwhile.<br />

Buckingham Shum and Hammond [13] examined two claims made by argumentation<strong>based</strong><br />

design rationale approaches: (a) expressing design rationale as argumentation is<br />

useful and (b) designers can use such notations. However, they found no evidence to<br />

support argumentation-<strong>based</strong> schemas being useful as a record of previous argumentation.<br />

Also, they concluded that argumentation-<strong>based</strong> schemas assume that designers would be<br />

able to directly express rationale in terms of the argumentation-<strong>based</strong> structures, which<br />

could not be proven. They also concluded that there was a tendency <strong>for</strong> some of these<br />

semi-<strong>for</strong>mal methods to move to an in<strong>for</strong>mal textual rationale. In another study, Shum<br />

[140] investigated the cognitive dimensions of design rationale. It was found that problem<br />

42

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

Saved successfully!

Ooh no, something went wrong!