Co to jest diagram ArchiMate?
Diagram ArchiMate to wizualizacja modelowania architektury przedsiębiorstwa na wysokim poziomie, która śledzi strategie, procesy biznesowe, aplikacje oprogramowania oraz fizyczne infrastruktury danych w całej organizacji. W przeciwieństwie do tradycyjnych map UML, które analizują głęboko wykonywane procedury oprogramowania, ArchiMate pomaga analitykom biznesowym, architektom rozwiązań i CTO mapować zależność wysokopoziomowych celów korporacyjnych od podstawowych systemów IT.
Podczas gdy podstawowy PlantUML zawiera wbudowane elementy, projektowanie wersji produkcyjnych architektury przedsiębiorstwa wymaga oficjalnego rozszerzenia Archimate-PlantUML rozszerzenia biblioteki standardowej. Dzięki wykorzystaniu deklaratywnych makr i znormalizowanych pasów kolorystycznych umożliwia ono utrzymywanie spójnych modeli zgodnych z TOGAF. Dzięki VPasCode, możesz całkowicie definiować swoje bloki architektoniczne i relacyjne nici w tekście, pozwalając silnikowi dynamicznie zarządzać schematami kolorystycznymi pól i ich wyrównaniem.
Podstawowy przewodnik składniowy: elementy i konstrukcje
Aby bezpiecznie używać oficjalnego rozszerzenia ArchiMate w PlantUML, należy dołączyć plik biblioteki standardowej, poprawnie zaimplementować makra kategorii, obsłużyć zagnieżdżone bloki oraz zastosować jawne relacje strukturalne.
1. Inicjowanie biblioteki standardowej ArchiMate
Aby odblokować oficjalne makra, palety kolorów i stereotypy strukturalne, blok skryptu musi zaimportować plik biblioteki standardowej bezpośrednio pod znacznikiem uruchomienia. Możesz opcjonalnie zastosować jeden z oficjalnych motywów, aby zapewnić wysoką kontrastowość widoczności:
@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>
2. Deklarowanie elementów za pomocą makr kategorii
Biblioteka standardowa upraszcza tworzenie elementów, otaczając domyślne kształty makrami z prefiksem kategorii. Elementy podlegają ścisłemuKategoria_NazwaElementu(ID, "Etykieta")konwencji nazewnictwa. Prefiks określa warstwę strukturalną i automatycznie wstrzykuje odpowiedni token kolorystyczny:
- Strategia i motywacja (fioletowy):
Motywacja_Uczestnik(),Strategia_Capacysty() - Warstwa biznesowa (żółty):
Biznes_Uczestnik(),Biznes_Proces(),Biznes_Serwis() - Warstwa aplikacji (niebieski):
Komponenta_Aplikacji(),Usługa_Aplikacji() - Warstwa Technologiczna (zielona):
Węzeł_Technologiczny(),Oprogramowanie_Systemowe_Technologiczne()
!include <archimate/Archimate>
Motywacja_Uczestnik(CEO, "Chief Executive Officer")
Komponenta_Aplikacji(CRM, "System CRM Salesforce") 
3. Definiowanie granic grup i zagnieżdżania strukturalnego
Mapy przedsiębiorstwa bardzo mocno opierają się na zawieraniu wizualnym w celu przedstawienia własności lub izolacji środowiska uruchomieniowego. Możesz tworzyć foldery ograniczające za pomocą makrGrupa()lubGrupowanie()makr, lub zagnieżdżać elementy w sobie za pomocą klamer:
!include <archimate/Archimate>
Grupowanie(PodsystemAplikacji, "Zestaw zarządzania klientami") {
Komponenta_Aplikacji(AuthMod, "Moduł tokenów OAuth")
Usługa_Aplikacji(UserReg, "Interfejs API rejestracji użytkownika")
} 
4. Mapowanie znormalizowanych relacji przedsiębiorstwa
ArchiMate wymusza ściśle określony słownictwo dla połączeń. Zamiast surowych strzałek, standardowa biblioteka oferuje dedykowane makra relacji sformatowane jakoRel_TypRelacji(From_ID, To_ID, "Etykieta"). Aby wymusić ręczne dostosowania orientacji, możesz dołączyć wskazówki przestrzenne (takie jak_DoGóry, _DoDolu, _DoLewa, lub _Prawo):
!include <archimate/Archimate>
Motywacja_Stakeholder(CEO, "Chief Executive Officer")
Komponent_Aplikacji(CRM, "System CRM Salesforce")
Grupowanie(AppSubsystem, "Zestaw zarządzania klientami") {
Komponent_Aplikacji(AuthMod, "Moduł tokenów OAuth")
Usługa_Aplikacji(UserReg, "Interfejs API rejestracji użytkownika")
}
' Przykłady relacji strukturalnych i zachowaniowych
Rel_Realizacja(UserReg, AuthMod, "Implementuje zabezpieczenia")
Rel_Serwowanie_Prawo(CRM, CEO, "Dostarcza pulpity monitoringu") 
Najlepsze praktyki dla diagramów architektury warstwowej
- Wyodrębnij wyraźne warstwy: Ułóż skrypty sekwencyjnie od góry do dołu (Motywacja > Biznes > Aplikacja > Technologia), aby Twoje układy architektury były intuicyjne dla stakeholderów.
- Wykorzystaj krótkie identyfikatory komponentów: Zachowaj krótkie ciągi śledzenia makr wewnętrznych (np. użyj
AP_01lubSrv_Auth), jednocześnie rezerwując opisowy, widoczny dla klienta tekst dla parametru etykiety w podwójnych cudzysłowach. - Wymuszaj jasne kierunki na przekroczonych warstwach: Trasy układu mogą nieoczekiwanie się przesuwać przy przekraczaniu granic strukturalnych. Używanie makr kierunkowych takich jak
Rel_Access_Down()zapewnia płynne przepływy danych w dół przez podziały warstw.
Przykłady PlantUML ArchiMate z rzeczywistego świata
Przykład 1: Klasyczne mapowanie możliwości strategicznych (poziomy motywacji i strategii)
Ten szkic funkcjonalny dokumentuje warstwę strategiczną organizacji, pokazując, jak stakeholderzy korporacyjni są dopasowani do możliwości biznesowych i zrealizowanych wyników technicznych.
@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>
tytuł Mapa strategicznego dopasowania przedsiębiorstwa
Motywacja_Stakeholder(CFO, "Chief Financial Officer")
Motywacja_Driver(CostEfficiency, "Zmniejszenie kosztów operacyjnych")
Strategiczna_Potęga(AutomatedBilling, "Automatyzacja rozliczeń firmowych")
Proces_Biznesowy(InvoiceRun, "Zamknięcie księgowości na koniec miesiąca")
' Połączenie zależności strategicznych
Rel_Assocjacja(CFO, CostEfficiency, "Chce poprawić")
Rel_Influenca(AutomatedBilling, CostEfficiency, "Pozytywnie wpływa")
Rel_Realizacja(InvoiceRun, AutomatedBilling, "Realizuje potęgę")
@enduml 
Analiza składni: Wykonując fioletowe makra strategiczne, silnik precyzyjnie mapuje elementy. Jasne makra relacyjne łączą stakeholdera ludzkiego z motywacjami organizacyjnymi, precyzyjnie dopasowując strategię korporacyjną do podstawowych zachowań wykonawczych.
Przykład 2: System przedsiębiorstwa trzywarstwowy od końca do końca (siatka przekroczona przez warstwy)
Ten zaawansowany szablon demonstruje kompleksną, wielowarstwowa architekturę topologii. Mapuje proces operacyjny biznesowy w dół przez wspierające usługi mikroserwisów aplikacji do podstawowego hosta infrastruktury chmurowej.
@startuml
!include <archimate/Archimate>
!theme archimate-standard from <archimate/themes>
tytuł Wyrównanie architektury aplikacji wielowarstwowej
Grouping(BizLayer, "Działalność biznesowa") {
Business_Actor(Agent, "Agent obsługi klienta")
Business_Process(Ticketing, "Proces obsługi zgłoszenia firmowego")
}
Grouping(AppLayer, "Ekosystem aplikacji") {
Application_Service(TicketSvc, "Interfejs API integracji z Zendesk")
Application_Component(DataRouter, "Silnik przetwarzania zdarzeń")
}
Grouping(TechLayer, "Warstwa infrastruktury") {
Technology_SystemSoftware(K8sCluster, "Klastrowa platforma zarządzania Kubernetes")
Technology_Node(CloudVM, "Docelowy obliczeniowy serwer AWS EC2 m6i.xlarge")
}
' Ustanów płynne mapowania między warstwami używając wskazówek kierunkowych
Rel_Assignment(Agent, Ticketing, "Wykonywany codziennie")
Rel_Serving_Down(TicketSvc, Ticketing, "Zasilanie interfejsu użytkownika webowego")
Rel_Composition(DataRouter, TicketSvc, "Przyjmuje webhooki z")
Rel_Realization_Down(K8sCluster, DataRouter, "Hostuje kontener aplikacji")
Rel_Composition_Down(CloudVM, K8sCluster, "Dostarcza podstawowy hipervisor z pełnym dostępem do sprzętu")
@enduml 
Rozkład składni: Ta mapa podkreśla siłę strukturalną Grouping komponentów. Elementy automatycznie otrzymują charakterystyczne, warstwowe odcienie kolorów (żółty, niebieski, zielony) w zależności od ich rodzajów makro. Nadpisywanie relacji kierunkowych takie jak Rel_Serving_Down oraz Rel_Realization_Down powodują, że zależności płynnie rozchodzą się w dół siatki przedsiębiorstwa.