Comprehensive Guide to the 14 UML Diagram Types
The Unified Modeling Language (UML) is a standardized general-purpose modeling language managed by the Object Management Group (OMG). UML provides a set of graphic notation techniques to create visual models for software-intensive systems. In UML 2.2, there are 14 types of UML diagrams, divided into two categories:
- 7 diagram types represent structural information
- Another 7 represent general UML diagram types for behavioral modeling, including four that represent different aspects of interactions.
These diagrams can be categorized hierarchically as shown in the following UML diagram map:
Structural Diagrams
1. Class Diagram
- Purpose: Illustrates the static structure of a system by showing the system’s classes, their attributes, operations (or methods), and the relationships among objects.
- Usage: Widely used in software engineering to model the static view of an application.
2. Component Diagram
- Purpose: Depicts how components are wired together to form larger components or software systems.
- Usage: Useful for high-level architecture design and understanding the organization of a system.
3. Deployment Diagram
- Purpose: Shows the physical deployment of artifacts on nodes (physical resources).
- Usage: Essential for understanding the hardware and software configuration of a system.
4. Object Diagram
- Purpose: Represents a snapshot of the detailed state of a system at a point in time.
- Usage: Often used to illustrate examples of data structures.
5. Package Diagram
- Purpose: Organizes the elements of a model into groups to provide a better structure and manageability.
- Usage: Helps in organizing large systems into manageable parts.
6. Composite Structure Diagram
- Purpose: Shows the internal structure of a classifier, including its interaction points to other parts of the system.
- Usage: Useful for modeling complex classifiers and their collaborations.
7. Profile Diagram
- Purpose: Defines extensions to the UML language for specific platforms or domains.
- Usage: Used to customize UML for particular needs, such as domain-specific modeling.
Behavioral Diagrams
1. Use Case Diagram
- Purpose: Describes the functionality provided by a system in terms of actors and their goals (use cases).
- Usage: Essential for requirements gathering and understanding user interactions.
2. Activity Diagram
- Purpose: Models the dynamic aspects of a system by showing the flow of control from one activity to another.
- Usage: Useful for business process modeling and workflow visualization.
3. State Machine Diagram
- Purpose: Illustrates the states of an object and the transitions between those states.
- Usage: Essential for modeling the lifecycle of an object.
4. Interaction Diagrams
- Sequence Diagram: Shows how objects interact in a particular scenario of a use case.
- Communication Diagram: Emphasizes the structure of the objects and their relationships.
- Interaction Overview Diagram: Provides a high-level view of the flow of control in interactions.
- Timing Diagram: Shows the interactions when a primary purpose of the diagram is to reason about time.
Is UML Huge and Complex?
UML is indeed a vast topic. It provides a large volume of diagramming notation grouped into 14 different UML diagram types, each serving different purposes and addressing different aspects of development needs.
- Each UML diagram type provides a large set of constructs and notation that cover different needs for most software development projects.
- The UML specification has more than 700 pages, and is often considered too complex, which can negatively impact its perception and adoption.
- Typically, users tend to consider and use only a portion of its diagrams/constructs.
Learn the Most Essential UML Diagrams and Notation
Grady Booch, one of the most important developers of the Unified Modeling Language, stated that “For 80% of all software only 20% of UML is needed.”
What Does the UML Survey State?
We can interpret the results of the UML survey by assuming that if a diagram is:
- Widely used if it is used in ≥ 60% of the sources
- Scarcely used if it is used in ≤ 40% of the sources
UML Diagram Usage
UML Diagram | Usage Percentage |
---|---|
Class Diagram | 100% |
Component Diagram | 80% |
Deployment Diagram | 80% |
Object Diagram | 71% |
Package Diagram | 70% |
Communications Diagram | 82% |
Develop Your UML Learning Plan
Based on the figures collected in the survey, you can develop a meaningful UML learning plan. This article also provides an image map for quickly visiting a series of “What is UML Diagram” papers.
Learn UML. Draw UML.
Get Visual Paradigm Community Edition, a free UML tool that can help you learn UML faster and more effectively. Visual Paradigm Community Edition supports all UML diagram types. Its UML modeler is award-winning, easy-to-use, and intuitive.
Free Download
Reference – What are the used UML diagrams? A Preliminary Survey, Gianna Reggio, Maurizio Leotta, Filippo Ricca, Diego Clerissi DIBRIS – Universit’a di Genova, Italy