Page

May 10, 2013

UML diagrams

UML stands for Unified Modeling Language which is used in object
oriented software engineering. Although typically used in software
engineering it is a rich language that can be used to model an
application structures, behavior and even business processes. There are 14 UML diagram types
to help you model these behavior. They can be divided into two main
categories structure diagrams and behavioral diagrams. All 14 UML
diagram types are listed below with examples, brief introduction to them
and also how they are used when modeling applications.
You can draw UML diagrams online using our software, or check out some UML diagram examples at our diagramming community.

List of UML Diagram Types

Types of UML diagrams with structure diagrams coming first and
behavioral diagrams starting from position 8. Click on any diagram type
to visit that specific diagram types description.

Structure diagrams show the things in a system being modeled. In a more technical term they show different objects in a system. Behavioral diagrams shows what should happen in a system. They describe how the objects interact with each other to create a functioning system.

Class Diagram

Class diagrams are arguably the most used UML diagram type. It is
the main building block of any object oriented solution. It shows the
classes in a system, attributes and operations of each class and the
relationship between each class. In most modeling tools a class has
three parts, name at the top, attributes in the middle and operations or
methods at the bottom. In large systems with many classes related
classes are grouped together to to create class diagrams. Different
relationships between diagrams are show by different types of Arrows.
Below is a image of a class diagram. Follow the link for more class diagram examples.

UML Class Diagram with Relationships

Component Diagram

A component diagram displays the structural relationship of
components of a software system. These are mostly used when working with
complex systems that has many components. Components communicate with
each other using interfaces. The interfaces are linked using connectors. Below images shows a component diagram.

Simple Component Diagram with Interfaces

Deployment Diagram

A deployment diagrams shows the hardware of your system and the
software in those hardware. Deployment diagrams are useful when your
software solution is deployed across multiple machines with each having a
unique configuration. Below is an example deployment diagram.

UML Deployment Diagram ( Click on the image to use it as a template )

Object Diagram

Object Diagrams, sometimes referred as Instance diagrams are very
similar to class diagrams. As class diagrams they also show the
relationship between objects but they use real world examples. They are
used to show how a system will look like at a given time. Because there
is data available in the objects they are often used to explain complex
relationships between objects.

UML Object Diagram Example

Package Diagram

As the name suggests a package diagrams shows the dependencies between different packages in a system. Check out this wiki article to learn more about the dependencies and elements found in package diagrams.

Package Diagram in UML

Profile Diagram

Profile diagram is a new diagram type introduced in UML 2. This is a
diagram type that is very rarely used in any specification. For more
detailed technical information about this diagram type check this link.

Composite Structure Diagram

Use Case Diagram

Most known diagram type of the behavioral UML diagrams, Use case
diagrams gives a graphic overview of the actors involved in a system,
different functions needed by those actors and how these different
functions are interacted. It’s a great starting point for any project
discussion because you can easily identify the main actors involved and
the main processes of the system. Click through to read more about use case diagram elements and templates.

Use Case diagram showing Actors and main processes

Activity Diagram

Activity diagrams represent workflows in an graphical way. They can
be used to describe business workflow or the operational workflow of any
component in a system. Sometimes activity diagrams are used as an
alternative to State machine diagrams. Check out this wiki article to learn about symbols and usage of activity diagrams.

Activity Diagrams with start, end, processes and decision points

State Machine Diagram

State machine diagrams are similar to activity diagrams although
notations and usage changes a bit. They are sometime known as state
diagrams or start chart diagrams as well. These are very useful to
describe the behavior of objects that act different according to the
state they are at the moment. Below State machine diagram show the basic
states and actions.

State Machine diagram in UML, sometime referred to as State or State chart diagram

Sequence Diagram

Sequence diagrams in UML shows how object interact with each other
and the order those interactions occur. It’s important to note that they
show the interactions for a particular scenario. The processes are
represented vertically and interactions are show as arrows. This article
explains the purpose and the basics of Sequence diagrams.

Sequence Diagrams in UML shows the interaction between two processes

Communication Diagram

Communication diagram was called collaboration diagram in UML 1. It
is similar to sequence diagrams but the focus is on messages passed
between objects. The same information can be represented using a
sequence diagram and different objects. Click here to understand the differences using an example.

Communication Diagram in UML

Interaction Overview Diagram

Interaction overview diagrams are very similar to activity diagrams.
While activity diagrams shows a sequence of processes Interaction
overview diagrams shows a sequence of interaction diagrams. In simple
term they can be called a collection of interaction diagrams and the
order they happen. As mentioned before there are seven types of
interaction diagrams, so any one of them can be a node in an interaction
overview diagram. ( img – http://www.sa-depot.com/?page_id=645 )

Interaction overview diagram in UML

Timing Diagram

Timing diagrams are very similar to sequence diagrams. They represent
the behavior of objects in a given time frame. If its only one object
the diagram is straight forward but if more then one objects are
involved they can be used to show interactions of objects during that
time frame as well. ( img – http://blog.tangcs.com/2008/01/10/uml-2-diagrams/ )

Timing Diagram in UML

Mentioned above are all the UML diagram types. The links given in
each section explains the diagrams in more detail and covers the usage,
symbols etc. UML offers many diagram types and sometimes two diagram can
explain the same thing using different notations.Check this blog post
to learn which UML diagram best suits you.If you have any questions or suggestions feel free to leave a comment.