What is UML ? Explain UML diagrams.
2025
What is UML ? Explain UML diagrams.
Show answer & explanation
Concept
Unified Modeling Language (UML) is a standardized visual modeling language used to specify, visualize, construct, and document the structure and behavior of a software system. A UML diagram is a selected view of the model; it communicates one aspect of the system through defined symbols and relationships.
Application
UML diagrams are broadly grouped into structural diagrams and behavioral diagrams (with interaction diagrams as a behavioral subset). Important diagrams include:
Diagram | Category | What it explains |
|---|---|---|
Class diagram | Structural | Shows classes, attributes, operations, and relationships; it represents the static design of the system. |
Object diagram | Structural | Shows object instances and their links at a particular moment; it is a snapshot of the modeled structure. |
Component diagram | Structural | Shows software components, their interfaces, and dependencies; it describes implementation organization. |
Deployment diagram | Structural | Shows hardware or execution nodes and the artifacts deployed on them; it describes runtime distribution. |
Package diagram | Structural | Groups model elements into packages and shows dependencies between those groups. |
Use-case diagram | Behavioral | Shows actors, system goals, and use cases; it captures externally visible functional requirements. |
Activity diagram | Behavioral | Shows the flow of actions, decisions, and parallel paths in a process or algorithm. |
State-machine diagram | Behavioral | Shows an object’s states and the events that cause transitions between them. |
Sequence diagram | Interaction | Shows time-ordered messages exchanged among participants for a scenario. |
Communication diagram | Interaction | Shows interacting objects and their message links, emphasizing collaboration structure. |
Cross-check / Contrast
Structural diagrams answer what the system is made of and how its parts are organized. Behavioral diagrams answer what the system does and how it changes over time; interaction diagrams focus specifically on message exchange among participants.
Thus, UML provides a common notation for analyzing requirements, designing software, communicating decisions, and documenting both static and dynamic views of a system.