Junior
What is UML? What are 'diagram', 'notation', and 'metamodel' in UML?
sobes.tech AI
Answer from AI
UML (Unified Modeling Language) is a standardized language for visualizing, specifying, constructing, and documenting artifacts of software systems.
- Diagram — a graphical representation of parts of a UML model. It displays a set of model elements and the relationships between them from a certain perspective or goal.
- Notation — a set of graphical elements (symbols, lines, figures) and rules for their use in constructing diagrams. It defines how model elements will appear on the diagram.
- Metamodel — a formal description of UML itself. It defines the abstract syntactic and semantic structure of UML. Essentially, it is a "model of models": it describes what elements can exist in a UML model, how they can be related, and their meaning.
The UML metamodel has a multi-level structure, often described as M0, M1, M2, M3, where:
- M0 — Real objects or data during runtime.
- M1 — A model of a specific system described in UML. This is the user model level.
- M2 — The UML metamodel itself. It describes the syntax and semantics of the UML language (for example, classes, attributes, associations as language elements).
- M3 — The metametamodel. The language in which the UML metamodel is described (for example, the MOF - Meta-Object Facility).