PlantUML ArchiMate-Diagram-Syntaxleitfaden

Was ist ein ArchiMate-Diagramm?

Ein ArchiMate-Diagrammist eine visuelle Darstellung auf hoher Ebene zur Modellierung von Unternehmensarchitekturen, die Strategien, Geschäftsprozesse, Softwareanwendungen und physische Dateninfrastruktur innerhalb einer Organisation verfolgt. Im Gegensatz zu traditionellen UML-Karten, die tief in die Ablaufroutine von Software eingehen, hilft ArchiMate Geschäftsanalysten, Lösungsarchitekten und CTOs dabei, aufzuzeigen, wie strategische Unternehmensziele von zugrundeliegenden IT-Systemen abhängen.

Während die grundlegende PlantUML native Primitiven enthält, erfordern Produktions-Enterprise-Layouts die offizielle Archimate-PlantUMLStandard-Bibliotheks-Erweiterung. Durch die Nutzung deklarativer Makros und standardisierter Farbbänder ermöglicht es Ihnen, konsistente, TOGAF-konforme Modelle zu pflegen. Mit VPasCode, können Sie Ihre architektonischen Blöcke und relationale Verbindungen vollständig im Text definieren, wodurch die Engine die Farbschemata für Felder und die Ausrichtung dynamisch verarbeitet.

Kern-Syntaxleitfaden: Elemente und Konstrukte

Um die offizielle ArchiMate-Erweiterung sicher in PlantUML zu verwenden, müssen Sie die Standard-Bibliotheksdatei einbinden, Kategoriemakros korrekt implementieren, verschachtelte Blöcke behandeln und explizite strukturelle Beziehungen anwenden.

1. Initialisieren der ArchiMate-Standardbibliothek

Um die offiziellen Makros, Farbpaletten und strukturellen Stereotypen freizuschalten, muss Ihr Skriptblock die Standard-Bibliotheksdatei direkt unter Ihrem Starttag importieren. Sie können optional eines der offiziellen Themen anwenden, um eine hohe Kontrastwirksamkeit zu gewährleisten:

@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>

2. Deklarieren von Elementen mithilfe von Kategoriemakros

Die Standard-Bibliothek vereinfacht die Erstellung von Elementen, indem native Formen innerhalb kategorienpräfixierter Makros eingeschlossen werden. Elemente folgen einer strengen Kategorie_ElementName(ID, "Beschriftung")Namenskonvention. Das Präfix bestimmt die strukturelle Ebene und injiziert automatisch den richtigen Farbtoken:

  • Strategie & Motivation (Lila): Motivation_Beteiligter(), Strategie_Fähigkeit()
  • Geschäfts-Ebene (Gelb): Geschäfts_Akteur(), Geschäfts_Prozess(), Geschäfts_Service()
  • Anwendungs-Ebene (Blau): Anwendungskomponente(), Anwendungsdienst()
  • Technologie-Ebene (Grün): Technologie-Knoten(), Technologie-Systemsoftware()
!include <archimate/Archimate>
Motivationsinteressengruppe(CEO, "Chief Executive Officer")
Anwendungskomponente(CRM, "Salesforce CRM-System")

3. Definieren von Gruppengrenzen und struktureller Verschachtelung

Unternehmenskarten stützen sich stark auf visuelle Einbettung, um Eigentum oder Laufzeitisolierung darzustellen. Sie können umschließende Ordner mit den Makros Gruppe() oder Gruppierung()Makros oder verschachteln Sie Elemente mithilfe geschweifter Klammern:

!include <archimate/Archimate>
Gruppierung(AppUnterSystem, "Kundenservice-Paket") {
    Anwendungskomponente(AuthMod, "OAuth-Token-Modul")
    Anwendungsdienst(UserReg, "Benutzerregistrierungs-API")
}

4. Abbildung standardisierter Unternehmensbeziehungen

ArchiMate setzt eine strenge Vokabular für Verbindungen durch. Anstelle von rohen Pfeilen bietet die Standardbibliothek spezialisierte Beziehungsmakros im Format Rel_Beziehungstyp(Von_ID, Zu_ID, "Beschriftung"). Um manuelle Ausrichtungsanpassungen zu erzwingen, können Sie räumliche Richtungshinweise anhängen (z. B. _Oben, _Unten, _Links, oder _Rechts):

!include <archimate/Archimate>

Motivation_Stakeholder(CEO, "Chief Executive Officer")
Application_Component(CRM, "Salesforce CRM System")

Grouping(AppSubsystem, "Customer Management Suite") {
    Application_Component(AuthMod, "OAuth Token Module")
    Application_Service(UserReg, "User Registration API")
}

' Strukturelle und verhaltensbezogene Beziehungsszenarien
Rel_Realization(UserReg, AuthMod, "Implementiert Sicherheit")
Rel_Serving_Right(CRM, CEO, "Bietet Dashboards")

Best Practices für Layer-Architektur-Diagramme

  • Unterschiedliche Layer isolieren: Organisieren Sie Ihre Skripte sequenziell von oben nach unten (Motivation > Geschäft > Anwendung > Technologie), um Ihre Architekturlayouts für Stakeholder intuitiv zu gestalten.
  • Kurze Komponenten-IDs nutzen: Halten Sie Ihre internen Makro-Tracking-Strings kurz (z. B. verwenden Sie AP_01 oder Srv_Auth), während Sie beschreibenden, kundenorientierten Text für das doppelte Anführungszeichen-Label-Parameter reservieren.
  • Explizite Richtungen bei Quer-Layer-Verbindungen durchsetzen: Layout-Pfade können sich unvorhersehbar verändern, wenn sie strukturelle Grenzen überschreiten. Durch die Verwendung von Richtungs-Makros wie Rel_Access_Down() stellen sicher, dass Ihre Datenströme reibungslos nach unten über Layer-Splitting hinweg fließen.

Realitätsnahe PlantUML ArchiMate-Beispiele

Beispiel 1: Klassische Abbildung strategischer Fähigkeiten (Motivation- und Strategie-Ebenen)

Dieser funktionale Leitfaden dokumentiert die strategische Ebene einer Organisation und zeigt, wie sich Unternehmensinteressenten mit Geschäftsfähigkeiten und realisierten technischen Ergebnissen ausrichten.

@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>

title Strategische Unternehmensausrichtungskarte

Motivation_Stakeholder(CFO, "Chief Financial Officer")
Motivation_Driver(KostenEffizienz, "Reduzierung der operativen Kosten")
Strategy_Capability(automatisierteAbrechnung, "Automatisierung der Unternehmensrechnungsstellung")
Business_Process(RechnungsLauf, "Monatsabschluss der Buchführung")

' Verbinden strategischer Abhängigkeiten
Rel_Association(CFO, KostenEffizienz, "Strebt Verbesserung an")
Rel_Influence(automatisierteAbrechnung, KostenEffizienz, "Wirkt positiv")
Rel_Realization(RechnungsLauf, automatisierteAbrechnung, "Erfüllt Fähigkeit")
@enduml

Syntax-Aufschlüsselung: Durch die Ausführung der lila strategischen Makros ordnet die Engine die Elemente sauber zu. Klare relationale Makros verbinden den menschlichen Stakeholder über organisatorische Motivationen hinweg und bringen die Unternehmensstrategie sauber mit den zugrundeliegenden Ausführungsverhalten in Einklang.

Beispiel 2: End-to-End-System mit drei Ebenen (Quer-Layer-Netzwerk)

Dieser fortgeschrittene Bauplan zeigt eine umfassende, mehrschichtige Architekturtopologie. Er zeigt einen operativen Geschäftsprozess von oben bis hin zu unterstützenden Anwendungs-Mikrodiensten und dem zugrundeliegenden Cloud-Infrastruktur-Host.

@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>

title Ausrichtung der Mehrschichtanwendungarchitektur

Grouping(BizLayer, "Geschäftsoperationen") {
    Business_Actor(Agent, "Kundenservice-Supportagent")
    Business_Process(Ticketing, "Prozess für Enterprise-Support-Tickets")
}

Grouping(AppLayer, "Anwendungsekosystem") {
    Application_Service(TicketSvc, "Zendesk-Integration-API")
    Application_Component(DataRouter, "Ereignisverarbeitungs-Engine")
}

Grouping(TechLayer, "Infrastruktur-Ebene") {
    Technology_SystemSoftware(K8sCluster, "Kubernetes-Orchestrierungs-Cluster")
    Technology_Node(CloudVM, "AWS EC2 m6i.xlarge Compute-Ziel")
}

' Kreuzschichtige Zuordnungen reibungslos mit Richtungshinweisen herstellen
Rel_Assignment(Agent, Ticketing, "Führt täglich aus")
Rel_Serving_Down(TicketSvc, Ticketing, "Versorgt Web-Desk-Oberfläche")

Rel_Composition(DataRouter, TicketSvc, "Empfängt Webhooks von")
Rel_Realization_Down(K8sCluster, DataRouter, "Hostet Anwendungscontainer")

Rel_Composition_Down(CloudVM, K8sCluster, "Bietet Kernhypervisor-Bare-Metal")
@enduml

Syntax-Aufschlüsselung: Diese Karte hebt die Stärke strukturierter Grouping Komponenten hervor. Elemente erhalten automatisch unterschiedliche, schichtspezifische Farbtonen (Gelb, Blau, Grün), abhängig von ihren Makrofamilien. Richtungsbeziehungs-Überschreibungen wie Rel_Serving_Down und Rel_Realization_Down zwingen Abhängigkeiten, elegant durch das Unternehmens-Grid zu fließen.

Nach oben scrollen