Show in graph

Software → Software Design

UML

A standardized family of diagrams for describing software structure, behavior, interactions, and deployment.

Motivation

A standardized family of diagrams for describing software structure, behavior, interactions, and deployment.

Where it fits

This concept provides a shared vocabulary for designing, documenting, measuring, or operating software systems.

Mental model

Treat it as a structured tool: define the question being answered, use consistent terminology, and connect the result to decisions and follow-up work.

Subconcepts

Class Diagram

Shows classes, attributes, operations, and structural relationships.

Sequence Diagram

Shows messages exchanged between participants over time.

Component Diagram

Shows software components, interfaces, and dependencies.

Deployment Diagram

Shows software artifacts deployed onto execution nodes and environments.

Activity Diagram

Shows workflows, decisions, concurrency, and process flow.

Practical use

Choose diagrams intentionally; UML is a notation toolkit, not a requirement to model every detail.

Common mistakes

  • Using ambiguous definitions or units.
  • Collecting or documenting information without connecting it to a decision.
  • Failing to keep the artifact or measurement current as the system changes.

See the linked concepts in the knowledge graph for prerequisites and adjacent practices.