Einführung
Verwendung Fall Diagramme bieten einem klaren Wege um zu beschreiben wie Benutzer, externe Systeme, und andere Akteure interagieren mit einem Software- System. Sie helfen Teams den System- Umfang zu definieren, zu identifizieren funktional Anforderungen, neben kommunizieren erwartetes Verhalten vor Implementierung beginnt.
PlantUML macht Gebrauch Fall Modellierung praktisch durch eine textbasierte Syntax die gespeichert, überprüft, versioniert, und neuerzeugt neben Projekt Dokumentation Dokumentation Dokumentation oder Quelle Code. Mit einigen wenigen Befehlen, können definieren Akteure, Anwendungs- fälle, System- Grenzen, Assoziationen, <<include>> Beziehungen, <<extend>> Beziehungen, Verallgemeinerung, Notizen, und Layout- Einstellungen.
Diese Anleitung erklärt die wichtigen PlantUML Verwendung Fall Notation gezeigt in der Referenz Blatt und demonstriert wie zu anzuwenden sie in realistischen Beispielen. Es führt zudem ein breiteres Werkzeug-Workflow Workflow unter Verwendung von Visual Paradigm UML, KI-gestützte KI-gestützte KI-gestützte Modellierung, und VPasCode. Zusammen, diese Werkzeuge unterstützen einen vollständigen Prozess: das Umsetzen Anforderungen in ein erstes Modell, die Validierung UML Beziehungen, die Verfeinerung des Diagramms, und die Pflege des endgültigen Modells als lesbares Diagramm Quelle.
Ein UML-Use-Case-Diagramm beschreibt, wie externe Benutzer oder Systeme mit einem System interagieren. Es konzentriert sich auf was das System tutund nicht darauf, wie es implementiert ist.
PlantUML ermöglicht es Ihnen, Use-Case-Diagramme mit einer einfachen textbasierten Notation zu erstellen.
1. Grundlegende PlantUML-Struktur
Jedes PlantUML-Diagramm beginnt mit @startuml und endet mit @enduml.
@startuml
' Diagramminhalt geht hier hin
@enduml
Kommentare beginnen mit einem Apostroph:
Sie können auch Mehrzeilenkommentare verwenden:
/'
Dies ist ein
mehrzeiliger Kommentar
'/
2. Definieren von Akteuren
Ein Akteur stellt eine Person, Rolle, Organisation, ein Gerät oder ein externes System dar, das mit Ihrem System interagiert.
Basisakteur
Dies erstellt einen Strichmännchen-Akteur namens User.
Akteur mit Alias
Aliases sind nützlich, wenn der angezeigte Name Leerzeichen enthält oder wenn Sie einen kürzeren Bezeichner für Beziehungen wünschen.
actor "Payment Gateway" as payment
actor "System Administrator" as admin
Sie können dann auf die Aliase verweisen:
payment --> ProcessPayment
admin --> ManageUsers
Schauspieler mit einem anderen visuellen Stil
PlantUML unterstützt mehrere Schauspielerstile. Der Standardstil ist in der Regel ausreichend, aber Sie können einen Schauspieler im Icon-Stil verwenden:
skinparam actorStyle awesome
actor Kunde
Sie können auch einen Schauspieler im einfachen Rechteck-Stil verwenden:
skinparam actorStyle hollow
actor Kunde
Das genaue Aussehen hängt von der PlantUML-Rendering-Engine und den Hautparametern ab.
3. Definition von Anwendungsfällen
Ein Anwendungsfall stellt einen vom System bereitgestellten Dienst, ein Ziel oder eine Funktion dar.
Basis-Anwendungsfall
PlantUML stellt dies als eine Ellipse mit der Beschriftung dar Anmelden.
Verwendungsfall mit Alias
usecase "Kreditkartenzahlung verarbeiten" als ProcessPayment
Die sichtbare Beschriftung ist Kreditkartenzahlung verarbeiten, während ProcessPayment wird in Beziehungen verwendet.
Mehrzeilige Verwendungsfallnamen
Sie können eine Zeilenumbruch mit n:
usecase "VorgangnKreditkartennZahlung" als ProcessPayment
Dies ist nützlich, wenn ein Diagramm lange Beschriftungen enthält.
4. Systemgrenzen
Eine Systemgrenze gruppiert die Use Cases, die zu einem bestimmten System gehören.
rectangle "Online-Shopping-System" {
usecase "Produkte durchsuchen" als Browse
usecase "Kasse" als Checkout
}
Das Rechteck stellt das System dar, und die Use Cases darin stellen die vom System bereitgestellten Funktionen dar.
Sie können für die Grenze auch einen benannten Alias verwenden:
rectangle "Online-Shopping-System" als OnlineStore {
usecase "Produkte durchsuchen" als Browse
usecase "Kasse" als Checkout
}
Eine Systemgrenze ist nützlich, wenn das Systemverhalten von externen Akteuren und Diensten unterschieden werden soll.
5. Verbinden von Akteuren und Use Cases
Eine Assoziation zeigt an, dass ein Akteur an einem Use Case teilnimmt oder mit ihm interagiert.
Ungerichtete Assoziation
Dies erzeugt eine durchgezogene Linie ohne Pfeilkopf.
Gerichtete Assoziation
Dies erzeugt eine durchgezogene Linie mit einem Pfeilkopf, der auf den Anwendungsfall zeigt.
Beide Formen werden häufig verwendet. Die Pfeilrichtung sollte konsistent entsprechend der Kommunikation oder Verantwortung gewählt werden, die Sie betonen möchten.
Assoziation mit einer Beschriftung
Die Beschriftung beschreibt die Interaktion.
Kunde --> BestellungenAnzeigen : zeigt Bestellverlauf an
Für ein besser lesbares Layout können Sie einen längeren Pfeil verwenden:
6. Die <<include>> Beziehung
Eine include Beziehung stellt ein Verhalten dar, das immer erforderlich von einem anderen Anwendungsfall ist.
Beispielsweise kann das Aufgeben einer Bestellung immer eine Zahlungsvalidierung erfordern:
BestellungAufgeben ..> Zahlungsvalidierung : <<include>>
Die Richtung ist wichtig:
Basis-Anwendungsfall ..> Eingebetteter Anwendungsfall : <<include>>
Der Pfeil zeigt vom Anwendungsfall, der das Verhalten benötigt, zum Anwendungsfall, der das wiederverwendbare Verhalten bereitstellt.
Beispiel
usecase "Kasse" als Kasse
usecase "Kundendetails validieren" als ValidiereKunde
usecase "Bestellsumme berechnen" als BerechneSumme
usecase "Zahlung durchführen" als Zahle
Kasse ..> ValidiereKunde : <<include>>
Kasse ..> BerechneSumme : <<include>>
Kasse ..> Zahle : <<include>>
Das bedeutet:
-
Die Kasse validiert stets die Kundendetails.
-
Die Kasse berechnet stets die Bestellsumme.
-
Die Kasse führt stets die Zahlung durch.
Verwenden Sie <<include>> , wenn das eingeschlossene Verhalten verpflichtend oder wiederverwendbar ist.
7. Die <<extend>> Beziehung
Eine extend Beziehung stellt optionales, bedingtes oder außergewöhnliches Verhalten dar, das einem Basenutzungsfall hinzugefügt wird.
Zum Beispiel kann die Anwendung eines Rabatts nur erfolgen, wenn der Kunde einen gültigen Gutschein besitzt:
Die Richtung ist:
Optionaler erweiternder Anwendungsfall ..> Basisanwendungsfall : <<extend>>
Der Pfeil zeigt von dem optionalen Verhalten zum Basisanwendungsfall.
Korrektes Beispiel
usecase "Kasse" as Checkout
usecase "Rabattgutschein anwenden" as ApplyDiscount
ApplyDiscount ..> Checkout : <<extend>>
Dies bedeutet, dass Rabattgutschein anwendenoptional den Kassenprozesserweitert.
Vergleich von Include und Extend
| Beziehung | Zweck | Pfeilrichtung |
|---|---|---|
<<include>> |
Verpflichtendes wiederverwendbares Verhalten | Basisanwendungsfall → eingebundener Anwendungsfall |
<<extend>> |
Optionales oder bedingtes Verhalten | Erweiternder Anwendungsfall → Basisanwendungsfall |
Beispiel:
Checkout ..> ValidatePayment : <<include>>
ApplyDiscount ..> Checkout : <<extend>>
Vermeiden Sie das Umkehren dieser Beziehungen, da die Richtung ihre Bedeutung ändert.
8. Verallgemeinerung von Anwendungsfällen
Verallgemeinerung zeigt, dass ein Anwendungsfall eine spezialisierte Form eines anderen Anwendungsfalls ist.
usecase "Produkte suchen" as SearchProducts
usecase "Produkte durchsuchen" as BrowseProducts
SearchProducts -|> BrowseProducts
Das hohle Dreieck zeigt auf den allgemeineren Anwendungsfall.
Dies bedeutet, dass Produkte suchen eine spezialisierte Variante von Produkte durchsuchen.
Verallgemeinerung ist weniger verbreitet als include und extend, verwenden Sie es daher nur, wenn zwischen Anwendungsfällen eine echte Eltern-Kind-Beziehung besteht.
9. Verallgemeinerung von Akteuren
Akteure können ebenfalls Verallgemeinerungsbeziehungen aufweisen.
actor Kunde
actor "Premium-Kunde" als PremiumCustomer
PremiumCustomer -|> Kunde
Dies zeigt an, dass ein Premium-Kunde eine spezialisierte Art von Kunde ist und die Interaktionen des allgemeinen Akteurs erbt.
Zum Beispiel:
10. Hinweise und Anmerkungen
Hinweise fügen einem Diagramm Erklärungen oder Einschränkungen hinzu.
Hinweis an einen Anwendungsfall angehängt
note rechts von Checkout
Der Kunde muss
gültige Rechnungsdaten angeben.
end note
Andere Positionen umfassen:
note links von Checkout
Kundenorientierter Prozess
end note
note oben von Checkout
Hauptgeschäftsablauf
end note
note unten von Checkout
Beinhaltet Zahlungsabwicklung
end note
Kurze Notiz-Syntax
note rechts von Login : Benutzerauthentifizierung ist erforderlich
Standalone-Notiz mit Alias
note "Zahlung muss autorisiert werdennvor der Bestellung bestätigt wird" als PaymentNote
Verbinden Sie die Notiz mit einem Element durch eine gestrichelte Linie:
Notizen für Einschränkungen
Notizen sind nützlich zur Dokumentation von Bedingungen:
Hinweis rechts von ApplyDiscount
Optionales Verhalten:
wird nur verwendet, wenn ein gültiger
Gutschein angegeben wird.
Ende Hinweis
11. Layout-Richtung
Standardmäßig wählt PlantUML ein Layout automatisch aus. Sie können die Richtung beeinflussen.
Layout von links nach rechts
Dies ist häufig nützlich für Anwendungsfalldiagramme, da Akteure links und externe Systeme rechts erscheinen.
Layout von oben nach unten
Dies kann für kompakte Diagramme oder vertikal organisierte Workflows nützlich sein.
Unsichtbare Layout-Verbindungen
Eine unsichtbare Verbindung kann die Positionierung beeinflussen, ohne eine sichtbare Beziehung anzuzeigen:
Dies ist nützlich zur Verbesserung des Diagramm-Layouts.
12. Das Diagramm gestalten
Schatten entfernen
Rechteckige Pakete und Grenzen verwenden
Farben festlegen
skinparam usecase {
BackgroundColor #FDFDFD
BorderColor #333333
}
skinparam actor {
BorderColor #333333
}
Pfeilfarben festlegen
Standard-Schriftgröße festlegen
Ein vollständiger Stilabschnitt könnte so aussehen:
skinparam shadowing false
skinparam packageStyle rectangle
skinparam actorStyle awesome
skinparam defaultFontSize 14
skinparam usecase {
BackgroundColor #F9FBFF
BorderColor #234
}
skinparam ArrowColor #555555
13. Pakete und Gruppierung
Pakete können zusammengehörige Anwendungsfälle gruppieren.
package "Kundenfunktionen" {
usecase "Konto registrieren" as Register
usecase "Anmelden" as Login
usecase "Produkte durchsuchen" as Browse
}
package "Verwaltungsfunktionen" {
usecase "Produkte verwalten" as ManageProducts
usecase "Verkaufsbericht erstellen" as SalesReport
}
Pakete sind hilfreich, wenn ein Diagramm viele Anwendungsfälle enthält.
Sie können auch ein Rechteck als Gruppe verwenden:
rectangle "Bestellverwaltung" {
usecase "Bestellung aufgeben" as PlaceOrder
usecase "Bestellung verfolgen" as TrackOrder
usecase "Bestellung stornieren" as CancelOrder
}
14. Externe Systeme
Externe Anwendungen oder Dienste können als Akteure dargestellt werden.
actor "Zahlungs-Gateway" as PaymentGateway
actor "E-Mail-Dienst" as EmailService
actor "Externes CRM" as CRM
Verbinden Sie sie mit System-Anwendungsfällen:
PaymentGateway --> ZahlungErledigen
EmailService --> BestätigungSenden
CRM --> KundenSynchronisieren
Dies trennt die Systemfunktionalität klar von Diensten außerhalb der Systemgrenze.
15. Vollständiges Beispiel
Das folgende Beispiel kombiniert die wichtigsten Notationen aus dem Referenzblatt.

@startuml
titel Online-Shopping-System - Use-Case-Diagramm
Richtung von links nach rechts
skinparam Schattenwurf false
skinparam Paketstil Rechteck
skinparam Akteurstil großartig
skinparam UseCase {
Hintergrundfarbe #F9FBFF
Rahmenfarbe #333333
}
skinparam Pfeilfarbe #555555
' Akteure
actor Kunde als customer
actor "Premium-Kunde" als premium
actor Administrator als admin
actor "Zahlungs-Gateway" als payment
actor "E-Mail-Service" als email
' Akteur-Generalisierung
premium -|> customer
' Systemgrenze
rectangle "Online-Shopping-System" {
' Kunden-Use-Cases
usecase "Konto registrieren" as Register
usecase "Anmelden" as Login
usecase "Produkte durchsuchen" as Browse
usecase "Produkte suchen" as Search
usecase "Produktdetails anzeigen" as ViewProduct
usecase "Produkt zum Warenkorb hinzufügen" as AddToCart
usecase "Warenkorb anzeigen" as ViewCart
usecase "Zur Kasse gehen" as Checkout
usecase "Bestellung aufgeben" as PlaceOrder
usecase "Bestellung verfolgen" as TrackOrder
usecase "Bestellung stornieren" as CancelOrder
' Gemeinsame eingeschlossene Verhaltensweisen
usecase "Kundendetails validieren" as ValidateCustomer
usecase "Gesamtbetrag der Bestellung berechnen" as CalculateTotal
usecase "Zahlung leisten" as MakePayment
usecase "Bestellbestätigung senden" as SendConfirmation
' Optionales Verhalten
usecase "Rabattgutschein anwenden" as ApplyDiscount
usecase "Rückerstattung beantragen" as RequestRefund
' Administrations-Use-Cases
usecase "Produkte verwalten" as ManageProducts
usecase "Verkaufsbericht erstellen" as SalesReport
}
' Assoziationen der Akteure
customer --> Register
customer --> Login
customer --> Browse
customer --> Search
customer --> ViewProduct
customer --> AddToCart
customer --> ViewCart
customer --> Checkout
customer --> TrackOrder
customer --> CancelOrder
premium --> ApplyDiscount
premium --> RequestRefund
admin --> ManageProducts
admin --> SalesReport
payment --> MakePayment
email --> SendConfirmation
' Einschließungsbeziehungen
Checkout ..> ValidateCustomer : <<include>>
Checkout ..> CalculateTotal : <<include>>
Checkout ..> PlaceOrder : <<include>>
PlaceOrder ..> MakePayment : <<include>>
PlaceOrder ..> SendConfirmation : <<include>>
' Erweiterungsbeziehungen
ApplyDiscount ..> Checkout : <<extend>>
RequestRefund ..> CancelOrder : <<extend>>
' Use-Case-Generalisierung
Search -|> Browse
' Hinweise
note right of Checkout
Hauptkaufprozess des Kunden
end note
note right of ApplyDiscount
Optionales Verhalten:
wird nur verwendet, wenn ein gültiger
Gutschein verfügbar ist
end note
note bottom of MakePayment
Die Zahlung wird von einem
externen Zahlungs-Gateway abgewickelt
end note
@enduml

16. Lesen des vollständigen Beispiels
Das Diagramm vermittelt Folgendes:
-
Kundekann Produkte durchsuchen, Produkte in einen Warenkorb legen und zur Kasse gehen. -
Premium-Kundeist eine spezialisierte Form vonKunde. -
Zur Kasse gehenbeinhaltet immer die Validierung des Kunden, die Berechnung des Gesamtbetrags und die Auftragserteilung. -
Bestellung aufgebenbeinhaltet immer Zahlung und Bestätigung. -
Rabattgutschein anwendenist optional und erweitert den Kassenprozess. -
Rückerstattung beantragenist eine optionale Erweiterung der Stornierung. -
Das Zahlungs-Gateway übernimmt die Zahlungsabwicklung.
-
Der E-Mail-Service sendet Bestellbestätigungen.
-
Der Administrator verwaltet Produkte und erstellt Berichte.
17. Häufige Fehler
Umkehren von einschließen
Falsch:
ValidateCustomer ..> Checkout : <<einschließen>>
Richtig:
Checkout ..> ValidateCustomer : <<einschließen>>
Der Basis-Use-Case verweist auf das erforderliche eingeschlossene Verhalten.
Umkehrenerweitern
Falsch:
Checkout ..> ApplyDiscount : <<erweitern>>
Richtig:
ApplyDiscount ..> Checkout : <<extend>>
Der optionale erweiternde Anwendungsfall verweist auf den Basis-Anwendungsfall.
Verwendung von include für optionales Verhalten
Wenn ein Verhalten nur unter bestimmten Bedingungen eintritt, verwenden Sie <<extend>>:
ApplyDiscount ..> Checkout : <<extend>>
Wenn es immer eintritt, verwenden Sie <<include>>:
Checkout ..> ValidateCustomer : <<include>>
Externe Akteure innerhalb der Systemgrenze platzieren
Externe Benutzer und Dienste sollten normalerweise außerhalb des Rechtecks liegen:
actor Kunde
rectangle "Einkaufssystem" {
usecase "Kasse" as Kasse
}
Kunde --> Kasse
Übermäßig detaillierte Use Cases erstellen
Ein Use Case sollte ein sinnvolles Benutzerziel beschreiben, wie zum Beispiel:
Vermeiden Sie, jeden kleinen Implementierungsschritt in einen separaten Use Case zu verwandeln, es sei denn, er wird wiederverwendet, ist optional oder für das Modell wichtig.
18. Minimales praktisches Template
Verwenden Sie für ein kleineres Diagramm dieses Template:

@startuml
left to right direction
actor Benutzer
rectangle "Mein System" {
usecase "Hauptbenutzerziel" as Hauptziel
usecase "Erforderliches gemeinsames Verhalten" as GemeinsamesVerhalten
usecase "Optionales Verhalten" as OptionalesVerhalten
}
Benutzer --> Hauptziel
Hauptziel ..> GemeinsamesVerhalten : <<include>>
OptionalesVerhalten ..> Hauptziel : <<extend>>
note right of Hauptziel
Hauptsystemfunktion
end note
@enduml

Dieses Template enthält die wesentliche Notation:
-
Akteur
-
Systemgrenze
-
Anwendungsfälle
-
Assoziation
-
Einschließen
-
Erweitern
-
Hinweis
-
Layout-Richtung
Werkzeuge: Visual Paradigm UML, KI und VPasCode
PlantUML eignet sich ideal zur Erstellung von Diagrammen als Text, aber visuelle Modellierungswerkzeuge können denselben Workflow einfacher überprüfbar, verfeinerbar und teilbar machen. Visual Paradigm bietet UML-Modellierungsfunktionen neben KI-gestützter Modellierung und einem textbasierten VPasCode-Arbeitsbereich. Die Plattform unterstützt Standard-UML-Diagramme, einschließlich Anwendungsfall-, Klassen-, Sequenz-, Aktivitäts-, Komponenten-, Bereitstellungs-, Zustandsautomaten-, Paket- und Objektdiagramme.
Visuelle UML-Modellierung mit Visual Paradigm
Visual Paradigm kann verwendet werden, wenn Sie ein Anwendungsfalldiagramm visuell erstellen möchten, anstatt alle Syntax manuell zu schreiben. Ein typischer Arbeitsablauf ist:
-
Erstellen Sie ein UML-Projekt.
-
Fügen Sie ein Anwendungsfalldiagramm hinzu.
-
Platzieren Sie Akteure und Anwendungsfälle auf der Zeichenfläche.
-
Zeichnen Sie die Systemgrenze.
-
Verbinden Sie Akteure mit Anwendungsfällen.
-
Fügen Sie hinzu
Einschließen,Erweitern, und Verallgemeinerungsbeziehungen. -
Fügen Sie Hinweise und Einschränkungen hinzu.
-
Ordnen Sie das fertige Diagramm an und exportieren Sie es.
Visuelle Modellierung ist besonders nützlich, wenn Interessengruppen das Diagramm interaktiv überprüfen müssen. Teammitglieder können die Symbole prüfen, spezifische Elemente diskutieren und Diagramme gemeinsam annotieren.
Ein manuell erstelltes Anwendungsfalldiagramm kann Folgendes enthalten:
-
Akteure wie
Kunde,Administrator, undZahlungs-Gateway -
Eine Systemgrenze wie
Online-Einkaufssystem -
Anwendungsfälle wie
Kasse,Bestellung aufgeben, undBestellung verfolgen -
<<include>>Beziehungen für zwingend wiederverwendbares Verhalten -
<<extend>>Beziehungen für optionales Verhalten -
Verallgemeinerungsbeziehungen für spezialisierte Akteure oder Anwendungsfälle
Das visuelle Modell sollte dieselben semantischen Regeln beibehalten, die in PlantUML verwendet werden:
Kasse ..> ValidierungZahlung : <<include>>
RabattAnwenden ..> Kasse : <<extend>>
PremiumKunde -|> Kunde
Der wichtige Unterschied besteht darin, dass der Wechsel der Werkzeuge die UML-Bedeutung nicht ändert. Ob das Diagramm von Hand erstellt, von einer KI generiert oder in PlantUML geschrieben wird, die Richtung der Beziehung muss korrekt bleiben.
KI-gestütztes Modellieren
Die KI-Funktionen von Visual Paradigm können dabei helfen, Anforderungen in natürlicher Sprache in Modellelemente und Diagramme zu verwandeln. Die Plattform beschreibt ihre KI-Funktionen als in der Lage, Anforderungen in Diagramme umzuwandeln und Software-Entwicklungsartefakte aus Textbeschreibungen zu generieren.
Beispielsweise könnten Sie die folgende Anforderung angeben:
Erstellen Sie ein Anwendungsfalldiagramm für ein Online-Einkaufssystem.
Akteure:
- Kunde
- Premium-Kunde
- Administrator
- Zahlungs-Gateway
- E-Mail-Service
Der Kunde kann sich registrieren, anmelden, Produkte durchsuchen, Produkte in einen Warenkorb legen,
zur Kasse gehen, Bestellungen verfolgen und Bestellungen stornieren.
Die Kasse muss Kundenvalidierung, Gesamtberechnung, Zahlung und
Bestellbestätigung umfassen.
Das Anwenden eines Rabattgutscheins ist optional und erweitert die Kasse.
Der Premium-Kunde ist eine spezialisierte Art von Kunde.
Ein KI-gestütztes Tool kann diese Beschreibung verwenden, um Folgendes vorzuschlagen:
-
Akteurdefinitionen
-
Namen von Anwendungsfällen
-
Systemgrenzen
-
Assoziationen
-
Eingeschlossene Anwendungsfälle
-
Erweiterte Anwendungsfälle
-
Akteurverallgemeinerung
-
Notizen, die Geschäftsregeln beschreiben
KI ist während des ersten Modellierungsdurchlaufs am nützlichsten. Sie kann schnell einen Entwurf aus Anforderungen erstellen, potenzielle Akteure identifizieren und wiederverwendbares Verhalten vorschlagen. Das resultierende Modell sollte dennoch von einem Entwickler, Analysten oder Domänenexperten überprüft werden.
Empfohlene KI-Überprüfungsmusterliste
Nach der Erstellung eines Diagramms überprüfen Sie Folgendes:
-
Jeder Akteur befindet sich außerhalb der Systemgrenze.
-
Jeder Anwendungsfall beschreibt ein sinnvolles Benutzerziel oder einen Systemdienst.
-
Verpflichtendes wiederverwendbares Verhalten verwendet
<<include>>. -
Optionales oder bedingtes Verhalten verwendet
<<extend>>. -
Der
includePfeil zeigt vom Basis-Anwendungsfall zum eingeschlossenen Anwendungsfall. -
Der
extendPfeil zeigt vom erweiternden Anwendungsfall zum Basis-Anwendungsfall. -
Verallgemeinerungspfeile zeigen auf den allgemeineren Akteur oder Anwendungsfall.
-
Duplizierte oder übermäßig detaillierte Anwendungsfälle wurden entfernt.
-
Namen werden konsistent als Verbphrasen ausgedrückt.
-
Das Diagramm vermittelt den Systemumfang klar.
VPasCode: Modellierung mit Text
VPasCode bietet einen Text-zu-Diagramm-Arbeitsbereich innerhalb des Visual-Paradigm-Ökosystems. Die offizielle Plattform beschreibt es als einen kostenlosen Online-Editor für Text-zu-Diagramm und stellt es auch als Möglichkeit dar, Code in Diagramme umzuwandeln.
Dies macht VPasCode für Benutzer nützlich, die die Präzision und Wiederholbarkeit von Diagramm-as-Code bevorzugen, aber dennoch in einer visuellen Modellierungsumgebung arbeiten möchten.
Ein PlantUML-Anwendungsfall-Diagramm kann wie folgt geschrieben werden:

@startuml
titel Online-Shopping-System
Richtung von links nach rechts
actor Kunde als customer
actor "Premium-Kunde" als premium
actor Administrator als admin
actor "Zahlungs-Gateway" als payment
actor "E-Mail-Dienst" als email
premium -|> customer
rechteck "Online-Shopping-System" {
usecase "Konto registrieren" als Register
usecase "Anmelden" als Login
usecase "Produkte durchsuchen" als Browse
usecase "Zur Kasse gehen" als Checkout
usecase "Bestellung aufgeben" als PlaceOrder
usecase "Bestellung verfolgen" als TrackOrder
usecase "Bestellung stornieren" als CancelOrder
usecase "Kundendetails validieren" als ValidateCustomer
usecase "Bestellsumme berechnen" als CalculateTotal
usecase "Zahlung leisten" als MakePayment
usecase "Bestellbestätigung senden" als SendConfirmation
usecase "Rabattgutschein anwenden" als ApplyDiscount
usecase "Rückerstattung beantragen" als RequestRefund
usecase "Produkte verwalten" als ManageProducts
}
customer --> Register
customer --> Login
customer --> Browse
customer --> Checkout
customer --> TrackOrder
customer --> CancelOrder
premium --> ApplyDiscount
premium --> RequestRefund
admin --> ManageProducts
payment --> MakePayment
email --> SendConfirmation
Checkout ..> ValidateCustomer : <<include>>
Checkout ..> CalculateTotal : <<include>>
Checkout ..> PlaceOrder : <<include>>
PlaceOrder ..> MakePayment : <<include>>
PlaceOrder ..> SendConfirmation : <<include>>
ApplyDiscount ..> Checkout : <<extend>>
RequestRefund ..> CancelOrder : <<extend>>
@enduml

Das gleiche Modell kann auf verschiedene Weise verfeinert werden:
-
Layout-Richtung ändern mit
Richtung von links nach rechts. -
Notizen hinzufügen, um Geschäftsregeln zu erläutern.
-
Anwendungsfälle in Pakete gruppieren.
-
Styling hinzufügen mit
skinparam. -
Aliasnamen ändern, ohne sichtbare Beschriftungen zu verändern.
-
Die Diagrammquelle unter Versionskontrolle halten.
-
Das Diagramm bei jeder Modelländerung neu generieren.
Visuelles Modellieren versus Diagramm-as-Code
| Ansatz | Am besten geeignet für | Hauptvorteil | Hauptbeschränkung |
|---|---|---|---|
| Visual Paradigm UML | Interaktives Modellieren und Stakeholder-Workshops | Direkte Manipulation und visuelle Überprüfung | Änderungen können als Text schwerer zu vergleichen sein |
| KI-gestütztes Modellieren | Entwurf von Modellen aus Anforderungen | Identifiziert schnell Kandidatenelemente | Generierte Beziehungen erfordern eine Validierung |
| VPasCode und PlantUML | Wiederholbares, textbasiertes Modellieren | Einfach zu versionieren, zu überprüfen und neu zu generieren | Erfordert Vertrautheit mit der Syntax |
| Kombinierter Arbeitsablauf | Professionelle Analyse und Entwicklung | Kombiniert Geschwindigkeit, Präzision und Zusammenarbeit | Erfordert die Prüfung der Konsistenz über Darstellungen hinweg |
Ein praktischer kombinierter Arbeitsablauf
Ein produktiver Arbeitsablauf besteht darin, jedes Werkzeug für die Aufgabe einzusetzen, die es am besten bewältigt:
-
Erfassen Sie Anforderungen in natürlicher Sprache.
Beschreiben Sie Benutzer, Ziele, Systemumfang und Geschäftsregeln. -
Verwenden Sie KI, um ein Erstmodell zu erstellen.
Beauftragen Sie die KI, Akteure und Anwendungsfälle zu identifizieren, und lassen Sie sie dann einen ersten Entwurf erstellen. -
Überprüfen Sie den Entwurf in Visual Paradigm UML.
Prüfen Sie, ob das Modell die Domäne genau widerspiegelt und ob das Diagramm leicht verständlich ist. -
Exportieren oder schreiben Sie das Modell in PlantUML um.
Verwenden Sie Aliase, konsistente Namen und explizite Beziehungs-Syntax. -
Pflegen Sie die Quelle in VPasCode oder in einer Versionsverwaltung.
Speichern Sie die.pumlDatei zusammen mit der Projektdokumentation oder dem Quellcode. -
Validieren Sie die UML-Semantik.
Achten Sie besonders aufinclude,extend, sowie die Verallgemeinerungsrichtung. -
Veröffentlichen Sie das endgültige Diagramm.
Exportieren Sie es als Bild oder Dokument für Anforderungen, Architektur, Design-Überprüfungen und Projektdokumentation.
Prompt zur Erstellung eines PlantUML-Anwendungsfalldiagramms
Der folgende Prompt kann mit einem KI-Modellierungsassistenten verwendet werden:

Erstellen Sie ein PlantUML-Anwendungsfalldiagramm für ein Online-Shopping-System.
Verwenden Sie ein Links-nach-Rechts-Layout und platzieren Sie alle System-Anwendungsfälle innerhalb eines
Rechtecks mit dem Namen "Online-Shopping-System".
Akteure:
- Kunde
- Premium-Kunde
- Administrator
- Payment-Gateway
- E-Mail-Dienst
Anwendungsfälle des Kunden:
- Konto registrieren
- Anmelden
- Produkte durchsuchen
- Produkt zum Warenkorb hinzufügen
- Zur Kasse gehen
- Bestellung verfolgen
- Bestellung stornieren
Zur Kasse gehen muss enthalten:
- Kundendetails validieren
- Bestellsumme berechnen
- Bestellung aufgeben
Bestellung aufgeben muss enthalten:
- Zahlung durchführen
- Bestellbestätigung senden
Optionales Verhalten:
- Rabattgutschein anwenden erweitert Zur Kasse gehen
- Rückerstattung anfordern erweitert Bestellung stornieren
Premium-Kunde ist eine Spezialisierung von Kunde.
Verwenden Sie die Standard-PlantUML-Syntax und enthalten Sie:
- Akteur-Aliase
- Anwendungsfall-Aliase
- Systemgrenze
- Assoziationen zwischen Akteuren
- <<include>>-Beziehungen
- <<extend>>-Beziehungen
- Akteur-Verallgemeinerung
- Mindestens eine erläuternde Notiz
Stellen Sie sicher, dass die Pfeile von <<include>> vom Basis-Anwendungsfall zum eingeschlossenen Anwendungsfall zeigen,
und die Pfeile von <<extend>> vom optionalen erweiternden Anwendungsfall zum Basis-Anwendungsfall zeigen.


Wichtigste Erkenntnis
Visual Paradigm UML eignet sich hervorragend für interaktives Modellieren und Überprüfen, KI kann den Übergang von Anforderungen zu einem ersten Entwurf beschleunigen, und VPasCode mit PlantUML bietet einen wiederholbaren textbasierten Workflow. Gemeinsam unterstützen sie den gesamten Modellierungslebenszyklus: Anforderungen beschreiben, einen Entwurf erstellen, das UML validieren, die Quelle verfeinern und ein wartbares Diagramm veröffentlichen.
Der Artikel ist auch in English, Español, فارسی, Français, Bahasa Indonesia, 日本語, Polski, Portuguese, Ру́сский, Việt Nam, 简体中文 and 繁體中文 verfügbar.












