Der UML-Standard spezifiziert keine Namenskonvention. Der von Ihnen gewählte Benennungsstandard hängt von der Zielgruppe Ihres UML-Modells ab. Diese Zielgruppe ist wiederum abhängig vom Zweck Ihres Modells. Wenn Sie z.B. um Code aus Ihrem Modell zu generieren, müssen Sie ein Ergebnis haben, das zu Ihrer Zielplattform passt. Meine Erfahrung ist, dass die Auswahl einer plattformunabhängigen Benennung hilfreich ist, wenn Sie Ihr Modell auch nach dem Ändern der Zielplattform beibehalten möchten oder Code für mehrere Zielplattformen generieren möchten. Z.B. Wenn Sie beabsichtigen, Java-Code, DDL-Anweisungen für Ihre SQL-Datenbank und XSD-Schemadefinitionen für Ihre Restful-Dienste zu erstellen, haben Sie drei verschiedene Ziele, für die Sie eine gemeinsame Sprache für alle drei Ziele benötigen. Ein guter Ansatz ist IMHO, um plattformunabhängige Systeme wie CORBA IDL, XSD-Typen oder sogar ISO-Typen zu verwenden. Sie können auch Beschreibungen der natürlichen Sprache wie "Datum", "Uhrzeit", "Nummer", "Währung" verwenden. Für die Namen Ihrer Domain-spezifischen Inhalte können Sie ein Mapping verwenden. Z.B. Wenn Sie eine Klasse "Kundenkontakt" und den Vorgang "Kunden anrufen", ein Attribut "Kundenname" nennen, ermöglicht das Mapping, z. Customer_Contact als Java-Klassenname "callCustomer" als Vorgangsname und "customName" als Attributname.
Ob Sie Mappings anwenden können, hängt von der verwendeten Toolchain ab. Wenn Sie kein Mapping verwenden können, müssen Sie entscheiden, welcher der kleinste gemeinsame Nenner Ihrer Zielplattformen ist. Wenn es keine gibt, müssen Sie entscheiden, wo es die geringste Anstrengung ist, den Namenskonventionen nicht zu folgen.
Am wichtigsten ist für mich, ob die Regeln für das Zuordnen von Modellelementen zu anderen Artefakten genau eingehalten und systematisch (möglicherweise sogar automatisiert) oder ob das Modell zu Veranschaulichungszwecken verwendet wird und die Zuordnungsregeln nur von Personen angewendet werden, die ihre Gehirne verwenden .
Verwenden Sie unterschiedliche Namenskonventionen basierend auf verschiedenen Implementierungszielen. Hier sind ein paar:
Protokolle, die in vielen Sprachen implementiert sind, sind auch gute Beispiele:
Ihre UML-Benennungskonventionen sollten auf den Benennungskonventionen der Sprache basieren, in der Sie programmieren. Sie beschreiben Ihre tatsächlichen Klassen, Pakete und Methoden, also verwenden Sie die gleichen Namen, die Sie bereits verwendet haben oder bereits verwendet haben Code.
Wie bereits von Wolfgang Fahl erwähnt, gibt UML keine Namenskonventionen an. Vor einigen Monaten haben wir jedoch eine Reihe von namengebenden Richtlinien für die UML veröffentlicht, die plattformunabhängig und domänenzentriert sind. Auch wenn diese Antwort ein bisschen zu spät kommt, können Sie (und andere) sie als ziemlich nützlich empfinden: Ссылка und Ссылка
Tags und Links uml naming-conventions