Unified Modeling Language (UML) provides standard ways to describe the structure and behavior of software systems. A diagram is useful when it clarifies a decision or relationship that would be harder to communicate in prose.
Eight commonly used diagram types
- Class diagrams describe types, attributes, operations and relationships.
- Object diagrams show example instances at a specific moment.
- Component diagrams explain deployable or replaceable software parts and dependencies.
- Deployment diagrams map software artifacts to infrastructure nodes.
- Use-case diagrams summarize actors and system goals.
- Sequence diagrams show messages exchanged over time.
- Activity diagrams represent workflows, decisions and parallel behavior.
- State-machine diagrams describe how an entity changes state in response to events.
Not every project needs every diagram. Choose the smallest model that answers the team’s question, keep it aligned with the implemented system and avoid detail that does not support a decision.