IBM® Rational® Rhapsody® Designer for Systems Engineers, IBM Rational Rhapsody Architect for Systems Engineers, IBM Rational Rhapsody Architect for Software,
and the IBM Rational Rhapsody Developer
editions support designing your models with UML. The UML specification
includes many diagram types, including use case diagrams, statecharts,
and activity diagrams.
UML is a third-generation modeling language that
you can use to describe complex systems. According to the Object Management
Group (OMG), UML is the industry standard for describing object-oriented
systems. For more information about the OMG, go to their website.
UML defines a set of diagrams by which you can specify
the objects, messages, relationships, and constraints in your system.
Each diagram emphasizes a different aspect or view of the system elements.
For example, a UML sequence diagram focuses on the message flow between
objects during a particular scenario, whereas an object model diagram
defines classes, their operations, relations, and other elements.
UML diagrams in Rational Rhapsody
The UML specification includes the following diagrams:
- Use case diagrams show diagrams show typical
interactions between the system that is being designed and the external
users or actors. You can use the product to generate code for actors
in use case diagrams to test models.
- Class diagrams show the static structure of a system: the
classes and their associations and operations, and the relationships
between classes and any constraints on those relationships. A class
diagram is the basic diagram in UML. A class diagram is the equivalent
of the object model diagram in Rational Rhapsody.
However, a class diagram is specified for the class structure, while
an object model diagram is specified for the object structure.
- Similarly, object model diagrams show the
static structure of a system: the objects and their associations and
operations, and the relationships between classes and any constraints
on those relationships. In Rational Rhapsody,
an object model diagram is the equivalent of a class diagram. However,
an object model diagram is specified for the object structure, while
a class diagram is specified for the class structure.
- Sequence diagrams show the message flow
of objects over time for a particular scenario.
- Collaboration diagrams provide the same
information as sequence diagrams but with an emphasis on structure
rather than time.
- Statecharts define all the states that an
object can occupy and the messages or events that cause the transition
of the object from one state to another.
- Activity diagrams specify a workflow or
process for classes, use cases, and operations. Activity diagrams
are like statecharts; however, activity diagrams are better for showing
linear step-by-step processes, while statecharts portray non-linear
and event-driven processes.
- Component diagrams describe the organization
of the software units and the dependencies among these units.
- Deployment diagrams depict the nodes in
the final system architecture and the connections between them. Nodes
include both the processors that run software components and the devices
that those components control.
- Structure diagrams model the structure of
a composite class; any class or object that has an object model diagram
can have a structure diagram. Object model diagrams focus more on
the specification of classes, whereas structure diagrams focus on
the objects used in the model.
In addition, flow charts are available
in the product and describe a function or class operation or generate
code.