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.

5.3. Survey findings<br />

Table 5.11: Tendency of Forgetting the Reasons <strong>for</strong> Justifying <strong>Design</strong> Decisions<br />

Never<br />

Always<br />

1 2 3 4 5<br />

No of Respondents 2 15 22 22 5<br />

Percentages 3.0 22.7 33.3 33.3 7.6<br />

Often the architect who is responsible <strong>for</strong> maintenance is not the same person who<br />

originally designed the system. In such circumstances, we asked respondents whether<br />

they know why existing designs were created without documented design rationale. The<br />

results are shown in Table 5.12. Most respondents (80%) either agree or strongly agree<br />

with the statement that without design rationale, they may not understand why certain<br />

decisions are made in the design.<br />

Table 5.12: Do Not Understand <strong>Design</strong> without <strong>Design</strong> <strong>Rationale</strong> if Not Original <strong>Design</strong>er<br />

Strongly<br />

Strongly<br />

Disagree<br />

Agree<br />

1 2 3 4 5<br />

No of Respondents 1 3 9 23 29<br />

Percentages 1.5 4.6 13.8 35.4 44.6<br />

When respondents were asked about the usefulness of design rationale to help understand<br />

past design decisions to assess potential modification, a majority of the respondents<br />

find design rationale helpful in this regards (see Table 5.13). Hence, we concluded that<br />

there is evidence to support the claims that design rationale are an important source<br />

of effective reasoning during architectural modification. It is also stressed that if the<br />

knowledge concerning the domain analysis, patterns used, design options evaluated, and<br />

decisions made is not documented, it is quickly lost and hence unavailable to support<br />

subsequent decisions in the development lifecycle [11]. Software maintenance experts also<br />

agree that many facts may be lost to the project, either because the developers may no<br />

longer be available to the project or the limitations on a human’s ability to memorize<br />

detailed facts [75].<br />

Table 5.13: <strong>Design</strong> <strong>Rationale</strong> Helps Evaluate Previous <strong>Design</strong> Decision<br />

Strongly<br />

Strongly<br />

Disagree<br />

Agree<br />

1 2 3 4 5<br />

No of Respondents 0 3 10 21 33<br />

Percentages 0.0 4.5 14.9 31.3 49.3<br />

Finally, when respondents were asked how often they do impact analysis during maintenance.<br />

Table 5.14 shows that a large number of respondents per<strong>for</strong>m impact analysis<br />

be<strong>for</strong>e making any changes. Since impact analysis may consume a significant amount of<br />

resources and 80.6% of designers (levels 4 and 5) consider it to be useful in evaluating<br />

71

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

Saved successfully!

Ooh no, something went wrong!