A Rationale-based Model for Architecture Design Reasoning
A Rationale-based Model for Architecture Design Reasoning
A Rationale-based Model for Architecture Design Reasoning
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
12.2. Contributions<br />
is no common understanding on how to measure risks, and the risk assessment process in<br />
architecture design is not well understood. It suggests that further investigation in this<br />
area is required.<br />
It has been found that the methodology and tool support <strong>for</strong> design rationale capture<br />
and retrieval is inadequate. The various tools that have been reported, including word<br />
processors and UML-<strong>based</strong> tools, do not have traceability features to support systematic<br />
design rationale description and retrieval. There<strong>for</strong>e, it is important to understand how<br />
best to capture, represent and use design rationale and then develop tools to provide a<br />
design rationale enabled development environment.<br />
In summary, the survey has allowed us to gain an in-depth understanding of the application<br />
of design rationale in the software industry. It has confirmed that even architects<br />
consider them to be useful, there is little in terms of methodology and tools to support<br />
their applications. The survey has established the need to further study architecture design<br />
rationale, and clarified a number of important research questions that we address in<br />
this thesis.<br />
12.2.2 <strong>Design</strong> rationale representation<br />
In this thesis, we have introduced a rationale-<strong>based</strong> architecture model (AREL) to represent<br />
architecture design rationale. The AREL model uses two types of reasoning support:<br />
motivational reasons and design rationale. Motivational reasons induce architecture issues<br />
that need to be resolved. <strong>Architecture</strong> design decisions are justified by architecture<br />
design rationale which is comprised of qualitative rationale, quantitative rationale and<br />
alternative design options. In an architecture design, intricately inter-dependent design<br />
objects often have common requirements, assumptions, constraints and decisions. They<br />
can be explicitly related and reasoned in AREL models. This reasoning support complements<br />
the documentation of design structures and interfaces commonly appeared in design<br />
specifications.<br />
AREL captures two types of design rationale: qualitative design rationale QLR and<br />
quantitative design rationale QNR. QLR represents the reasoning and the arguments,<br />
in a textual <strong>for</strong>m, <strong>for</strong> and against a design decision. QNR uses indices to indicate the<br />
relative costs, benefits and risks of design options. Together they can help architects justify<br />
architecture decisions. This representation is an improvement over the argumentation<strong>based</strong><br />
methods because it simplifies the representation of qualitative argumentation, and<br />
provides quantification to justify why a design is chosen over its alternatives. The AREL<br />
model is extended by eAREL to support design evolution. Both AREL and eAREL<br />
207