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.

1.2. Research motivations and research questions<br />

such, the design could be violated and the cost of architectural design change could be<br />

very high and even prohibitive. Kruchten et al. suggested that architecture knowledge<br />

consists of the architecture design and its design rationale [86].<br />

Despite the work by researchers such as [18, 24] and the standards organisations such as<br />

[70, 164], the adoption of design rationale is sporadic. <strong>Design</strong> decisions still rely heavily on<br />

the intuition and the experience of individual architects irrespective of the development<br />

methodology being employed. The quality of an architecture design there<strong>for</strong>e largely<br />

depends on the architecture decisions made by architects. There<strong>for</strong>e the study of making<br />

rational and objective design decisions is worthwhile.<br />

1.2 Research motivations and research questions<br />

<strong>Architecture</strong> design is one of the early steps and arguably one of the most important<br />

steps in the software development life-cycle (SDLC). It provides a foundation to construct<br />

a system. <strong>Architecture</strong> design decisions thus become early design commitments in the<br />

SDLC. Activities of architecture design such as the procurement of plat<strong>for</strong>ms, determining<br />

interface standards, outlining system design structure and determining development<br />

standards are decided and executed at an early stage of the design process that can be<br />

difficult to change or reverse later. Hence it is important to ensure that the decisions<br />

behind the architecture design are correct. In this section, we describe the motivations<br />

and the research questions addressed by this thesis.<br />

1.2.1 Motivations<br />

The software engineering community has long been aware of the issue relating to the loss<br />

of design rationalisation knowledge. This phenomenon is evident in a lack of architecture<br />

design justification process that uses design rationale and a lack of design rationale<br />

documentation [11]. Researchers have put <strong>for</strong>ward many suggestions to address this issue<br />

[14, 129, 33, 124, 94]. Argumentation-<strong>based</strong> design rationale methods address the<br />

issue of deliberation but they face challenges in their implementation (see Chapter 3).<br />

Methods such as ATAM, CBAM, and Views and Beyond to aid architecture design have<br />

also been suggested [8, 23]. However, the software development industry does not seem<br />

to have adopted such practices and it is unclear what methods are used instead, if any.<br />

We conjecture that the following factors contribute to the difficulties in design rationale<br />

implementation. We subsequently provide evidence through a survey to prove some of<br />

them:<br />

4

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

Saved successfully!

Ooh no, something went wrong!