UML Diagrams

Parent Previous Next


UML 2 defines 13 basic diagram types, divided into two general sets:

1. Structural Modeling Diagrams

Structure diagrams define the static architecture of a model. They are used to model the 'things' that make up a model - the classes, objects, interfaces and physical components. In addition they are used to model the relationships and dependencies between elements.

-

Package diagrams are used to divide the model into logical containers or 'packages' and describe the interactions between them at a high level

-

Class or Structural diagrams define the basic building blocks of a model: the types, classes and general materials that are used to construct a full model

-

Object diagrams show how instances of structural elements are related and used at run-time.

-

Composite Structure diagrams provide a means of layering an element's structure and focusing on inner detail, construction and relationships

-

Component diagrams are used to model higher level or more complex structures, usually built up from one or more classes, and providing a well defined interface

-

Deployment diagrams show the physical disposition of significant artefacts within a real-world setting.


2. Behavioral Modeling Diagrams

Behavior diagrams capture the varieties of interaction and instantaneous state within a model as it 'executes' over time.


-

Use Case diagrams are used to model user/system interactions. They define behavior, requirements and constraints in the form of scripts or scenarios

-

Activity diagrams have a wide number of uses, from defining basic program flow, to capturing the decision points and actions within any generalized process

-

State Machine diagrams are essential to understanding the instant to intant condition or "run state" of a model when it executes

-

Communication diagrams show the network and sequence of messages or communications between objects at run-time during a collaboration instance

-

Sequence diagrams are closely related to Communication diagrams and show the sequence of messages passed between objects using a vertical timeline

-

Timing diagrams fuse Sequence and State diagrams to provide a view of an object's state over time and messages which modify that state

-

Interaction Overview diagrams fuse Activity and Sequence diagrams to provide allow interaction fragments to be easily combined with decision points and flows



The OMG specification states:

"The Unified Modeling Language (UML) is a graphical language for visualizing,
specifying, constructing, and documenting the artifacts of a software-intensive system.
The UML offers a standard way to write a system's blueprints, including conceptual
things such as business processes and system functions as well as concrete things such
as programming language statements, database schemas, and reusable software
components."

The important point to note here is that UML is a 'language' for specifying and not a method or procedure. The UML is used to define a software system; to detail the artifacts in the system, to document and construct - it is the language that the blueprint is written in. The UML may be used in a variety of ways to support a software development methodology (such as the Rational Unified Process) - but in itself it does not specify that methodology or process.



The following section highlights UML 2.0 differences - What Diagrams Are in the UML?

UML contains two different basic diagram types: structure diagrams and behavior diagrams. Structure diagrams depict the static structure of the elements in your system. The various structure diagrams are as follows:

UML 2.0 adds the following structure diagrams:

Behavior diagrams depict the dynamic behavior of the elements in your system. The various behavior diagrams are as follows:

UML 2.0 adds the following behavior diagrams:

Created with the Personal Edition of HelpNDoc: Full featured multi-format Help generator