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.

6.6. A UML representation of AREL and eAREL<br />

Figure 6.9: ≪AE≫ Stereotype to extend <strong>Architecture</strong> Drivers<br />

To model the business viewpoint that contains requirements, environmental factors,<br />

constraints and assumptions, we use the ≪AE≫ stereotype to extend UML model elements<br />

Class, Object, Artifacts and Use Case. These extended UML model elements as<br />

shown in Figure 6.9 can create architecture models in different architecture viewpoints.<br />

For instance, a Use Case can capture system interaction, and Artifacts and Objects can<br />

capture requirements and constraints in the Business Viewpoint.<br />

<strong>Architecture</strong> design elements that are represented by the Data Viewpoint, Application<br />

Viewpoint and Technology Viewpoint as shown in Figure 6.4 also use the ≪AE≫<br />

stereotype to extend their UML meta classes. The UML design elements that have been<br />

extended include Class, Object, Package, Component, Artifact, Table and Deployment;<br />

and behavioural diagrams that have been extended are Use Case, Communication Diagram,<br />

Analysis Diagram, Activity Diagram, State Chart and Sequence Diagram. With the<br />

stereotyping, these UML constructs can capture the additional in<strong>for</strong>mation as shown in<br />

Figure 6.9.<br />

6.6.2 The architecture rationale stereotype<br />

AR is implemented by a UML stereotype, denoted by ≪AR≫, to extend the Package<br />

metaclass. It contains a number of attributes:<br />

• arID is the unique identifier of an instance of AR.<br />

• currFlag is a boolean flag to indicate whether the AR instance records a current or<br />

superseded rationale. Only the latest version of a decision has a truth value.<br />

• lastUpdateDateTime - date and time of last modification.<br />

• author - name(s) of the decision maker(s).<br />

99

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

Saved successfully!

Ooh no, something went wrong!