BPMN Best Practices: Unterschied zwischen den Versionen
(→Mehrere Startereignisse) |
|||
Zeile 26: | Zeile 26: | ||
[[Media:FP_Mehrfacher_Nachrichtenempfang.png|Modell von Frank Puhlmann]] | [[Media:FP_Mehrfacher_Nachrichtenempfang.png|Modell von Frank Puhlmann]] | ||
+ | |||
+ | [[Media:RM_Berlin.pdf|Modelle von Rüdiger Molle]] | ||
== Mehrere eingehende Nachrichtenflüsse für ein Nachrichtenereignis == | == Mehrere eingehende Nachrichtenflüsse für ein Nachrichtenereignis == |
Aktuelle Version vom 30. März 2009, 23:57 Uhr
Inhaltsverzeichnis
- 1 Ablauf des Workshops
- 2 Mehrere Startereignisse
- 3 Mehrere eingehende Nachrichtenflüsse für ein Nachrichtenereignis
- 4 Delegation
- 5 Pools/Lanes: Rollen vs. Systeme
- 6 Mehrere Rollen führen einen Task aus
- 7 Wann verwende ich Pools und wann Lanes?
- 8 Zerschneiden von komplexen Diagrammen
- 9 Wiederverwenden von Nachrichtenmustern
Ablauf des Workshops
1. Begrüßung durch Projektron
2. Vorstellung BPMB durch Jan Mendling
3. Vorstellungsrunde aller Teilnehmer
4. Einführung "Warum Best Practices?" durch Jan Mendling
5. Hauptteil: Diskussion konkreter Beispiele
6. Vorschau auf die nächsten Termine
Mehrere Startereignisse
Kernfrage: Wie modelliert man verschiedene Eintrittspunkte in einen Prozess?
Alternative 1: Ein Startereignis, danach ein Event-based Gateway
Alternative 2: Kein Startereignis, danach ein Event-based Gateway
Alternative 3: Mehrere Startereignisse (diese Alternative wird von der Mehrheit favorisiert)
Anlagen:
Mehrere eingehende Nachrichtenflüsse für ein Nachrichtenereignis
Verboten laut Spezifikation
Delegation
Idee: Task wird zu einer Lane zugeordnet (dort, wo der Task eigentlich ausgeführt werden soll). Die Möglichkeit der Delegation kann nicht explizit dargestellt werden.
Pools/Lanes: Rollen vs. Systeme
Wie stellt man dar, dass ein Task von einer Rolle und mit Hilfe eines Systems dargestellt wird (wie es in EPKs möglich ist). Dies kann nicht so einfach dargestellt werden.
Option 1: Verschiedene Pools. Ein Pool, der alle menschlichen Aktivitäten enthält. Interaktion mit Systemen geschieht über Nachrichtenfluss.
Option 2: Verschiedene Lanes. Pro Rolle und System eine Lane. Hier kann der ursprüngliche Use Case allerdings nicht umgesetzt werden.
Option 3: Kombinationen von Rolle/System in Lanes umsetzen.
Option 4: Darstellung von Systemen über Datenobjekte mit speziellen Symbolen.
Mehrere Rollen führen einen Task aus
Beispiel: Meeting
Option 1: Task duplizieren in verschiedenen Pools/Lanes und dann Verbindung durch Gruppierung. Achtung: Gruppierungen dürfen NICHT Start oder Ziel von Sequenzflüssen sein!
Wann verwende ich Pools und wann Lanes?
Vorschlag von Jakob:
- Pool = Prozessverantwortung. Label ergibt sich aus Prozessverantwortlichem und Prozessname.
- Lane = Teilprozessverantwortung.
Folien von Jakob Freund, auch als Slidecast erhältlich.
Zerschneiden von komplexen Diagrammen
Komplexe Modelle müssen für bessere Wartbarkeit / bessere Übersichtlichkeit zerschnitten werden / Abstraktionsebenen müssen eingeführt werden. Hier müssen Kriterien für das Zerschneiden gewählt werden. Beispiele:
- Zerschneiden anhand von Lanes
- Zerschneiden anhand von Zustandübergängen von Datenobjekten
Wiederverwenden von Nachrichtenmustern
Wie können immer wiederkehrende Nachrichtenmuster in BPMN wiederverwendet werden. Hier eignen sich Ansätze aus dem UMM von UNCEFACT.