UML Diagrams

Home 9 Languages 9 Introduction to UML 9 UML Diagrams

UML with Enterprise Architect

In our basic training course, you will learn how to use the Unified Modelling Language (UML) for conceptual modelling with Enterprise Architect in the best possible way using practical examples.

UML Activity Diagram

The UML activity diagram is one of the behavioural models contained in UML and is used to describe processes, workflows and algorithms. It is also often used to describe scenarios of use cases or the behaviour of class operations or the behaviour of states in a state diagram.

The focus of the activity diagram is on the single steps and branches of a flow/process. Activity diagrams can also be used to describe data flows and their processing.

With UML activity diagrams, we can divide large, complex processes into individual activities and call them up from other processes. This allows us to achieve abstraction in the process description and simple reuse of processes.

It is also possible to describe the sending and receiving of signals and the interruption of processes. However, state machines are better suited to describing event-oriented behaviour.

Related topics and languages:

  • Business Process Model and Notation (BPMN) (an alternative to UML activities, focussing on business processes)
  • ArchiMate Business Processes (a more abstract view of processes)
  • UML state machines
  • UML use cases

UML Use Case Diagram

Using UML Use Case Diagrams (use cases), we visualise the description of technically required (system) functions and bundle all possible scenarios of this function (the use cases).

We use use cases to analyse and describe dependencies to stakeholders and other use cases on a non-technical level.

UML Interaction Overview Diagram

The UML Interaction Overview Diagram is a combination of an Activity Diagram (AD) and a Sequence Diagram (SD). The basis is an AD. A step in an AD can be refined in an interaction overview diagram using an SD.

UML Class Diagram

UML Class Diagrams are a graphical representation of concepts and stand for a set of manifestations (instances/objects) of reality, following the object-oriented paradigm.

Classes make it possible to encapsulate data (properties) and behaviour (processes, workflows, algorithms). Using different relationships (e.g. association, generalisation, dependency, etc.), we can link classes to each other in order to describe relationships graphically and obtain a quick overview.

UML Communication Diagram

The UML Communication Diagram allows scenarios to be described in the same way as with the UML sequence diagram (SD). The main difference is that the SD focuses on ‘WHO communicates with WHOM and in what order’. The communication diagram focuses on the structure of the communicating components (classes, components) and the sequence is only emphasised by numbering.

Related topics and languages:

  • UML Sequence Diagram

UML Component Diagram

UML components are used to adopt a modular view of the reality to be described. Depending on the reality in question, different aspects of components are used.

Since UML components are special UML classes and can therefore do everything a class can do, it is often difficult to decide when to use classes and when to use components. A rule of thumb is that we use components when we need to adopt a modular view of reality. A component is then described by interfaces and can therefore be connected to compatible other components.

Components are also often used to obtain a black-box and a white-box (UML composition diagram) view of the described reality (the software component to be developed, the hardware component or an application in the enterprise architecture).

Related topics and languages:

  • ArchiMate Business Processes (a more abstract view of processes)
  • UML Composition Diagram

UML Composition Structure Diagram

The composition structure diagram is the white box view of a component. We use this diagram to describe the internal structure of a UML component.

Since a component is used as an abstraction and as a container for other parts, we can also describe these parts and their relationship in more detail and we do this with the composition structure diagram.

Related topics and languages:

  • UML component … as a black box view
  • SysML IBD … as an alternative to the UML Composition Structure Diagram

UML Object Diagram

The object model does not come alone. UML is an object-orientated language that we can use to describe different structures. For example, we use classes or components. As a rule, we always use classes and components to describe a set of concrete characteristics in reality that are described by the model (classes, components).

We can now use objects to describe a modelled representation of these characteristics of reality.

Class and component diagrams are often very compact and use this compact notation to describe many possible characteristic configurations. With the object diagram, we can visualise these as a diagram.

UML Package Diagram

In UML, all model elements are organised in so-called packages. A package is comparable to a folder in our file system.

Packages can be linked with different relationships in order to describe dependencies between packages and the models they contain in an abstract and compact way.

UML Sequence Diagram

The UML Sequence Diagram belongs to a subtype of UML behaviour models, the interaction diagrams.

A Sequence Diagram bridges the gap between structure diagrams and behaviour diagrams.
In a sequence diagram, we use so-called lifelines, which are classified by structural elements and can call up their behaviour.

The lifelines describe a specific system configuration and how these exchange messages with each other in a certain order. As a rule, the sequence diagram always describes a specific scenario, i.e. a specific use case.

Sequence Diagrams are often used, for example, to model scenarios of use cases.

UML Deployment Diagram

With the UML Deployment Diagram, we build a bridge between abstract components and their physical distribution.

With a deployment diagram, we describe a physical infrastructure and can connect it with the existing UML components. The so-called artefact is used as a link. The artefact is the physical manifestation of one or more logical components.

UML Time Diagram

The UML Time Diagram allows you to take a closer look at the topic of time and time-critical behaviour. States are defined and the times at which a state is changed.

UML State Diagram

If the behaviour to be described is strongly event-driven, UML state machines are a good choice.

As the name suggests, a state describes a state in which behaviour can be executed. If an event occurs, the state is changed (under conditions yet to be defined) and further behaviour can also be executed. We can therefore model processes with state machines in the same way as with activity diagrams. However, when a state is changed and thus behaviour is executed depends on different events.

The behaviour in a state or state transition itself can be described with any other UML behaviour model, usually the activity diagram is used.

The state machine is often used to define the orchestration of event-driven behaviour and usually describes the states of a building block described as a structure (e.g. UML class or component).

Related topics and languages:

  • UML Activity Diagrams
  • UML Use Cases
  • UML Class Diagrams
t

FAQs on UML diagrams

What is a UML Diagram?

A UML diagram is only a graphical view of sections of a UML model and should therefore not be confused with the model itself. Officially, there is no overview of the diagrams in the UML definition. They can therefore be defined quite freely and represent a collection of notation elements. The UML currently contains 13 diagram types, which are roughly divided into structure and behaviour diagrams.

How do you use UML correctly and what do you need to be aware of?

UML is a widely used modelling language that helps to better understand complex systems and make them easier to represent. Basically, four components are important when creating a target-oriented UML model:

  • Method or approach
  • Language (e.g. UML)
  • Tool (e.g. Enterprise Architect)
  • Experience (best practice)

The use of UML can therefore not be considered in isolation. In order to be able to use modelling with UML to good effect, a certain learning curve must be overcome. This can be achieved very quickly and easily through special training courses, for example.

How to create a UML diagram?

Work with modelling in UML often begins with the creation or assessment of diagrams. Depending on the type of diagram selected, various elements and symbols are available for this purpose. Diagrams can be created in different ways, sometimes pens and paper are sufficient.

However, tools are used for professional modelling. Pure drawing programmes do not store the diagrams created in a repository. Modelling programs such as Enterprise Architect, on the other hand, store the diagrams in a repository so that they can be changed and further developed at any time.

What makes UML so useful for software and system development?

UML provides various symbols, each with a defined meaning. It offers diagram types for analysis, design and programming. It thus supports the entire development process from the collection of requirements to the final implementation. UML helps to represent the structure and behaviour of a system and to optimise it continuously. UML offers many advantages as it uses diagrams as part of the documentation.

UML has achieved its dominant position in the field of model-based software and system development thanks to many advantages:

  • Improving collaboration between developers and others
  • Graphical representation makes systems easier to understand
  • Good documentation makes developments easy to reuse
  • Early error detection significantly reduces project costs#Roundtrip engineering (matching of model and implementation) saves an enormous amount of time

Although UML was originally developed for modelling software, it can also be used for organisational projects. By visualising processes, they can be quickly analysed and improved.