David Schirrmeister 59cb40204f update
2024-05-20 12:31:42 +02:00

201 lines
5.0 KiB
Markdown

# Business Protocol Model and Notation (BPMN)
## [BPMN Modellierungstool](https://demo.bpmn.io/)
## Analytische vs. ausführbare Modellierung
### Analytisch
- Grafische Modellierung von Prozess im IST- und SOLL-Zustand
- Modellierungsmethodik
- Teilweise Simulation von Prozessdaten
### Ausführbar
- Definition von Benutzerinteraktion
- Rollen, Aufgaben, Deadlines, Exceptionhandling, etc.
- Definition von Systeminteraktion
- Definition des Datenflusses
## BPMN-Basiselemente
![image_206.png](image_206.png)
## Aktivitäten
![image_207.png](image_207.png)
> **nicht weiter zergliederte, operative ausführbare Bearbeitungseinheit**
- Definiert Arbeit die im GP ausgeführt wird
- kann manuell oder automatisiert ausgeführt werden
### Aufgabentypen
![image_208.png](image_208.png)
## Teilprozesse
![image_209.png](image_209.png)
![image_210.png](image_210.png)
- Subprozess muss IMMER mit leerem Startereignis beginnen
## Ereignisse
![image_211.png](image_211.png)
- hat keine eigene Dauer
![image_227.png](image_227.png)
### Zeitereignisse
#### Unterbrechendes Zeitereignis
![image_231.png](image_231.png)
#### Nicht-unterbrechendes Zeitereignis
![image_232.png](image_232.png)
### Bedingungsereignis
- Unterbrechung/Fortsetzung des Prozesses bis/wenn Bedingung eingesetzt ist
- ![image_233.png](image_233.png)
### Fehlerereignis
![image_234.png](image_234.png)
## Konnektoren
### Sequenzflüssse
- ![image_212.png](image_212.png)
- Verbinden Aktivitäten untereinander/mit Events/Gateways
### Nachrichtenflüsse
- ![image_213.png](image_213.png)
- Kommunikation über einen Pool heraus
### Assoziation
- ![image_214.png](image_214.png)
- Verbindet Kommentare, Datenobjekte, zusätzliche Teilnehmer, IT-System
## Tokenkonzept
### XOR-Joins
- ![image_215.png](image_215.png)
- kein Warten
- Leitet alle Token durch
### AND-Joins
- ![image_216.png](image_216.png)
- Synchronisiert
- Wartet auf alle Token
### OR-Joins
- ![image_217.png](image_217.png)
- Synchronisiert
- Wartet auf alle aktiven Token
## Gateways
- Verzweigung muss mit gleicher Verzweigung zusammengeführt werden
- Stellt nut Logik dar
- Verrichtet keine Arbeit
- Keine Aktivität
### Datenbasiertes exklusives Gateway
- Es kann nur eine der Verzweigungen ausgewählt werden
- ![image_218.png](image_218.png)
### Paralleles Gateway
- ![image_219.png](image_219.png)
### Datenbasiertes inklusives Gateway
- beschreibt UND-/ODER-Situation
- ![image_220.png](image_220.png)
- Salat / Salat und etwas Ordentliches / etwas Ordentliches
### Ereignisbasiertes exklusives Gateway
- Es wird gewartet bis eines der nachfolgenden Ereignisse eintritt
- Der Pfad wird dann gewählt
- ![image_221.png](image_221.png)
## Pools und Lanes
### Pool
- Einheit mit klar voneinander abgegrenzten organisatorischen Grenzen
- bspw. Unternehmen
#### Pools zuklappen (Blackbox)
- ![image_230.png](image_230.png)
- Vereinbarte Schnittstellen einhalten
### Lane
- repräsentiert verschiedene Prozessteilnehmen
- Abteilungen / Personen / Rollen
#### typische Fehler
##### Swimlanes :(
![image_222.png](image_222.png)
→ ![image_223.png](image_223.png)
## Nachrichtenfluss
### Nachrichtenfluss innerhalb eines Pools
![image_228.png](image_228.png)
### Nachrichtenfluss innerhalb mehrerer Pools
![image_229.png](image_229.png)
## Artefakte
### Textanmerkungen
![image_235.png](image_235.png)
### Gruppierungen
![image_236.png](image_236.png)
## Daten
- Repräsentieren alle möglichen Informationen
### Datenspeicher
![image_237.png](image_237.png)
## Best-Practices
### Strenges Labelling
- Aktivitäten
- Bezeichnung aus Objekt und Verb
- Keine Abkürzungen
- Ereignisse
- Beschriftungen, bei mehreren Start-/Endereignissen
- Gateways
- Eindeutige Namen
- Gibt Entscheidung oder Bedingung an
- Objekt, Verb, "?"
### Klarer Anfang, klares Ende
- Jeder Prozess hat mind. 1 Start- & Endereignis
### Konsistente Flussrichtung
- Prozesslogik sichtbar machen
- gekreuzte Linien vermeiden
#### Happy Path
- Sollte leicht zu erkennen sein
- zuerst zeichnen, dann alternative Abläufe hinzufügen
### Diagramme Vereinfachen
- Anzahl redundanter Aufgaben verringern
- Unterprozesse verwenden, um Aufgaben mit demselben Zweck zu gruppieren
- ![image_238.png](image_238.png)
### Aktivitäten modellieren
- nicht mehrere Instanzen der gleichen Aktivität
- Mehrfachausführung
- als Zuweisungsbedingung in der Dokumentation und den Zuweisungsregeln
- Nur eine Aufgabe in einen Bereich
### Gateways modellieren
![image_239.png](image_239.png)
![image_240.png](image_240.png)
- Falls ereignisbasierter Split → KEIN ereignisbasierter Join
- ![image_241.png](image_241.png)
![image_242.png](image_242.png)
### Konnektoren modellieren
![image_243.png](image_243.png)
### Pools modellieren
- Keine Abläufe über Poolgrenzen hinweg
- ![image_244.png](image_244.png)
- Es muss immer mindestens ein Pool vorhanden sein
- ![image_245.png](image_245.png)
### Lanes modellieren
- Keine Lanes für automatisierte Aufgaben
- ![image_246.png](image_246.png)
- nix in der Mitte von zwei Lanes
- ![image_247.png](image_247.png)