Tool Mentor: Identifying
Design Mechanisms Using Rational Software Architect
Purpose
This section provides links to additional information related to this tool mentor.
The steps in this tool mentor match those in the activity. Links to topics
in the RSA online Help are marked with .
Overview
The following steps are performed in this tool mentor:
Additional Tool Information
RSA, as part of the support for Model
Driven Development and Model Driven Architecture, provides the capabilities
to move from model to code through the use of transformations. The main approach
is based on a combination of type mappings (source model's classes, their attributes,
operations, relationships) and source model marking, defined in profiles. The
reason for this combined method is that in most of the cases the source model
does not contain enough information to drive the transformation. The architect
has to add specific 'marks' which enables the transformation to perform. For
more information, refer to Analysis
Mechanisms.
Depending on the profiles applied, the clients of analysis mechanisms will
have to be 'marked' accordingly, using the right stereotypes. For more information,
see: Design: Transform Model to Model
and Design: Transform Model to Code.
There is no RSA specific guidance for listing all the available implementation
mechanisms. However, the RAS repository is a good place for collecting all the
potential candidates for reuse, especially patterns. See:
RAS and
Patterns.
If a Model Driven Development approach is taken, this step is performed with
the assistance of the transformation capabilities. There are two kinds of transformations:
transforms and patterns. A transform is "a transformation optimized for
batch processing, primarily across metamodels, models and levels of abstraction".
In RSA, a pattern is a special kind of transformation, "optimized for interactive,
piecewise elaboration primarily in a single metamodel and within the same level
of abstraction, and often within the same model". See the Model
Driven Development and Model Driven Architecture and Analysis
Mechanisms concepts.
Depending on the profiles applied to the model, a number of transforms are
available "out of the box". For the more advanced user, RSA provides
a framework for building customized transformations.
See Applying Patterns and
Design: Transform Model to Code.
In a more code-centric development environment, some of the mappings could
be discovered starting with the existent code and using the pattern and anti-pattern
detection capabilities which are part of the RSA support for Architectural Analysis.
See the Architectural
Discovery, Analysis and Control guidelines.
Mechanisms themselves are Design Model elements (such as Design Package, Design
Class, and Design Subsystem) that can be represented in Artifact: Design Model
as part of their respective design activities. See Tool
Mentor: Identify Design Elements for guidelines on creating Design Model
elements. Note that a RSA pattern is particularly well suited to documenting
a design and implementation mechanism, because it allows clients of the mechanism
to expand the pattern and to generate much of the required design and code.
See:
Authoring Patterns
and
Packaging Assets for Reuse
.
Tours:
-
RAS
-
Patterns
Tutorials:
-
Applying the XYZ Pattern
-
Design: Transform Model to Model
-
Design: Transform Model to Code"
Samples:
-
Model for Pattern Application
-
Patterns
|