Read this post in: en_USes_ESfr_FRhi_INid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

UML-Klassendiagramm: Vollständige Referenzanleitung

Class Diagram Sample


Einführung in Klassendiagramme

Klassendiagramm bietet einen Überblick über das Zielsystem, indem Objekte und Klassen innerhalb des Systems sowie die Beziehungen zwischen ihnen beschrieben werden. Es bietet eine Vielzahl von Anwendungsmöglichkeiten; von der Modellierung der domänenspezifischen Datenstruktur bis hin zur detaillierten Gestaltung des Zielsystems.

Wichtige Vorteile:

  • Domänenmodellierung: Erfassen von Geschäftsentitäten und ihren Beziehungen

  • Systemdesign: Definieren der Softwarearchitektur auf Klassenebene

  • Codegenerierung: Generieren von Implementierungscode aus Modellelementen

  • Dokumentation: Erstellen wartbarer technischer Dokumentation

  • Modellwiederverwendung: Klassemodelle über Interaktionsdiagramme teilen, um dynamisches Verhalten zu modellieren

  • Automatisierte Generierung: Verwenden Sie das Formular-Diagramm, um Diagramme automatisch mit benutzerdefiniertem Umfang zu generieren


Grundlegende Notationen und Elemente

Grundlegende strukturelle Elemente

Class Icon Klasse

Class

Definition: Eine Klasse beschreibt eine Menge von Objekten, die die gleichen Spezifikationen für Merkmale, Einschränkungen und Semantik teilen. Eine Klasse ist eine Art Klassifikator, dessen Merkmale Attribute und Operationen sind.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Name Der Name der Klasse
Eltern Das Modell-Element, das die Klasse besitzt
Sichtbarkeit Bestimmt das Erscheinungsbild und die Erreichbarkeit des Namensraums
Abstrakt Wenn wahr, kann die Klasse nicht direkt instanziiert werden
Blatt Wenn wahr, kann die Klasse nicht weiter spezialisiert werden
Wurzel Gibt an, ob die Klasse keine Vorfahren hat
Aktiv Bestimmt, ob Objekte aktiv (konkurrierend) oder passiv sind
Attribute Direkte Eigenschaften, die der Klasse gehören
Operationen Verhaltensmerkmale, die Aufrufparameter angeben
Vorlagenparameter Formale Parameter für die Vorlagenbindung

Enumeration Icon Klasse <>

Enumeration

Definition: Eine Art Klasse, die als Container für Aufzählungswerte dient. Zum Beispiel enthält eine Aufzählung Farbe enthält Aufzählungswerte rotgrün, und blau.


Interface Icon Klasse <>

Interface

Definition: Eine Schnittstelle ist eine Art Klassifikator, der eine Deklaration einer zusammenhängenden Menge öffentlicher Merkmale und Verpflichtungen darstellt. Eine Schnittstelle definiert einen Vertrag; jedes Exemplar eines Klassifikators, das die Schnittstelle realisiert, muss diesen Vertrag erfüllen.

Wichtige Merkmale:

  • Schnittstellen sind Deklarationen und nicht instanziierbar

  • Wird von Instanzen instanzierbarer Klassifikatoren implementiert

  • Eine Klassifikator kann mehrere Schnittstellen implementieren

  • Kann Einschränkungen und Protokollspezifikationen enthalten


Primitive Icon Klasse <>

Primitive

Definition: Eine Art Klasse, die einen vordefinierten Datentyp darstellt. Zum Beispiel eine boolesche Klasse (Typ).


Note Icon Hinweis

Note

Definition: Ein Hinweis (Kommentar) ermöglicht es, verschiedene Bemerkungen an Elemente anzuhängen. Ein Kommentar hat keine semantische Bedeutung, kann aber Informationen enthalten, die für einen Modellierer nützlich sind.


Constraint Icon Einschränkung

Constraint

Definition: Eine Bedingung oder Einschränkung, die in natürlicher Sprache oder in einer maschinenlesbaren Sprache formuliert ist, um Teile der Semantik eines Elements zu definieren.

Eigenschaften:

Eigenschaft Beschreibung
Name Optionaler Name der Einschränkung
Ausdruck Die Bedingung, die erfüllt sein muss, damit die Einschränkung erfüllt ist
Dokumentation Beschreibung der Einschränkung

Collaboration Icon Zusammenarbeit

Collaboration

Definition: Eine Zusammenarbeit wird als Art von Klassifikator dargestellt und definiert eine Menge kooperierender Entitäten, die von Instanzen (ihre Rollen) übernommen werden, sowie eine Menge von Verbindungen, die Kommunikationspfade zwischen den beteiligten Instanzen definieren.


Model Icon Modell

Definition: Ein Paket auf oberster Ebene, das das gesamte Modell oder einen wesentlichen Teil davon enthält.


NARY Icon NARY

Definition: Stellt eine n-äre Assoziation dar, die mehrere Klassifizierer gleichzeitig verbindet.


Beziehungstypen

Assoziationsbeziehungen

Association Icon Assoziation (ohne Aggregation)

Association

Definition: Eine Assoziation spezifiziert eine semantische Beziehung, die zwischen typisierten Instanzen auftreten kann. Sie verfügt über mindestens zwei Enden, die durch Eigenschaften dargestellt werden, wobei jedes Ende mit dem Typ des Endes verknüpft ist.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Name Der Name der Assoziation
Sichtbarkeit Namespace-Aussehen und Zugänglichkeit
Assoziationsende von/bis Quelle und Ziel der Assoziation
Abstrakt Wenn wahr, ist die Assoziation unvollständig und nicht instanziierbar
Blatt Wenn wahr, kann die Assoziation nicht weiter spezialisiert werden
Abgeleitet Gibt an, ob aus anderen Modell-Elementen abgeleitet

Aggregation Icon Aggregation (geteilte Assoziation)

Aggregation

Definition: Eine Art von Assoziation, bei der eines ihrer Enden markiert istgeteiltals eine Art Aggregation, was bedeutet, dass sie eine geteilte Aggregation hat (Ganzes-Teil-Beziehung, bei der die Teile unabhängig voneinander existieren können).


Composition Icon Komposition (Komposit-Assoziation)

Composition

Definition: Eine starke Form der Aggregation, bei der eine Teilinstanz gleichzeitig in maximal einem Komposit enthalten sein kann. Wenn ein Komposit gelöscht wird, werden seine Teile normalerweise ebenfalls gelöscht.

Wichtige Merkmale:

  • Teile können nicht gleichzeitig mehreren Kompositen angehören

  • Das Löschen des Kompositen löscht die Teile normalerweise ebenfalls

  • Teile können vor der Löschung des Kompositen entfernt werden

  • Kompositionen können gerichtete azyklische Graphen mit transitiver Löschung bilden


Association Class Icon Assoziationsklasse

Association Class

Definition: Ein Modell-Element, das sowohl Assoziations- als auch Klassen-Eigenschaften besitzt. Eine Assoziationsklasse kann als eine Assoziation betrachtet werden, die zusätzlich Klasseneigenschaften hat, oder als eine Klasse, die zusätzlich Assoziationseigenschaften besitzt.

Verwandte RessourceZeichnen der Assoziationsklasse


Abhängigkeitsbeziehungen

Dependency Icon Abhängigkeit

Dependency

Definition: Eine Beziehung, die bedeutet, dass ein einzelnes oder eine Menge von Modell-Elementen andere Modell-Elemente für ihre Spezifikation oder Implementierung benötigen.

Eigenschaften:

Eigenschaft Beschreibung
Lieferant Unabhängiges Element(e) in der Beziehung
Kunde Abhängiges Element(e) in der Beziehung
Sichtbarkeit Namespace-Erscheinung und Zugänglichkeit
Zuordnung Optionaler Ausdruck, der die Beziehung angibt

Abstraction Icon Abstraktion

Abstraction

Definition: Eine Beziehung, die zwei Elemente oder Mengen von Elementen verknüpft, die dasselbe Konzept auf unterschiedlichen Abstraktionsstufen oder aus unterschiedlichen Blickwinkeln darstellen.


Realization Icon Realisierung

Realization

Definition: Eine spezialisierte Abstraktionsbeziehung zwischen zwei Mengen von Modell-Elementen, wobei eines die Spezifikation (der Lieferant) darstellt und das andere die Implementierung des letzteren (der Kunde).

Anwendungsfälle: Schrittweise Verfeinerung, Optimierungen, Transformationen, Vorlagen, Modellsynthese, Rahmenwerkszusammensetzung


Generalization Icon Generalisierung

Generalization

Definition: Eine taxonomische Beziehung zwischen einem allgemeineren Klassifikator und einem spezifischeren Klassifikator. Jede Instanz des spezifischeren Klassifikators ist auch eine indirekte Instanz des allgemeineren Klassifikators.

Schlüssel-Eigenschaft:

Eigenschaft Beschreibung
Ersetzbar Wenn wahr, kann der spezifische Klassifikator den allgemeinen Klassifikator zur Laufzeit ersetzen

Usage Icon Verwendung

Usage

Definition: Eine Beziehung, bei der ein Element ein anderes Element (oder eine Menge von Elementen) für seine vollständige Implementierung oder Ausführung benötigt.


Access Icon Zugriff

Access

Definition: Ein Element-Import, definiert als gerichtete Beziehung zwischen einem importierenden Namespace und einem paketierbaren Element. Der Name des paketierbaren Elements oder dessen Alias wird dem Namespace des importierenden Namespace hinzugefügt.

Notation:

  • <<import>>Schlüsselwort für öffentliche Sichtbarkeit

  • <<access>>Schlüsselwort für private Sichtbarkeit


Import Icon Import

Import

Definition: Ein Paketimport wird als gerichtete Beziehung definiert, die ein Paket identifiziert, dessen Mitglieder von einem Namensraum importiert werden sollen.


Permission Icon Berechtigung

Permission

Definition: Eine Art Abhängigkeit, die einem Modell-Element die Berechtigung erteilt, auf Elemente in einem anderen Namensraum zuzugreifen.


Instantiation Icon Instanziierung

Instantiation

Definition: Eine Nutzungshängigkeit zwischen Klassifizierern, die anzeigt, dass Operationen am Client Instanzen des Lieferanten erzeugen.


Binding Icon Bindung

Binding

Definition: Eine TemplateBindung ist eine gerichtete Beziehung von einem gebundenen templatefähigen Element zur Template-Signatur des Zieltemplates. Eine TemplateBindung besitzt eine Menge von Template-Parameter-Ersetzungen.


Derive Icon Ableiten

Derive

Definition: Legt eine Ableitungsbeziehung zwischen Modell-Elementen fest, die gewöhnlich, aber nicht notwendigerweise, vom selben Typ sind. Eine abgeleitete Abhängigkeit legt fest, dass der Client aus dem Lieferanten berechnet werden kann.


Refine Icon Verfeinern

Refine

Definition: Legt eine Verfeinerungsbeziehung zwischen Modell-Elementen auf unterschiedlichen semantischen Ebenen fest, beispielsweise Analyse und Design.

Anwendungsfälle: Transformationen von Analyse zu Design, Modellentwicklung


Trace Icon Spur

Trace

Definition: Legt eine Spur-Beziehung zwischen Modell-Elementen oder Mengen von Modell-Elementen fest, die dasselbe Konzept in verschiedenen Modellen darstellen.

Hauptanwendung: Verfolgung von Anforderungen und Änderungen über Modelle hinweg; die Abbildung ist gewöhnlich informell und bidirektional


Substitution Icon Substitution

Substitution

Definition: Eine Beziehung zwischen zwei Klassifizierern, die bedeutet, dass der substituierende Klassifizierer den durch den Vertragsklassifizierer festgelegten Vertrag erfüllt.

Implikation: Instanzen des ersetzenden Klassifiers sind zur Laufzeit austauschbar, wo Instanzen des Vertragsklassifiers erwartet werden.


Merge Icon Zusammenführen

Merge

Definition: Ein Paketzusammenführen ist eine gerichtete Beziehung zwischen zwei Paketen, die anzeigt, dass die Inhalte der beiden Pakete zusammengeführt werden sollen.

Wichtige Merkmale:

  • Ähnlich wie Generalisierung, jedoch für Paketinhalte

  • Wird verwendet, wenn Elemente in verschiedenen Paketen dasselbe Konzept darstellen

  • Ermöglicht die schrittweise Erweiterung grundlegender Konzepte

  • Besonders nützlich bei Metamodellierung und der Definition von UML-Metamodellen


Klassenvarianten und Stereotypen

ORM-spezifische Klassen

ORM Persistable Icon Klasse <>

ORM Persistable

Definition: Eine spezielle Form der Klasse, die verwendet werden kann, um ein Objektmodell einer relationalen Datenbank zu modellieren. ORM-Code kann aus einer Reihe von ORM-Persistierbaren Klassen generiert werden.

Zusätzliche Eigenschaften:

Eigenschaft Beschreibung
ORM-Klassendetails Einstellungen, die die ORM-Codegenerierung beeinflussen
Geschäfts-Schlüssel Wird zur Generierung der equals() und hashCode()-Operationen verwendet
ORM-Abfrage ORM-Qualifizierer und benannte Abfragen definieren

ORM Abstract Persistable Icon Klasse <>

ORM Abstract Persistable

Definition: Eine spezielle Form der Klasse, die gemeinsame Attribute von Unterklassen von ORM-Persistierbaren Klassen erfasst.


ORM User Type Icon Klasse <>

ORM User Type

Definition: Eine Benutzertyp-Klasse definiert einen Objekttyp für das Objektmodell, der im generierten ORM-Code zugänglich ist und als Spalte in der Datenbank gespeichert wird, anstatt als Entität.

Verwandter RessourceHibernate-Benutzertyp-Unterstützung


ORM Parameterized Type Icon Klasse <>

ORM Parameterized Type

Definition: Ein ORM-Parameter-Typ bietet Ihnen die Möglichkeit, die Richtigkeit der Daten durch Implementierung von Überprüfungen in den generierten ORM-Code zu gewährleisten.


Entity Bean Icon Klasse <>

Entity Bean

Definition: Eine spezielle Form der Klasse zur Modellierung von EJB-Entitäts-Beans.

Zusätzliche Eigenschaften:

Eigenschaft Beschreibung
EJB-Klassen-Code-Details EJB-bezogene Attribute für die Codegenerierung

Eigenschaften und Konfiguration

Referenz gemeinsamer Klasseneigenschaften

Eigenschaft Gilt für Beschreibung
Name Alle Elemente Bezeichner für das Modell-Element
Eltern Klassen, Schnittstellen Besitzendes Modell-Element
Sichtbarkeit Die meisten Elemente Steuert das Erscheinungsbild des Namensraums: öffentlichprivatgeschütztPaket
Abstrakt Klassen, Assoziationen Wenn wahr, ist das Element unvollständig und nicht direkt instanziierbar
Blatt Klassen, Assoziationen Wenn wahr, kann das Element nicht weiter spezialisiert werden
Wurzel Klassen Gibt an, ob das Element keine Vorfahren hat
Aktiv Klassen Bestimmt, ob Objekte aktiv (konkurrierend) oder passiv sind
Geschäftsmodell Klassen Kennzeichen, um als „Geschäftsklasse“ zu markieren
Attribute Klassen Direkte Eigenschaften, die von der Klasse besessen werden
Operationen Klassen Verhaltensmerkmale mit Parametern und Beschränkungen
Vorlagenparameter Vorlagefähige Elemente Formale Parameter für generische/parametrisierte Elemente
Abgeleitet Assoziationen Gibt an, ob das Element aus anderen Modell-Elementen abgeleitet ist

Einstellungen für die Codegenerierung

Java-spezifische Konfiguration

ORM-spezifische Konfiguration

  • ORM-Abfrage: Qualifizierer und benannte Abfragen für persistierbare Klassen definieren

  • Geschäfts-Schlüssel: Felder konfigurieren, die zur Generierung von equals()/hashCode() verwendet werden

  • Spaltenzuordnung: Datenbankspaltennamen und -typen angeben


Verwandte UML-Diagrammtypen

Klassendiagramme integrieren sich mit anderen UML-Diagrammen für eine umfassende Systemmodellierung:

Diagrammtyp Zweck Link
Use-Case-Diagramm Funktionale Anforderungen erfassen Use-Case-Diagramm
Sequenzdiagramm Dynamische Interaktionen über die Zeit modellieren Sequenzdiagramm
Kommunikationsdiagramm Zeige Objektinteraktionen und Verbindungen Kommunikationsdiagramm
Zustandsmaschinen-Diagramm Modelliere Lebenszyklus und Zustände von Objekten Zustandsmaschinen-Diagramm
Aktivitätsdiagramm Stelle Workflows und Prozesse dar Aktivitätsdiagramm
Komponentendiagramm Zeige physische Softwarekomponenten Komponentendiagramm
Bereitstellungsdigramm Modelliere die Bereitstellung von Hardware und Software Bereitstellungsdigramm
Paketdiagramm Ordne Modell-Elemente in Pakete Paketdiagramm
Objektdiagramm Zeige Instanzen zu einem bestimmten Zeitpunkt Objektdiagramm
Komposite Strukturdiagramm Modelliere die interne Struktur von Klassifizierern Komposite Strukturdiagramm
Zeitdiagramm Fokus auf zeitliche Beschränkungen Zeitdiagramm
Interaktionsübersichtsdiagramm Kombiniere Interaktions- und Aktivitätsdiagramme Interaktionsübersichtsdiagramm

Referenzliste

  1. Primäre Diagrammverweise
  2. Use-Case-Diagramm: Visuelle Darstellung der Systemfunktionalität aus Sicht des Benutzers, die Akteure und ihre Ziele erfasst.

  3. Sequenzdiagramm: Zeigt Objektinteraktionen in zeitlicher Reihenfolge an und betont die Reihenfolge der Nachrichten.

  4. Kommunikationsdiagramm: Zeigt Objektinteraktionen mit Schwerpunkt auf strukturellen Beziehungen zwischen Objekten.

  5. Zustandsmaschinen-Diagramm: Modelliert das dynamische Verhalten eines Objekts über dessen Lebenszykluszustände und Übergänge.

  6. Aktivitätsdiagramm: Stellt Workflows, Geschäftsprozesse und operative Schritte mit Steuerfluss dar.

  7. Komponentendiagramm: Zeigt physische Softwarekomponenten, deren Schnittstellen und Abhängigkeiten.

  8. Bereitstellungsdigramm: Zeigt Hardwareknoten, Softwareartefakte und deren Bereitstellungsbeziehungen.

  9. Paketdiagramm: Ordnet Modellelemente in hierarchische Pakete zur Modularität und Namensraumverwaltung.

  10. Objektdiagramm: Zeigt Instanzen von Klassen und deren Verknüpfungen zu einem bestimmten Zeitpunkt an.

  11. Kompositstrukturdiagramm: Modelliert die interne Struktur von Klassifizierern einschließlich Teilen, Ports und Verbindern.

  12. Zeitdiagramm: Konzentriert sich auf Zeitbeschränkungen und Zustandsänderungen über präzise Zeitintervalle.

  13. Interaktionsübersichtsdiagramm: Kombiniert Interaktionsdiagramme mit Aktivitätsdiagramm-Notation zur Darstellung von Interaktionsflüssen auf hoher Ebene.

  14. Referenzen zur Klassendiagramm-Notation
  15. Abstraktion: Beziehung zwischen Elementen, die dasselbe Konzept auf unterschiedlichen Abstraktionsstufen darstellen.

  16. Zugriff: Element-Import-Beziehung, die die Sichtbarkeit importierter paketierbarer Elemente steuert.

  17. Aggregation (geteilte Assoziation): Ganzzahl-Teil-Beziehung, bei der Teile unabhängig vom Ganzen existieren können.

  18. Assoziation (ohne Aggregation): Semantische Beziehung zwischen typisierten Instanzen mit navigierbaren Enden.

  19. Assoziationsklasse: Modell-Element, das Assoziations- und Klassen-Eigenschaften kombiniert, um Attributinformationen für Beziehungen bereitzustellen.

  20. Bindung: Vorlagen-Bindungs-Beziehung mit Parameterersetzungen für generische Elemente.

  21. Klasse: Kern-Klassifikator, der Objekte mit gemeinsamen Merkmalen, Attributen und Operationen beschreibt.

  22. Klasse <>: Container-Klasse für Aufzählungs-Literale, die feste Wertemengen darstellen.

  23. Klasse <>: Vertrags-Spezifikation, die öffentliche Merkmale für die Implementierung von Klassifikatoren deklariert.

  24. Klasse <>: Vorgegebene Datentyp-Klasse, die grundlegende Sprachtypen darstellt.

  25. Klasse <>: Datenbank-zugeordnete Klasse, die die ORM-Codegenerierung und Persistenz unterstützt.

  26. Klasse <>: Abstrakte Basisklasse zur gemeinsamen Nutzung von gemeinsamen ORM-Attributen über persistierbare Unterklassen hinweg.

  27. Klasse <>: Benutzerdefinierter Typ, der als Datenbankspalte anstelle einer Entitätstabelle persistiert wird.

  28. Klasse <>: Parametrisierter Typ, der die Validierung der Datenkorrektheit im ORM-Code ermöglicht.

  29. Klasse <>: EJB-Entitäts-Bean-Modellierungsklasse für Unternehmens-Java-Anwendungen.

  30. Zusammenarbeit: Klassifikator, der kooperierende Rollen und Kommunikationspfade für interagierende Instanzen definiert.

  31. Komposition (zusammengesetzte Assoziation): Starke Ganzzahl-Teil-Beziehung mit exklusiver Eigentumschaft und kaskadierendem Löschen.

  32. Einschränkung: Bedingung oder Einschränkung, die die Semantik von Modellelementen festlegt.

  33. Abhängigkeit: Beziehung, die anzeigt, dass ein Element ein anderes für Spezifikation oder Implementierung benötigt.

  34. Ableiten: Beziehung, die angibt, dass das Client-Element aus dem Lieferanten-Element berechenbar ist.

  35. Generalisierung: Vererbungsbeziehung, bei der ein spezifischer Klassifikator Merkmale von einem allgemeinen Klassifikator erbt.

  36. Import: Paket-Import-Beziehung, die Paketmitglieder für den importierenden Namensraum verfügbar macht.

  37. Instanziierung: Abhängigkeit, die anzeigt, dass Client-Operationen Instanzen des Lieferanten-Klassifikators erzeugen.

  38. Zusammenführen: Paketzusammenführung, die Inhalte zweier Pakete kombiniert, um Konzepte schrittweise zu erweitern.

  39. Modell: Oberste Container für die Organisation von Modellelementen und Paketen.

  40. N-ARY: N-ärer Assoziation, die mehrere Klassifikatoren gleichzeitig verbindet.

  41. Notiz: Kommentarelement zum Anhängen von nicht-semantischen Bemerkungen an Modellelemente.

  42. Berechtigung: Abhängigkeit, die Zugriffsrechte auf Elemente in einem anderen Namensraum gewährt.

  43. Realisierung: Spezialisierte Abstraktion, bei der der Client die durch den Lieferanten definierte Spezifikation implementiert.

  44. Verfeinern: Beziehung zwischen Modellelementen auf unterschiedlichen semantischen Ebenen wie Analyse und Design.

  45. Substitution: Beziehung, die anzeigt, dass ein ersetztender Klassifikator der Spezifikation des Vertrags-Klassifikators entspricht.

  46. Verfolgung: Beziehungstracking derselben Konzepte über verschiedene Modelle hinweg, hauptsächlich für die Anforderungsverwaltung.

  47. Verwendung: Abhängigkeit, bei der das Client-Element das Lieferanten-Element für die vollständige Implementierung oder Ausführung benötigt.

  48. Tutorials und Ressourcenverweise
  49. Zeichnen einer Assoziationsklasse: Schritt-für-Schritt-Anleitung zum Erstellen von Assoziationsklassen in Visual Paradigm.

  50. Java-Code generieren und synchronisieren: Tutorial zur bidirektionalen Entwicklung zwischen Klassendiagrammen und Java-Implementierung.

  51. Hibernate-Benutzertyp-Unterstützung: Ressource zum Implementieren benutzerdefinierter Hibernate-Benutzertypen mit ORM-Persistable-Klassen.

  52. Standardverweise
  53. Object Management Group – Unified Modeling Language: Offizielle UML-Spezifikationsquelle des Standardisierungsorgans, das UML regelt.

  54. Definition der Notationen ist zitiert aus Object Management Group Unified Modeling Language (OMG UML) Superstruktur Version 2.2 und frühere Versionen (für Notationen, die in der neuesten Spezifikation nicht mehr existieren).


  1. Diese Anleitung basiert auf der UML-Klassendiagrammdokumentation von Visual Paradigm. Für die aktuellsten Spezifikationen sollten Sie stets die offiziellen OMG-UML-Standards heranziehen.