Unified Modeling Language (UML)

Installation

  1. Installiert plantuml:

    $ sudo apt install plantuml
    
    $ brew install plantuml
    
    $ choco install plantuml
    
  2. Installiert sphinxcontrib-plantuml:

    $ python -m pip install sphinxcontrib-plantuml
    
    $ python -m pip install sphinxcontrib-plantuml
    
    C:> python -m pip install sphinxcontrib-plantuml
    
  3. Konfiguriert Sphinx in der conf.py-Datei:

    extensions = [..., "sphinxcontrib.plantuml"]
    
    plantuml = "/PATH/TO/PLANTUML"
    

    Bemerkung

    Auch in Windows werden in der Pfadangabe / angegeben.

Sequenzdiagramm

../../../_images/sequence-diagram.svg
.. uml::

    Browser -> Server: Authentifizierungsanfrage
    Server --> Browser: Authentifizierungsantwort

    Browser -> Server: Eine andere Authentifizierungsanfrage
    Browser <-- Server: Eine andere Authentifizierungsantwort
->

wird verwendet, um eine Nachricht zwischen zwei Akteuren zu zeichnen. Die Akteure müssen nicht explizit deklariert werden.

-->

wird verwendet, um eine gepunktete Linie zu zeichnen.

<- und <--

verändert die Zeichnung nicht, kann aber die Lesbarkeit erhöhen.

Anwendungsfall-Diagramm

../../../_images/use-case-diagram.svg
.. uml::

   :Nutzende Person: --> (Verwendung)
   "Gruppe von\nAdministratoren" as Admin
   "Verwenden der\nAnwendung" as (Verwendung)
   Admin --> (Administrieren\nder Anwendung)

Anwendungsfälle werden von runden Klammern () umschlossen und ähneln einem Oval.

Alternativ kann auch das Schlüsselwort usecase verwendet werden, um einen Anwendungsfall zu definieren. Darüber hinaus ist es möglich, mit dem Schlüsselwort as einen Alias zu definieren. Dieser Alias kann dann bei der Definition von Beziehungen verwendet werden.

Mit \n könnt ihr Zeilenumbrüche in den Namen der Anwendungsfälle einfügen.

Aktivitätsdiagramm

(*)

Start- und Endknoten eines Aktivitätsdiagramms.

(*top)

In einigen Fällen kann dies verwendet werden um den Startpunkt an den Anfang eines Diagramms zu verschieben.

-->

definiert eine Aktivität

-down->

Pfeil nach unten (Standardwert)

-right-> or ->

Pfeil nach rechts

-left->

Pfeil nach links

-up->

Pfeil nach oben

if, then, else

Schlüsselworte für die Definition von Verzweigungen.

Beispiel:

.. uml::

    (*) --> "Initialisierung"
    if "ein Test" then
    -->[wahr] "Eine Aktivität"
    --> "Eine andere Aktivität"
    -right-> (*)
    else
    ->[falsch] "Etwas anderes"
    -->[Ende des Prozesses] (*)
    endif
../../../_images/activity-diagram.svg
fork, fork again und end fork oder end merge

Schlüsselworte für die parallele Verarbeitung.

Beispiel:

.. uml::

   start
   fork
     :Aktion 1;
   fork again
     :Aktion 2;
   end fork
   stop
../../../_images/parallel.svg