de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

PlantUML-Leitfaden für Anwendungsfalldiagramme

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.

Diagramm, das ein PlantUML-Use-Case-Modell mit den Akteuren Kunde und Administrator zeigt, die mit Systemfunktionen wie Kasse und Bestellung verfolgen interagieren.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.

Kommentare beginnen mit einem Apostroph:

Sie können auch Mehrzeilenkommentare verwenden:

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.

Sie können dann auf die Aliase verweisen:

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:

Sie können auch einen Schauspieler im einfachen Rechteck-Stil verwenden:

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

Die sichtbare Beschriftung ist Kreditkartenzahlung verarbeiten, während ProcessPayment wird in Beziehungen verwendet.

Mehrzeilige Verwendungsfallnamen

Sie können eine Zeilenumbruch mit n:

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.

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:

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:

  1. Die Kasse validiert stets die Kundendetails.

  2. Die Kasse berechnet stets die Bestellsumme.

  3. 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:

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.

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

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

Standalone-Notiz mit Alias

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.

Vollständiges VPasCode-PlantUML-Beispiel, das ein Use-Case-Diagramm für ein Online-Shopping-System mit Akteuren, Beziehungen und Hinweisen zeigt.

@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

PlantUML-Use-Case-Diagramm für ein Online-Shopping-System, das die Akteure Kunde, Administrator und Payment-Gateway zeigt, die mit Systemfunktionen interagieren.

16. Lesen des vollständigen Beispiels

Das Diagramm vermittelt Folgendes:

  • Kunde kann Produkte durchsuchen, Produkte in einen Warenkorb legen und zur Kasse gehen.

  • Premium-Kunde ist eine spezialisierte Form von Kunde.

  • Zur Kasse gehen beinhaltet immer die Validierung des Kunden, die Berechnung des Gesamtbetrags und die Auftragserteilung.

  • Bestellung aufgeben beinhaltet immer Zahlung und Bestätigung.

  • Rabattgutschein anwenden ist optional und erweitert den Kassenprozess.

  • Rückerstattung beantragen ist 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:

Richtig:

Der Basis-Use-Case verweist auf das erforderliche eingeschlossene Verhalten.

Umkehrenerweitern

Falsch:

Richtig:

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>>:

Wenn es immer eintritt, verwenden Sie <<include>>:

Externe Akteure innerhalb der Systemgrenze platzieren

Externe Benutzer und Dienste sollten normalerweise außerhalb des Rechtecks liegen:

Ü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:

VPasCode-Schnittstelle, die PlantUML-Code zeigt, der ein minimales Use-Case-Diagramm mit Akteuren, Systemgrenze und Beziehungen generiert.

@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

Minimale PlantUML-Use-Case-Vorlage, die einen Benutzer, eine Systemgrenze und Beziehungen wie erweitern, einschließen und Hinweise zeigt.

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:

  1. Erstellen Sie ein UML-Projekt.

  2. Fügen Sie ein Anwendungsfalldiagramm hinzu.

  3. Platzieren Sie Akteure und Anwendungsfälle auf der Zeichenfläche.

  4. Zeichnen Sie die Systemgrenze.

  5. Verbinden Sie Akteure mit Anwendungsfällen.

  6. Fügen Sie hinzuEinschließen, Erweitern, und Verallgemeinerungsbeziehungen.

  7. Fügen Sie Hinweise und Einschränkungen hinzu.

  8. 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 wieKunde, Administrator, undZahlungs-Gateway

  • Eine Systemgrenze wie Online-Einkaufssystem

  • Anwendungsfälle wie Kasse, Bestellung aufgeben, und Bestellung 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 include Pfeil zeigt vom Basis-Anwendungsfall zum eingeschlossenen Anwendungsfall.

  • Der extend Pfeil 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:

VPasCode-Schnittstelle, die einen PlantUML-Texteditor neben einem generierten Use-Case-Diagramm für ein Online-Shopping-System anzeigt.

@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

PlantUML-Use-Case-Diagramm für ein Online-Shopping-System, das Akteure wie Kunde, Administrator und Payment-Gateway zeigt, die mit Systemfunktionen interagieren.

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:

  1. Erfassen Sie Anforderungen in natürlicher Sprache.
    Beschreiben Sie Benutzer, Ziele, Systemumfang und Geschäftsregeln.

  2. 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.

  3. Ü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.

  4. Exportieren oder schreiben Sie das Modell in PlantUML um.
    Verwenden Sie Aliase, konsistente Namen und explizite Beziehungs-Syntax.

  5. Pflegen Sie die Quelle in VPasCode oder in einer Versionsverwaltung.
    Speichern Sie die .puml Datei zusammen mit der Projektdokumentation oder dem Quellcode.

  6. Validieren Sie die UML-Semantik.
    Achten Sie besonders auf include, extend, sowie die Verallgemeinerungsrichtung.

  7. 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:

Chatbot-Schnittstelle, die ein generiertes PlantUML-Use-Case-Diagramm für ein Online-Shopping-System mit den Akteuren Kunde und Administrator anzeigt.

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.

VPasCode-Schnittstelle, die PlantUML-Code für ein Use-Case-Diagramm eines Online-Shopping-Systems neben seiner visuellen Darstellung anzeigt.

PlantUML-Use-Case-Diagramm für ein Online-Shopping-System, das die Akteure Kunde, Administrator und Premium-Kunde zeigt, die mit Systemfunktionen wie Kasse und Bestellung aufgeben interagieren.

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.