Business Process Management und Workflow

Download Report

Transcript Business Process Management und Workflow

Business Process Management
und
Workflow-Technologie
Workflow Frameworks
jBPM & /YAWL
Tino Liebeskind
Friedrich-Schiller-Universität Jena
Agenda




Workflow Management & Frameworks
YAWL
jBPM
Demonstration
Friedrich-Schiller-Universität Jena
Tino Liebeskind
2 / 32
Workflow Management

Grundziel: weitgehende Automatisierung von
Prozessen unter Einbindung aller notwendigen
Ressourcen
Workflow Management Systeme
unabdingbar
Friedrich-Schiller-Universität Jena
Tino Liebeskind
3 / 32
Frameworks




Framework = Programmiergerüst
Verwendung von domänenspezifischen
Entwurfsmustern
Implementierung am Framework registrieren
Framework steuert Kontrollfluss der Anwendung
und deren Schnittstellen
Friedrich-Schiller-Universität Jena
Tino Liebeskind
4 / 32
Workflow-Frameworks



Entwicklung WMS sehr kundenspezifisch,
komplex und umfangreich
Abbildung der mit Hilfe geschäftsprozessspezifischer Entwurfsmuster
Workflowframeworks:
• YAWL
• jBPM
• Apache ODE
• ActiveBPEL
Friedrich-Schiller-Universität Jena
Tino Liebeskind
5 / 32
Agenda




Workflow Management Systeme & Frameworks
YAWL
jBPM
Demonstration
Friedrich-Schiller-Universität Jena
Tino Liebeskind
6 / 32
YAWL - Ursprung

Prof. Will van der Aalst
• Department of Technology Management
University of Technology in Eindhoven
• formalen Grundlagen Workflowpattern

Prof. Arthur ter Hofstede
• Center of IT an der Queensland University of
Technologie in Brisbane
• Implementierung von YAWL
Friedrich-Schiller-Universität Jena
Tino Liebeskind
7 / 32
YAWL – Lizenz und Verbreitung


YAWL Foundation:
http://sourceforge.net/projects/yawl
http://yawlfoundation.org
Open Source (LGPL)
Friedrich-Schiller-Universität Jena
Tino Liebeskind
8 / 32
YAWL - Grundlagen





Sprache zur Spezifikation von Kontrollflüssen in
Workflow Systeme
Basiert auf der Analyse von über 30 Workflow
Sprachen und Systeme
Basiert auf Petri-Netzen
Unterstützt alle bekannten Workflow Pattern
Ziel: YAWL als Intermediate Language für
andere Workflow Systeme
Friedrich-Schiller-Universität Jena
Tino Liebeskind
9 / 32
YAWL - Funktionsumfang

Unterstützt komplexe Ressourcenzuweisung
Unterstützt Validierung des Workflow Modells
XML- basierte Daten-/ Schnittstellendefinition
XML- basierte Überwachung und Steuerung
automatisierte Formulargenerierung

Hauptbestandteile:




Friedrich-Schiller-Universität Jena
- Ausführungsengine
- Graphischer Editor
- Worklist Handler
Tino Liebeskind
10 / 32
YAWL – Symbole
Friedrich-Schiller-Universität Jena
Workflow
Specification
besteht aus einem Set
von Process Definitions
Process
Definition
besteht aus Tasks und
Conditions
Condition
Repräsentiert Status
eines Prozesses
Atomic Task
Einzelner Arbeitsschritt
Composite Task
Verweis auf weitere
Prozessdefinition
Taskverknüpfung
Mit Join & Split (jeweils
and, or, xor)
Remove Tokens
löscht Instanzen von
ausgeführten Tasks
Multiple
Instanzen
Von Prozessen möglich
Tino Liebeskind
11 / 32
YAWL - Datenfluss




Datentypen (String, double, boolean, date …)
Eigene Datentypen per XML Schema
Net- (global) und Task- (lokal) Variablen
Variablentypen:
• Input & Output,
• Only Input/ Output
• Local (selbst initialisierbar)
Friedrich-Schiller-Universität Jena
Tino Liebeskind
12 / 32
YAWL - Architektur
Friedrich-Schiller-Universität Jena
Tino Liebeskind
13 / 32
YAWL - Implementierung
Friedrich-Schiller-Universität Jena
Tino Liebeskind
14 / 32
YAWL - Installation





YAWL4Enterprise 2.0 RC1 oder
YAWL4Study 2.0 RC1
JRE bis 1.5
PostgreSQL oder andere DBMS zur Datenhaltung
Apache Tomcat bis 5.5.25
Friedrich-Schiller-Universität Jena
Tino Liebeskind
15 / 32
YAWL - Editor
Friedrich-Schiller-Universität Jena
Tino Liebeskind
16 / 32
YAWL - Manager
Friedrich-Schiller-Universität Jena
Tino Liebeskind
17 / 32
YAWL - Resümee

Vorteile
+ sehr gut dokumentiert
+ benutzerfreundlich (Editor und Browser)
+ leistungsfähig, allgemein (XML)

Nachteile
- operationale Perspektive
- Datenperspektive
- nicht komplett implementiert
Friedrich-Schiller-Universität Jena
Tino Liebeskind
18 / 32
Agenda




Workflow Management Systeme & Frameworks
YAWL
jBPM
Demonstration
Friedrich-Schiller-Universität Jena
Tino Liebeskind
19 / 32
jBPM - Ursprung





Architekt Tom Baeyens
Ziel: Eine einfach zu integrierende Zustandsmaschine und die Abdeckung
aller komplexer Workflowpattern
jBPM 1.0 in 2003
jBPM Projektstart 2002
Aktuell jBPM 3.2.6 (und 4 RC1)
Friedrich-Schiller-Universität Jena
Tino Liebeskind
20 / 32
jBPM – Lizenz und Verbreitung


jBPM ist Bestandteil des Open Source
Applikationsservers JBOSS von JBOSS Inc.
Open Source (LGPL)
Friedrich-Schiller-Universität Jena
Tino Liebeskind
21 / 32
jBPM - Grundlagen






basiert auf den Workflowpattern von Prof. van der
Aalst und Nutzerfeedback
konzentriert sich auf Orchestrierung von fachlichen
Diensten zu Geschäftsprozessen
verwendet kein BPEL sondern eigene Sprache jPDL
Prozessdarstellung als gerichteter Graph in GPD
Beschreibung durch Knoten und Transitionen in XML
Verarbeitung von Java Klassen an den Knoten
Friedrich-Schiller-Universität Jena
Tino Liebeskind
22 / 32
jBPM - Funktionsumfang





Interne Prozessrepräsentation mit POJO-Modell
DB Kommunikation über Hibernate
Lauffähig mit oder ohne Application-Server
Eigener Java Code als ActionHandler-Klassen in
Notes und Tasknotes implementierbar
BPS optional als Simulationstool
Friedrich-Schiller-Universität Jena
Tino Liebeskind
23 / 32
jBPM -Sprache
Friedrich-Schiller-Universität Jena
Note
automatische Ausführung in
jBPM Runtime
Task Note
Webmaske für
Benutzerinteraktion
Folk
Prozessparallelisierung
Join
Prozesssynchronisierung
Decision
Automatische Entscheidungen
Start-/EndState
Start- und Endzustand
Wait-State
Wartezustand
Eigene
Notetypen
Mit eigenem Verhalten
möglich
Tino Liebeskind
24 / 32
jBPM - Architektur
Friedrich-Schiller-Universität Jena
Tino Liebeskind
25 / 32
jBPM - Implementierung
Friedrich-Schiller-Universität Jena
Tino Liebeskind
26 / 32
jBPM - Designer
Friedrich-Schiller-Universität Jena
Tino Liebeskind
27 / 32
jBPM - Installation




Eclipse 3.4 & Java JDK 1.5 für jBPM 3.6.2
Installation über Help -> Software Updates
Erstellen eines neuen jBPM Process Projektes
Alles weitere Java und XML
Friedrich-Schiller-Universität Jena
Tino Liebeskind
28 / 32
jBPM - Resümee

Vorteile
+
+
+
+
+

Softwarestrukturierung um einfachen Prozessgraph
jPDL als Beschreibungssprache relativ leicht lesbar
Geschäftslogik in Java Klassen
Verwendung von Hibernate für DB Anbindung
Framework flexibel integrierbar und skalierbar
Nachteile
- jBPM kein Standard
- Keine vorkonfigurierten Adapter zum Aufruf externer
Systeme (obwohl essentiell für BPM)
- Wenig Nutzerunterstützung
Friedrich-Schiller-Universität Jena
Tino Liebeskind
29 / 32
Agenda




Workflow Management Systeme & Frameworks
YAWL
jBPM
Demonstration
Friedrich-Schiller-Universität Jena
Tino Liebeskind
30 / 32
Demonstration


YAWL
• GUI
• Excecution
jBPM
• GUI
Friedrich-Schiller-Universität Jena
Tino Liebeskind
31 / 32
Literatur







Design and implementation of the YAWL system (2004)
How to Manipulate Data in YAWL (2005)
Getting Started with YAWL (2007)
YAWL Editor 2.0 User Manual (2008)
JBOSS jBPM WHITE PAPER (2004)
jBPM jPDL User Guide
jBPM Tools Reference Guide (2007)
Friedrich-Schiller-Universität Jena
Tino Liebeskind
32 / 32