Namenskonventionen
Diese Seite ist ein Teil der IsyFact-Standards. Alle Inhalte der Seite, insbesondere Texte und Grafiken, sind urheberrechtlich geschützt. Alle urheberrechtlichen Nutzungs- und Verwertungsrechte liegen beim Bundesverwaltungsamt.
Die Nutzung ist unter den Lizenzbedingungen der Creative Commons Namensnennung 4.0 International gestattet.
1. Einleitung
Die umfassenden Konzepte der IsyFact automatisieren und vereinheitlichen den Bau von Anwendungen. Um dies zu erreichen ist es wichtig, dass Namen und Benennungen über die gesamte Anwendungslandschaft hinweg einheitlich sind. Es existiert daher eine Vielzahl von Namenskonventionen in den verschiedenen Konzepten der IsyFact. Dieses Dokument ist Teil der IsyFact Standards.
1.1. Kurzüberblick
Dieses Dokument sammelt die Namenskonventionen der IsyFact an einem zentralen Ort. In den jeweiligen Konzepten wird die Vorgabe nochmals erwähnt.
Nach der Einleitung, die einen kurzen Abschnitt über generelle Anforderungen an Namen enthält, befasst sich das Kapitel Namenskonventionen mit den Namenskonventionen der IsyFact. Es ist dabei unterteilt in allgemeine Konventionen sowie Konventionen in der Entwicklung von Anwendungen.
Jede Namenskonvention ist in Tabellenform dargestellt. Es ist jeweils das Namensschema der Konvention mit Beispielen zu sehen. Ergänzt wird diese Darstellung durch eine Erklärung der genutzten Variablen und ihrer möglichen Ausprägungen.
2. Namenskonventionen
Dieser Abschnitt beschreibt die Namenskonventionen der IsyFact. In komplexen Anwendungslandschaften werden Anwendungen in der Regel in funktionale Kategorien eingeordnet und typisiert (z.B. Register und Geschäftsanwendungen). Bei weniger komplexen Kontexten, in denen nur eine einzige oder wenige Geschäftsanwendungen existieren, wird meist allgemein von „Geschäftsanwendungen“ gesprochen.
In folgenden Vorgaben wird daher zwischen Geschäftsanwendungen und Registern unterschieden. Für andere Kontexte können weitere Systemtypen eingeführt werden, für die entsprechende Vorgaben nach dem gleichen Schema zu definieren sind.
2.1. Allgemein
In diesem Abschnitt werden allgemeine Namenskonventionen festgehalten.
2.1.1. Namen von Anwendungen
Je nach Anwendungstyp ist der Name unterschiedlich zu wählen. Die verschiedenen Varianten sind wie folgt abgebildet.
2.2. Spezifikation
In diesem Kapitel werden die Namenskonventionen der Spezifikation festgehalten. Sie sind vor allem der Vorlage zur Systemspezifikation entnommen.
2.2.1. Geschäftsprozess
Geschäftsprozess | |
---|---|
Schema |
|
Beispiele |
|
2.2.2. Geschäftsvorfall
Geschäftsvorfall | |
---|---|
Schema |
|
Beispiele |
|
2.2.3. Aktivität
Aktivität | |
---|---|
Schema |
|
Beispiele |
|
2.2.4. Dokument
Dokument | |
---|---|
Schema |
|
Beispiele |
|
2.2.5. Persistente Daten
Persistente Daten | |
---|---|
Schema |
|
Beispiele |
|
2.2.6. Organisationseinheit
Organistationseinheit | |
---|---|
Schema |
|
Beispiele |
|
2.2.8. Anwendungskomponente
Anwendungskomponente | |
---|---|
Schema |
|
Beispiele |
|
2.2.9. Anwendungsfall
Anwendungsfall | |
---|---|
Schema |
|
Beispiele |
|
2.2.10. Anwendungsfunktion
Anwendungsfunktion | |
---|---|
Schema |
|
Beispiele |
|
2.2.11. Batch
Batch | |
---|---|
Schema |
|
Beispiele |
|
2.2.12. Modellkomponente
Modellkomponente | |
---|---|
Schema |
|
Beispiele |
|
2.2.16. Druckstück
Druckstück | |
---|---|
Schema |
|
Beispiele |
|
2.2.17. Nachbarschnittstelle
Nachbarschnittstelle | |
---|---|
Schema |
|
Beispiele |
|
2.3. Entwicklung
Dieser Abschnitt fasst die Namenskonventionen zusammen, die bei der Entwicklung einer Anwendung nach IsyFact relevant sind. Das sind vor allem Klassen- und Dateinamen.
Einige der hier genannten Namenskonventionen sind von denen der Spezifikation abhängig, beziehungsweise werden davon abgeleitet.
2.3.1. Maven-Artefakte und -Module
Group-ID von Maven-Modulen/-Artefakten | |
---|---|
Schema Group-ID |
|
Beispiel |
|
Artefakt-ID von Maven-Modulen/-Artefakten | |
---|---|
Schema Artefakt-ID |
|
Beispiel |
|
Besteht der Zweck genau einer Klasse ausschließlich oder zum größten Teil aus der Implementierung eines Interfaces,
dann wird die Klasse so genannt wie das Interface, ergänzt um das Suffix Impl
.
Klassenname bei hauptsächlicher Implementierung eines Interfaces | |
---|---|
Schema |
|
Beispiele |
|
2.3.2. Technische Systemnamen
Die technischen Systemnamen entsprechen der technischen Bezeichnung für eine IsyFact-konforme Anwendung. Sie werden unter anderem für Projektnamen in Eclipse, Dokument Basis / Context Root bei Schnittstellen-URLs und als Namen von Deployment-Einheiten (vgl. Kapitel RPM-Pakete) verwendet.
2.3.2.1. Geschäftsanwendung
Name einer Geschäftsanwendung | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs. |
2.3.2.2. Register
Name eines Registers | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Erklärung / Ausprägungen |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs. |
2.3.2.3. Servicegateway
Name eines Servicegateways | |
---|---|
Schemata |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs. |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs, mit dem dieser SGW kommuniziert bzw. für den er eine Schnittstelle bereitstellt. |
2.3.2.4. Mailgateway
Name eines Mailgateways | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs. |
2.3.2.5. Querschnittsanwendung
Name einer Querschnittsanwendung | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der (Kurz)name des Verfahrens/Anwendungsbereichs. |
2.3.2.6. Auslagern einer Fachkomponente aus einer Geschäftsanwendung
Wenn eine Geschäftsanwendung in mehrere Fachkomponenten getrennt wird, dann wird die herausgebildete Fachkomponente wie folgt genannt:
Name einer fachlichen Geschäftskomponente | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der Name einer Anwendung, wie in den vorigen Abschnitten beschrieben. Er setzt sich meistens aus einem Systemkürzel und dem Systemtyp zusammen. |
|
Der Name der Fachkomponente, welche aus der Geschäftsanwendung ausgelagert wird. |
2.3.2.7. Auslagern einer technischen Komponente aus einer Anwendung
Wenn eine Geschäftsanwendung oder Fachkomponente technisch in mehrere IT-Systeme getrennt wird, dann werden diese Systeme wie folgt genannt:
Name einer technischen Geschäftskomponente | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Der Name einer Anwendung, wie in den vorigen Abschnitten beschrieben. Er setzt sich meistens aus einem Systemkürzel und dem Systemtyp zusammen. |
|
Der Name der Fachkomponente, welche aus der Geschäftsanwendung ausgelagert wird. |
|
Der Name der technischen Komponente: meist |
2.3.3. Name der Web Application
Der Name einer Web-Applikation (Webapp-Root) ist immer gleich dem technischen Systemnamen.
2.3.4. Persistenzschicht
Data Access Object: Spring Data Repository | |
---|---|
Schema |
|
Beispiel |
|
Der Name eines Datenbankschemas genügt den folgenden Anforderungen:
-
er enthält vollständige, beschreibende, aussprechbare Namen (oder bekannte Abkürzungen),
-
er muss mit einem Buchstaben beginnen,
-
nur Buchstaben, Zahlen und Unterstriche (_) sind erlaubt,
-
Umlaute, Sonderzeichen, Bindestriche und Leerzeichen sind nicht erlaubt.
Klassen | Package |
---|---|
DAO |
|
Entity |
|
2.3.4.1. Historisierung
Schema |
|
---|---|
Beispiel |
|
Schema |
|
---|---|
Beispiel |
|
Schema |
|
---|---|
Beispiel |
|
Schema |
|
---|---|
Beispiel |
|
Schema |
|
---|
2.4. Anwendungskern
Geschäftsobjekt | |
---|---|
Schema |
|
Beispiel |
|
Anwendungsfallklassen | |
---|---|
Schema |
|
Beispiele |
|
Anwendungsfunktion | |
---|---|
Schema |
|
Beispiele |
|
2.5. Batchrahmen
Batches: Konfigurationsparameter Kommandozeile | |
---|---|
Schema |
|
Beispiele |
|
Batches: Benennung Konfigurationsdateien (unter resources/resources/batch) | |
---|---|
Schemata |
|
Beispiele |
|
Batches: Konfigurationsparameter Konfigurationsdatei | |
---|---|
Schema |
|
Beispiele |
|
Analog zu den Anwendungsfällen werden Batch-Klassen mit dem Präfix Bat
gekennzeichnet.
Batches: Klassen | |
---|---|
Schema |
|
Beispiele |
|
2.6. REST-Schnittstellen
Prozessorientierte URIs | |
---|---|
Schema |
|
Beispiele |
|
Ressourcen-URIs | |
---|---|
Schema |
|
Regeln |
Die Bezeichnung der Ressource beinhaltet ausschließlich Kleinbuchstaben. Zwischen Teilen zusammengesetzter Begriffe steht jeweils ein Bindestrich. Beinhaltet die Bezeichnung Sonderzeichen, müssen sie gemäß üblicher Transkriptionsregeln ersetzt werden (z. B. "ae" statt "ä"). |
Beispiele |
Beispiele für eine Menge von Objekten. Die Ressource liefert alle Objekte zurück.
Beispiel für ein einzelnes Objekt. Die Ressource liefert ein eindeutig identifizierbares Objekt zurück.
Beispiel für zusammengesetzte Begriffe.
Beispiel für die Ersetzung von Sonderzeichen. |
Beziehungen zwischen Ressourcen | |
---|---|
Schema |
|
Hinweis |
Enthält eine Ressource wiederum mehrere Ressourcen, wird wieder der Plural verwendet. |
Beispiele |
adressiert den Absender einer bestimmten Nachricht.
adressiert den bestimmten CC-Empfänger (mit der Id |
Adressierung von mehreren Ressourcen | |
---|---|
Schema |
|
Beispiele |
|
2.7. Deployment/Betrieb von Anwendungen
2.7.1. RPM-Pakete
Für die Benennung von RPM-Paketen existiert eine Konvention, welche durch den RPM-Standard vorgeben wird.
Siehe RPM Packaging Guide |
RPM-Pakete | |
---|---|
Schema |
|
Beispiele |
|
Variable |
Mögliche Ausprägungen |
|
Name der Deployment-Einheit. Setzt sich in der Regel aus einem Präfix für die Anwendungslandschaft (<awl>) und dem Anwendungsnamen (siehe Kapitel 2.1.1) zusammen. Deployment-Einheiten der Anwendungslandschaft IsyFact besitzen z.B. das Präfix „isy“. Beispiel:
|
|
Versionsnummer der Deployment-Einheit, z.B. „1.2.0“. Die Versionierung basiert auf Semantic Versioning und ist im Konzept IsyFact Versionierung beschrieben. |
|
Hier wird die Build-Nummer eingesetzt. Sie wird bei dem Bau jeder Auslieferungsversion (insbesondere auch bei Nachlieferungen) erhöht. Während der Entwicklung (Continuous Integration) wird hier eine laufende Nummer (Revisionsnummer der Versionsverwaltung, laufende Build-Nummer des CI-Servers etc.) eingesetzt. |
|
Gibt die Systemarchitektur an, für welche das Paket erstellt wurde. Da IsyFact-konforme Anwendungen in Java erstellt werden, wird hier immer „noarch“ eingesetzt. Sollten Anwendungen Architektur-spezifische Bestandteile enthalten, wird hier die vom RPM-Standard vorgegebene Architektur-Bezeichnung eingesetzt. |
2.7.2. Installationspfade
Die Installationspfade sind im Systemhandbuch beschrieben.
Installationspfade – Anwendung | |
---|---|
Schema |
|
Beispiele |
|
Installationspfade: Logdateien |
|
Schema |
|
Beispiele |
|
Installationspfade: Betriebliche Konfiguration |
|
Schema |
|
Beispiele |
|
2.8. Dokumentation
Die Namenskonventionen für die Dokumentation sind Teil des Leitfadens Dokumentation.