BPMN Best Practices: Unterschied zwischen den Versionen

Aus www.bpmb.de
Wechseln zu: Navigation, Suche
(Pools/Lanes: Rollen vs. Systeme)
Zeile 1: Zeile 1:
 
 
== Ablauf des Workshops ==
 
== Ablauf des Workshops ==
  
Zeile 17: Zeile 16:
  
 
Kernfrage: Wie modelliert man verschiedene Eintrittspunkte in einen Prozess?  
 
Kernfrage: Wie modelliert man verschiedene Eintrittspunkte in einen Prozess?  
 +
 
Alternative 1: Ein Startereignis, danach ein Event-based Gateway
 
Alternative 1: Ein Startereignis, danach ein Event-based Gateway
 +
 
Alternative 2: Kein 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)
 
Alternative 3: Mehrere Startereignisse (diese Alternative wird von der Mehrheit favorisiert)
  
Zeile 38: Zeile 40:
  
 
Option 1: Verschiedene Pools. Ein Pool, der alle menschlichen Aktivitäten enthält. Interaktion mit Systemen geschieht über Nachrichtenfluss.
 
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 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 3: Kombinationen von Rolle/System in Lanes umsetzen.
 +
 
Option 4: Darstellung von Systemen über Datenobjekte mit speziellen Symbolen.
 
Option 4: Darstellung von Systemen über Datenobjekte mit speziellen Symbolen.
  
Zeile 52: Zeile 57:
  
 
Vorschlag von Jakob:
 
Vorschlag von Jakob:
 +
 
- Pool = Prozessverantwortung. Label ergibt sich aus Prozessverantwortlichem und Prozessname.
 
- Pool = Prozessverantwortung. Label ergibt sich aus Prozessverantwortlichem und Prozessname.
 +
 
- Lane = Teilprozessverantwortung.
 
- Lane = Teilprozessverantwortung.
 +
 +
[[Media:JF_3._BPM-Workshop_-_Input.pdf|Folien von Jakob Freund]], auch als [http://www.slideshare.net/camunda/3-bpm-workshop-input-jf Slidecast] erhältlich.
 +
  
 
== Zerschneiden von komplexen Diagrammen ==
 
== 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:
 
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 Lanes
 +
 
- Zerschneiden anhand von Zustandübergängen von Datenobjekten
 
- Zerschneiden anhand von Zustandübergängen von Datenobjekten

Version vom 23. März 2009, 21:04 Uhr

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:

Modell von Frank Puhlmann

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.

Folien von Thomas Niebisch

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