View
2
Download
0
Category
Preview:
Citation preview
Kapitel 12: Workflow Management – 1Objektverwaltung höherer Ordnung (OHO) – SS 2001
Kap. 12 Workflow Management in ERP-Systemen
12.1 Workflow Management: Konzepte12.2 Einbindung von Workflow Management-
Funktionalität in ERP-Systeme12.3 SAP Business Workflows
Kapitel 12: Workflow Management – 2Objektverwaltung höherer Ordnung (OHO) – SS 2001
12.1 Workflow Management: Konzepte
Im Zentrum des Workflow-Managements steht der Begriff des Geschäftsprozesses:
� Ein Geschäftsprozess ist eine Folge von Aktivitäten, für die ein oder mehrere Inputs benötigt werden und die für den Kunden ein Ergebnis von Wert liefert. [VossenBecker1996] • Wesentliches Merkmal eines Geschäftsprozesses ist, dass es sich um
einen wiederkehrenden und klar definierten Ablauf handelt� Geschäftsprozesse basieren in der Regel auf einer Vielzahl von
Programmen bzw. Anwendungen• Implementieren Prozess-Aktivitäten und stellen dafür jeweils
spezialisierte Dienste zur Verfügung• Aber: diese Programme/Anwendungen sind zumeist nicht für die
Zusammenarbeit geschaffen➜ Workflow-Management-Systeme fassen einzelne Dienste zu
kohärentem Ganzen zusammen und automatisieren/kontrollieren deren Ausführung (= automatisierter Geschäftsprozess)
Kapitel 12: Workflow Management – 3Objektverwaltung höherer Ordnung (OHO) – SS 2001
Workflow und Workflow-Management-System
� Definition Workflow [Quelle: WFMC]„The computerized facilitation or automation of a business process, in whole or part.“• Die Anfänge des Workflow Managements liegen im Bereich des
Dokumentenflusses (document-oriented workflows)• Neuere Entwicklungen gehen jedoch hin zu komplexen Abläufen über
beliebigen Anwendungen (process-oriented workflows)
� Definition Workflow-Management-System (WFMS) [Quelle: WFMC]„A system that completely defines, manages, and executes workflows through the execution of software whose order of execution is driven by a computer representation of the workflowlogic.“• Build-Time: Prozess-Definition und –Modellierung• Run-Time: Kontrolle und Verwaltung von Prozess-Ausführungen
(gemäss den vorgegebenen Ablaufregeln), sowieInteraktionen mit IT-Anwendungen und Benutzern
Kapitel 12: Workflow Management – 4Objektverwaltung höherer Ordnung (OHO) – SS 2001
Workflow Management Coalition (WfMC)
� Non-profit-Organisation mit dem Ziel der Standardisierung von Workflow Management Systemen• Gegründet in 1993• Über 280 Mitglieder (in der Regel Hersteller und Anwender von
Workflow Management Systemen sowie Forschungsgruppen)• „The Coalition’s mission is to promote and develop the use of
workflow through the establishment of standards for software terminology, interoperability and connectivity between workflow products.“
� Wichtigste Errungenschaften• Vereinheitlichung der Terminologie im Bereich des Workflow
Management• Reference Model, also eine Referenz-Architektur welche die
– Komponenten eines Workflow Management-Systems sowie die– Schnittstellen zwischen diesen Komponenten spezifiziert
Kapitel 12: Workflow Management – 5Objektverwaltung höherer Ordnung (OHO) – SS 2001
Architektur von Workflow-Management- Systemen …
Workflow
ClientWorkflow
Client
Workflow EngineProzess-Modelle
Prozess-Definition
Prozess-Monitoring
Kapitel 12: Workflow Management – 6Objektverwaltung höherer Ordnung (OHO) – SS 2001
… Architektur von Workflow-Management- Systemen
� Workflow-Management-Systeme können selbst als dreistufige Client/Server-Systeme angesehen werden• Clients:
– Prozess-Definition– Monitoring (Zustandsüberwachung)– Verwaltung (Starten von Prozessen, etc.)
• Anwendungsfunktionalität: – Prozesse sind verteilte Anwendungen
� Basiskomponenten dieser verteilten Anwendungen sind Dienste der eingebetteten Anwendungen (evtl. selbst wieder Workflow-Prozesse) in eigenständigen, unabhängig entwickelten Teilsystemen
� Diese Dienste können ein breites Spektrum abdecken: von einfachen Formularen bis hin zum komplexen Anwendungsdiensten
• Datenhaltung:– Prozessmodelle (Build-Time) und
– Prozesszustände (Run-Time)
Kapitel 12: Workflow Management – 7Objektverwaltung höherer Ordnung (OHO) – SS 2001
Einbindung von Anwendungen
Anwendung A
GUI
Wo
rkfl
ow
Man
agem
ent
Sys
tem
(W
FM
S)
Ein
geb
un
den
eA
nw
end
un
gen
AB
C
D
Workflow Engine
Automatischer Aufruf von Anwen-dungen (durch Workflow Engine)
Manueller Aufruf von Anwendungen (durch Benutzer, Benachrichtigung via Worklist)
ApplicationAgent
Anwendung B
GUI
Anwendung C
GUI
Anwendung D
GUI
Kapitel 12: Workflow Management – 8Objektverwaltung höherer Ordnung (OHO) – SS 2001
Workflow-Komponenten
Die Grundlage von Workflows bilden Aktivitäten, die eigentlichenProzess-Schritte. Zusätzlich sind die „drei R´s“ wichtig:� Route
• Kontrollfluss– Festgelegte Ausführungsreihenfolge der einzelnen Aktivitäten
• Datenfluss– Datencontainer (Ein- und Ausgabeparameter)
� Roles (Rollen)• Menge von Personen mit ähnlichen Aufgabenbereichen/
Zuständigkeiten� Rules (Regeln)
• Bedingungen für die Ausführung von Aktivitäten• Fehlerbehandlung• Bestimmung von Bearbeitern für konkrete Prozess-Schritte
(Rollenauflösung)
Kapitel 12: Workflow Management – 9Objektverwaltung höherer Ordnung (OHO) – SS 2001
Anforderungen an WFMS
� Neben der Kernfunktionalität (Ablaufsteuerung) sind folgende Aspekte wichtig:
� Integration (beliebiger) externer Anwendungen
� Ausführungsgarantien für Prozesse• Fehlertoleranz• Synchronisation• Persistenz• … wir finden hier also auch wieder die Idee der Objektverwaltung
höherer Ordnung, diesmal angewandt auf Prozesse
� Geeignete (grafische) Benutzerunterstützung• Prozess-Modellierung• Monitoring von Prozessen (auch über Systemgrenzen hinweg)
Kapitel 12: Workflow Management – 10Objektverwaltung höherer Ordnung (OHO) – SS 2001
Anwendungsintegration
� Möglichkeit des Aufrufs externer Programme� Unterscheidung (gemäss WFMC)
• Workflow-enabled applications– Unterstützen bereits die Schnittstellen, die für die Interaktion
mit einer Workflow Engine spezifiziert sind (durch WFMC)• Andere, nicht „workflow-enabled“ Applikationen
– Anbindung durch Application Agent– Unterstützt zur Workflow Engine die
standardisierten Schnittstellen …– … und verwendet die spezifischen
APIs der Anwendung
Applikation
WorkflowEngine
Application Agent
Kapitel 12: Workflow Management – 11Objektverwaltung höherer Ordnung (OHO) – SS 2001
Transaktionsgarantien …
� Transaktionale Ausführungsgarantien sind auch für Workflows unerlässlich • Workflows als langdauernde Transaktionen• Aber: ACID-Eigenschaften sind zu streng!
� Atomarität: • Im klassischen Fall: „Alles-oder-Nichts“• Workflows: Fehler (Systemfehler oder Fehler einzelner Aktivitäten)
dürfen nicht gleich zum Rücksetzen des kompletten Prozesses führen
– Systemfehler: � „Forward-Recovery“ anstelle von Abbruch� Voraussetzung: Prozesszustand wird persistent verwaltet
– Fehler einzelner Aktivitäten:� Flexible Fehlerbehandlung, z.B. durch Alternativen bzw.
Wiederholung (bei Kommunikationsfehlern)
Kapitel 12: Workflow Management – 12Objektverwaltung höherer Ordnung (OHO) – SS 2001
… Transaktionsgarantien
� Isolation:• Wie im klassischen Fall muss garantiert werden, dass der Zugriff auf
gemeinsame Ressourcen (via Applikationen) durch verschiedene Workflow-Prozesse koordiniert wird
• Aber: ein Workflow ist nicht gleichzusetzen mit einer verteilten Transaktion, sollte also nicht mit 2PC-Protokoll behandelt werden
� Persistenz:• Nicht nur die Daten, die in den einzelnen Schritten produziert/ verändert
werden, müssen persistent verwaltet werden, sondern auch:– Prozesszustände (Laufzeitinformationen): Protokollierung der
Prozessausführung, um Forward Recovery zu ermöglichen– Prozess-Schemata
➜ Workflows verlangen erweiterte Transaktionsmodelle („advanced transaction models“)• Durch die steigende Beliebtheit von Workflow-Prozessen zur Entwicklung
verteilter Anwendungen ist die Kombination von Workflows und Transaktionen ein aktuelles Thema
• Vorlesung „Transaktionsverwaltung in modernen Informationssystemen“ im Wintersemester 2001
Kapitel 12: Workflow Management – 13Objektverwaltung höherer Ordnung (OHO) – SS 2001
12.2 Workflow Management und ERP-Systeme
� Aufgaben von Workflow Management in bzw. oberhalb von ERP-Systemen• Zusammenfassen von betriebswirtschaftlichen Funktionen bzw.
Transaktionen innerhalb eines ERP-Systems
• Integration externer Anwendungen zur Bearbeitung von Prozess-Schritten, die ausserhalb des ERP-Systems erfolgen
• Möglichkeit zur Einbindung von ERP-Funktionalität in externe Workflow Management-Systeme
Kapitel 12: Workflow Management – 14Objektverwaltung höherer Ordnung (OHO) – SS 2001
Workflow-Unterstützung in ERP-Systemen
� Alle in Kapitel 8 vorgestellten ERP-Systeme unterstützen grundlegendeWorkflow-Funktionalität• Durch Integration bestehender Workflow Management Systeme
(z.B. PeopleSoft)• Mit Hilfe einer eigenen, integrierten Workflow Engine, z.B.
– Oracle Applications 11 (Oracle Workflow)– SAP R/3 (SAP Business Workflow)
� Beispiel: Oracle Workflow• Workflow Management-Funktionalität komplett innerhalb der DB
– Prozessmodell und Zustand aktiver Prozesse in DB-Tabellen– Stored Procedures für Prozessausführung (Navigation)– Aktivitäten sind zumeist PL/SQL-Prozeduren der Oracle Applications bzw.
benutzerdefinierte Prozeduren, aber auch externe Programme• Transaktionsgarantien
– Fehlerbehandlung nicht automatisiert, muss manuell geschehen– Synchronisation muss explizit modelliert werden, z.B. durch künstliche
Warteschritte (jede Aktivität entspricht einer eigenen Transaktion)
Kapitel 12: Workflow Management – 15Objektverwaltung höherer Ordnung (OHO) – SS 2001
12.3 SAP Business Workflows
� SAP Business Workflows• SAP‘s Workflow Management System, komplett in das SAP R/3-
System integriert …• … und damit auch in ABAP implementiert!
� SAP R/3 wird mit einer Menge von vordefinierten Prozessen ausgeliefert …
� … bietet aber auch die Möglichkeit, eigene Prozesse zu definieren und auszuführen
➜ Wir treffen also wiederum die Idee des Weltmodells an, diesmal auf der Prozess-Ebene
Kapitel 12: Workflow Management – 16Objektverwaltung höherer Ordnung (OHO) – SS 2001
Integration von SAP Business Workflows in SAP R/3
… SAPGUI(Business Client)Web-Client
Datenbank-Schnittstelle
HTTP
Web Server
DynPro-Interpreter
ABAP-Interpreter
SAPGUI(Business Client)
Workflow Engine(SAPBusinessWorkflow)
Prozess-Modelle
DispatcherGateway
Aufruf externerAnwendungen
Kapitel 12: Workflow Management – 17Objektverwaltung höherer Ordnung (OHO) – SS 2001
Komponenten von SAP Business Workflow (Systemebene)
Definitionswerkzeuge
Rollen-Definition
flexible
Ereigniserzeugung
Objekttyp-Definition
Aufgaben-Definition
Laufzeitsystem
Workflow-Manager
Ereignis-Manager
Workitem-Manager– Ausführung einzelner
Arbeitsschritte– Zuordnung von Bearbeitern– Terminüberwachung– Protokollführung
– Workflow-Steuerung– Workflow-Koordination
Informationssystem
Integrierter Eingangskorb
– Benutzerschnittstelle– Mail und Worklist-
Verwaltung der Benutzer
Statistik
Analyse
Retrieval
Workflow-Definition
Grafische Spezifikationvon Prozessen
Benutzerinteraktion
Kapitel 12: Workflow Management – 18Objektverwaltung höherer Ordnung (OHO) – SS 2001
Logische Ebenen der Business Workflows� Modulare Trennung von organisatorischen Aspekten, Workflows und der
Implementierung einzelner Aktivitäten
� Unternehmensbeschreibung• Zuordnung von Rollen
zu Aufgaben
� Prozessbeschreibung• Workflow-Spezifikation
durch ereignisgesteuerte Prozessketten (EPK)
• Workflow-Schritte: Prozess-Aktivitäten
� Modellierung der Geschäftsobjekte• Auszuführende Methoden• Ereignisse: relevante
Zustände
Verzweigunguns-bedingungen
SignaleProzessmodell
WorkflowDefinition
WorkflowSchritte
Objektmodell
Attribute Ereignisse Methoden
Business Objekt
Aufrufe undErgebnisse
Organisationsmodell
Personen Planstellen Org. Einheiten
RollenAufgaben
Kapitel 12: Workflow Management – 19Objektverwaltung höherer Ordnung (OHO) – SS 2001
Workflow-Aktivitäten
� SAP Business Workflows setzen (künstliche) Objektorientierung voraus
� Definition von Objekten• Daten: Referenz auf SAP-Tabellen des Dictionarys• Methoden: Referenz auf ABAP-Funktionen
(die automatisch ausgeführt werden) bzw. auf Dialogtransaktionen(mit Benutzerinteraktion)
• In den Funktionen lassen sich Programme, die am SAP-Gateway registriert sind, aufrufen
– Integration externer Anwendungen
� Mit jeder Prozess-Aktivität ist genau eine Objektmethode assoziiert
Kapitel 12: Workflow Management – 20Objektverwaltung höherer Ordnung (OHO) – SS 2001
Einbindung externer Anwendungen
� Externe Anwendungen werdenbeim Gateway registriert.Dabei erhält jedes System einenlogischen Systemnamen (Bsp. S1)
� Aus ABAP könne Funktionen dieser Anwendungen (foo) wie interne aufgerufen werden• RFC = remote function call;
SAP-Variante des RPC
� CALL FUNCTION ‘foo’DESTINATION ‘S1’EXPORTING
param1 = ‘MyValue’param2 = ‘OtherVal’
IMPORTINGresult = myvar
Datenbank-Schni
HTTP
Web Server
DynPro-Interpr
ABAP-Interpret
DispatGateway
S1
foo
Kapitel 12: Workflow Management – 21Objektverwaltung höherer Ordnung (OHO) – SS 2001
Aufgaben-Hierarchie
Aufgabe
Einzelschritt-AufgabeReferenz auf
Objektmethode
Mehrschritt-AufgabeReferenz auf
Workflow-Definition
Standard-Aufgabe
von SAP vorgegeben (TS)
Kunden-Aufgabe
Kundendefiniert (T)
Workflow-Muster
von SAP vorgegeben (WS)
Workflow-Aufgabe
Kundendefiniert (WF)
Ausführung derObjektmethode
GeschachtelteProzesse
Kapitel 12: Workflow Management – 22Objektverwaltung höherer Ordnung (OHO) – SS 2001
Einzel- und Mehrschritt-Aufgaben
Objekt-methode
SAPBusiness Workflow
Einzelschritt-Aufgabe
Schritttyp:Aktivität
Workflow-Definition
Mehrschritt-Aufgabe
Schritttyp:Aktivität
Kapitel 12: Workflow Management – 23Objektverwaltung höherer Ordnung (OHO) – SS 2001
Ereignisse� Abarbeitung von Workflows basiert auf Ereignis-Konzept
• Interne Ereignisse (z.B. Aktivität erfolgreich beendet)– Nur innerhalb eines Prozesses gültig
• Publizierte Ereignisse: explizite Veröffentlichung von Zuständen(publish/subscribe-Mechanismen)
– Interaktion zwischen Prozessen möglich� Publikation von Ereignissen (Ereigniserzeuger)
• Vordefinierter Funktionsbaustein SWW_EVENT_CREATE
� Subscription für Ereignisse (Ereignisverbraucher):Registrierung von
• Check-Funktionsbaustein (Überprüfung von Bedingungen)• Verbraucher-Funktionsbaustein (Reaktion auf das Ereignis)
� Kopplungstabellen
• Verwaltung von Subscriptions• Zuordnung von Produzenten zu Verbrauchern zur Laufzeit
Kapitel 12: Workflow Management – 24Objektverwaltung höherer Ordnung (OHO) – SS 2001
Datenfluss: Container …
� Datenfluss innerhalb von Workflows durch Datenaustausch zwischen Containern• Workflow-Container
– Globale Parameter einer Mehrschrittaufgabe (Prozess)• Aufgaben-Container
– Parameterübergabe zu einer Einzelschrittaufgabe• Methodenparameter-Container
– Parameter der aufzurufenden Objektmethode• Rollenparameter-Container
– Zur Rollenauflösung bei Einzel- oder Mehrschrittaufgaben
• Ereignisparameter-Container– Parameter von publizierten Ereignissen
� Containerinhalte in SAP-Tabellen verwaltet• Persistent in der Datenbank abgelegt
Kapitel 12: Workflow Management – 25Objektverwaltung höherer Ordnung (OHO) – SS 2001
… Datenfluss: ContainerWorkflow-Container
(globale Prozess-parameter)
Einzelschritt-Aufgabe
Rolle
Objekt-Methode
Rollenparameter-Container
Aufgaben-Container
Methodenparameter-Container
Prozess-Start(= Füllen des Workflow-Containers)
Ermittlung desBenutzers
Methoden-aufruf
ABAP-Funktion
…SWW_CREATE_EVENT
…
Ereignisparameter-Container
Ereignispublizieren
Kapitel 12: Workflow Management – 26Objektverwaltung höherer Ordnung (OHO) – SS 2001
Transaktionsgarantien für SAP-Business Workflows
� Laufzeitinformationen (Prozesszustand und Containerinhalte) sowie Prozessmodelle werden persistent in der Datenbank von SAP verwaltet
� Fehlerbehandlung kann im Prozess spezifiziert werden• Fehler erzeugt vordefiniertes Ereignis➜ Fehlerbehandlung = Reaktion auf dieses Ereignis
(z.B. durch alternative Aufgabe)• Ohne spezifizierte Fehlerbehandlung: manueller Eingriff nötig
� Concurrency Control• Auf der Ebene von Aktivitäten durch SAP-Sperren gegeben
(sofern korrekt Sperren gesetzt werden)– Jede Einzelschritt-Aufgabe ist eine eigene Transaktion
➜ Aber: Synchronisation von Prozessen muss explizit durch Warteschritte und künstlich generierte Ereignisse erfolgen
Kapitel 12: Workflow Management – 27Objektverwaltung höherer Ordnung (OHO) – SS 2001
Literatur
� G. Vossen, J. Becker (Hrsg.): „Geschäftsprozessmodellierung und Workflow-Management “, International Thompson Publishing, 1996.
� Workflow Management Coalition (WFMC)http://www.wfmc.org.
� U. Mende, A. Berthold: „SAP Business Workflow“. 2. Auflage,Addison-Wesley, 2000.
� R. Orfali, D. Harkey, J. Edwards: „Client/Server Survival Guide“, 3rd edition, Wiley & Sons, 1999.
Recommended