About UML

ConceptDraw PRO
Discover the World of Visual Communication

Unified Modeling Language (UML) is a language of graphic description for object modeling in the field of software engineering. UML was created for definition, visualization, designing of software systems. It was developed in the 1990s by Grady Booch, Ivar Jacobson and James Rumbaugh at Rational Software Corporation.

In 1997 was adopted the UML 1.1 version by the Object Management Group (OMG).

In 2000 the UML 1.4.2 version was accepted by the International Organization for Standardization (ISO) as an open standard ISO/IEC 19501:2005 that uses graphic notations for creating visual models of object-oriented software systems. UML took in the notations of the Object-modeling technique, Object-oriented software engineering and the Booch method. UML can be applied for all the processes of the development life cycle.

In 2005 by OMG was adopted the UML 2.0 version that was seriously reworked. The last published version in 2011 was UML 2.4.1.

Types of UML Diagrams

Two types of diagrams are used in UML: Structure Diagrams and Behavior Diagrams. Behavior Diagrams represent the processes proceeding in a modeled environment. Structure Diagrams represent the elements that compose the system.

There are seven types of Structure Diagrams that must be present in any modeled system:

The Behavior Diagrams group includes:

The subgroup of Interaction Diagrams controls the flow of control and data, and includes:

UML Building Blocks

The UML building blocks determine as things, relationships and diagrams.

There are four types of things in UML: Structural, Behavioral, Grouping and Annotational.

Sructural things (the static part of the model):


Class represents a set of objects that have the same structure, behavior, and relationships with objects of other classes. Classes are represented as boxes that consist of name, attributes, operations, and responsibilities.

UML Building Blocks - Class


Interface is an abstract class that defines a set of operations that the object of the class associated with this interface provides to other objects.

UML Building Blocks - Interface


Collaboration determines interactions between the elements.

UML Building Blocks - Collaboration

Use case:

Use case is a description of the system behavior on the request from the outside of this system.

UML Building Blocks - Use-Case


Component describes the physical part of the system.

UML Building Blocks - Component


Node is a resource available during the run time.

UML Building Blocks - Node

Behavioral things (dynamic part of the model):


Interaction is a set of messages that the elements exchange for execution the tasks.

UML Building Blocks - Message

State machine:

State machine defines the states of the object that go in response to the events.

UML Building Blocks - State

Grouping things (the mechanism for grouping the UML model elements):


Package groups the classes and other packages.

UML Building Blocks - Package

Annotational things (the mechanism for capturing the remarks, descriptions, and comments of the UML model elements):


Note is a textual explication.

UML Building Blocks - Note

Relationship :


Association is a relationship that connect two classes.

UML Building Blocks - Association


Dependency is a relationship when some changes of one element of the model can need the change of another dependent element.

UML Building Blocks - Dependency


Generalization is an association between the more general classifier and the more special classifier.

UML Building Blocks - Generalization


Realization is a relationship between interfaces and classes or components that realize them.

UML Building Blocks - Realization

Pic 1. UML component diagram example.

This diagram was redrawn from wikipedia.org

The documents of ConceptDraw PRO with UML Diagrams are vector graphic documents. They are available for reviewing, modifying or converting to a variety of formats: image, HTML, PDF file, MS PowerPoint Presentation, Adobe Flash or MS Visio XML.

Use Product:

  • Diagram Software
  • Technical Diagramming Tool
  • Business Diagramming Tool
  • Professional Business Graphics Tool
  • ConceptDraw PRO native Mac app
  • Easier to use than Microsoft Visio® and more powerful
  • With free support and thousands of templates

Use Solution:

Rapid UML solution
  • Rapid UML templates and examples
  • UML vector elements
  • Export to graphics files and PDF
  • Export to PPT
  • Make Presention

See also videos:

See also samples:

UML Resource:

Compatibility: Apple® OS X 10.10 or later
Microsoft® Windows® 7/8.1/10

Price: ConceptDraw PRO US$199
Download ConceptDraw PRO
Free 21 Trial for Mac and PC
Buy Now
1 Diagram Software
Professional business graphics tool for drawing schemes, diagrams and illustrating business documentation
1 Mind Map Software
Excellent tool for Mind Mapping, Planning, Brainstorming, and Building Processes
1 Project Management Software
The full complement of features needed to successfully plan and execute projects, including task and resource management, reporting, and change control