©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
PART VII - Workflow Management Systems
1. Overview1. Motivation2. Terminology
2. Process Modelling3. Workflow Management Systems
1. Types of Workflow management systems2. WfMS architectures3. Crossorganizational workflows4. Example: WebLogic Process Integrator
4. Summary5. References
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
1. Overview
• 1.1 Motivation• 1.2 Terminology
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
1.1 Motivation
• Process focus in modelling an information system– Data focus: e.g. relational data model and databases– Functional focus: function interfaces and transaction monitors– Behavioral focus: object models and object transaction monitors– Process focus: process models and workflow management systems
• Why focus on processes ?– At coarse granularity a business process describes best what a company is
doing– Business process re-engineering is a practice to understand and optimize
what a company is doing– At a coarse granularity large systems can be best described as processes
(programming in the large)– The interaction of many different information systems and human users can be
best captured by processes (linking data islands)
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Example: Damage Claim Handling Business Process
receive call
assign garage
notify insurance
notify adjustor
contact garage
receive car
estimate cost
assign adjustor
inspect car
agree repair
repair car
invoice
checkinvoice
fill claim form
amend estimate
reconcile info
finalize claim
estimate < 500
insurance WFMS
GARAGE
CALL CENTRE
INSURANCE
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
System Activites in a Business Process
• Activities in a business process can be human- or system controlled• The activities can access (shared) applications and databases• Business process can be distributed within and among organizations
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
The Role of Workflow Management
Process ProcessSpecification
Process Execution
Business ProcessModelling and Reengineering
Workflow Enactment
Workflow AnalysisSimulation
runtimebuildtime
Interactionwith humans and IT tools
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Benefits of Workflow Management Technology
• Organize, schedule, control and monitor process • Help understand/improve process
– analysis, simulate, reengineering
• Make processes more efficient– Reduce paper work– Support on-line data entry where data originates– support data exchange and transactions across independent enterprises (EDI)
• More generally workflow technology can be seen as"programming-in-the-large"
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
1.2 Terminology
• A Process is – a collection of activities related to a specific case (commitment)
• each damage claim represents a single case• all damage claims (the same case) constitute the damage claim handling process
• An Activity is – a collection of events, a set of logically related operations or a bounded
computation – that can be made to occur by a single logical actor (e.g., by a person with a given
role) or a processing entity (information system, resource manager)• review a damage claim assessment• fill out a complaint form• perform a database transaction
• An Organizational Process is – a collection of activities related to a specific case, adding value to a product of an
organization.• processing damage claims in an insurance company
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Terminology
• Workflow Management (WFM) is – the automated coordination, control, and communication of work– both of people and computers– in the context of organizational processes– through the execution of software in a network of computers – whose order of execution is controlled by a computerized representation of the
business processes
• A Workflow Process is – an automated organizational process– the automation of a business process, in whole or part, during which documents,
information, or tasks are passed from one participant to another for acting, according to a set of procedural rules [WfMC]
• processing damage claims in an insurance company “orchestrated” by a workflow management system
• A Workflow Management System (abbreviated WFMS) is – a technological system – in which workflow processes are defined, performed, managed, and monitored – through the execution of software – whose order of events is driven by a process definition
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Terminology
• A Work Item is– a message that represents work to be performed.– is used to manipulate (e.g. relay, store, schedule) work for the purpose of doing
it later or elsewhere• a fax asking about the damage claim assessment that should have been there 3 days ago.
• A Data Item– An object that represents information, which is needed to perform some activity
• a photograph of the damage, taken on location
• A Work List is– list of work items retrieved from a workflow management system.– a worklist is used by an actor as a to-do list
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Relationships among Concepts
Business Process
Workflow Management System
Process Instances
Activity Instances
Work Items Invoked Applications
Process Definition
Sub-Processes
Activities
Manual Activities Automated Activities
Which may be
or
Is defined in a(i.e what is
intended to happen )Is managed by
(controls automated aspects of thebusiness process via)
Include one or more
(a representation of what is actually happening)
(tasks allocated to a workflow participant)
(computer tools/applications used tosupport an activity)
Which include
And/Or
(a representation of what is intendedto happen)
Composed of
(which are not managed as part of the Workflow system)
During execution are represented by
Used to manageand create
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
2. Workflow Modelling
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Elements of Workflow Models
• There exist almost as many workflow models as workflow systems• Usually a workflow model distinguishes
– Process definition– Resources– Resource management rules
• Process definition– Description of the process– Activities, usually executed atomically with internal state model– Control and data flow among them– Subprocesses
• Resources– Classes of resources that can be used to execute an activity
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Process Definition: Control and Data Flow in Processes
Activity 1
Activity 2
Activity 4
Activity 3
Estimate≤100
out In out
Control connector
Data connector
Transition condition
Variable(Data container)
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Control Flow
• Each workflow has well-defined start and end node
• Sequential Execution
• Parallel Execution– Both activities executed in parallel– Workflow continues when both
activities are completed– AND-split and AND-join
• Choice– On of the alternative activites executed– Decision made based on variable values– Workflow continues when one
activitiy completed– OR-split and OR-join
Activity 2Activity 1
Activity 2
Activity 1
Activity 2
Activity 1
Activity 1S E
cond
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Example: Damage Claim Process
receive call
assign garage
notify insurance
notify adjustor
contact garage
receive car
estimate cost
assign adjustor
inspect car
agree repair
repair car invoice
check invoice
fill claim form
amend estimate
reconcile info
finalize claim
S
E
estimate < 500
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Sub-workflow
• A workflow activity itself can be a whole sub-workflow– The sub-workflow has one ingoing and one outgoing control connector
Activity 1S E
Activity 2Activity 1S E
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Workflow Instance
• A workflow specification is instantiated in runtime – Multiple instances of the same workflow (cases)– State is given by the currently active activities and their internal states– Multiple instances of the same activity types can be instantiated
• Internal states of activities
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Global States of Workflow Instances
• A workflow instance has also a (global) execution state associated with
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Resources
• Resource (participant, actor, user, agent)– A resource can execute certain activities for certain cases– Human or non- human (printer, modem)
• Resource class is a set of resources with similar characteristics• A resource class is typically based on
– Role (skill, competence, qualification)• Classification based on what a resource can do
– Group (department, team, office, organizational unit)• Classification based on the organization
• The workflow specification contains rules that specify by whom an activity can be performed
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
3. Workflow Management Systems
• 3.1 Types of Workflow management systems• 3.2 WfMS architectures• 3.3 Crossorganizational workflows• 3.4 Example: WebLogic Process Integrator
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
3.1 The Evolution of Workflow Systems
• A number of technologies incorporated workflow-related functions– Image processing– Document management– Electronic Mail– Groupware Applications– Transaction Applications– IT Project support software– Business process reengineering and system design tools
• Workflow Management systems make this function explicit and support by means of a dedicated system– Stand-alone workflow management systems (e.g. Flowmark)– Embedded workflow management systems (e.g. SAP)– Workflow management middleware (e.g. Weblogic Process Integrator)
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
WfMS Architecture
• Message oriented (the “lightweight” approach)– workflow process definition is part of messages
• Repository oriented (the “heavyweight” approach)– workflow process definition is stored in a repository/database
• Trade-off– infrastructure technology needed, robustness, ease of modification
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Message-oriented Architecture
• Origins in enhanced e-mail systems and electronic forms• Flow of structured messages between performers/users
– messaging model
• Process definition part of messages – usually not stored in a repository
• Lack of accessible and manipulable process definition => difficulty in – knowing status (monitoring) – progress (tracking)– reuse
Activity 1
Activity 2
Activity 4
Activity 3
System 1
System 2
System 4
System 3
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Repository-oriented Architecture
• Modeling of execution of process components• Formal process model (e.g., petrinets)• Both local view of individual execution component (worklist) and of
complete process• Repository of definitions to support reuse• Use of databases or common/shared storage
– usually supporting monitoring, tracking
Workflowsystem
Activity 1
System 1
Activity 2
System 2
Activity 3
System 3
Activity 4
System 4
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Types of Workflow Systems
Informationcentric
Processcentric
unstructured
structured
groupware
ad-hoc workflow
production workflow
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
3.2 Workflow Engines as Middleware
Application Database
activity 1 activity 2
activity 4
activity 3
Wrapper Wrapper
Workflow client
Workflow engine
AdministrationMonitoring
Process definition
Otherworkflow engines
Data server
Workflowdata
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Implementation Architectures (repository-oriented)
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
The WfMC Reference Model
Source: WfMC
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
WfMC Interfaces
• Interface 1: Workflow Definition Interchange– Exchange of workflow definitions between modelling and runtime tools– Based on a process meta-model– Standard API calls to read an write process definitions
• Interface 2: Workflow Client Application Interface– Access of applications to the workflow engine and the worklists– Process and activity control functions
• Interface 3: Invoked Applications Interfaces– Interface for workflow-enabled applications– Start/suspend/resume/abort activity– Notification of workflow engine– Data handling
• Interface 4: Workflow Interoperability Interfaces– Invocation and synchronisation of processes and activites across workflow
engines• Interface 5: Adminstration and Monitoring Interface
– User/role management– Audit management (event log)– Resource control– Process supervision and status querying
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
3.3 Workflow Interoperability
Source: WfMC
chained
subworkflow
synchronised
shared
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Workflow Interoperability Models
• Chained– Control is passed on from one workflow to another without any further
interactions
• Subworkflow– One workflow system performs a subworkflow on behalf of another one
• Synchronised– Activities from different workflow synchronise via notifications
• Shared– A shared workflow process is executed by different workflow engines
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
3.4 Weblogic Process Integrator
Source: BEA
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Weblogic Process Integrator Process Model
Source: BEA
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Events in Weblogic Process Integrator
• The event node allows a workflow to enable control connectors based on the occurrence of (external) events– Events can be incoming XML messages– Interoperability with other systems (synchronised model)
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Summary
• Workflow management systems support– Explicit process specification and enactment– Thus useful for business process (re-)engineering and optimization and
programming in hte large– Process model define the control and data flow between the activities
• Workflow management systems– Are a process-oriented middleware– Can be implemented in a message-oriented or repository-oriented fashion– Are standardized by the Workflow Management Coalitions models
• Advanced problems– Flexibility in workflow models– Treatment of exceptions and time– Interoperability of workflow systems
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
References
• Books– F. Leymann, D. Roller: "Production Workflows", Prentice Hall, 2000.
• Websites– Workflow Management Coalition: www.wfmc.org– Weblogic Process Integrator: edocs.bea.com/wlpi
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Exams
• Oral exam• Basis for the exam
– The script– The exercises– The reading list: 10 - 11 articles providing more detailed information on a topic
• 2 questions– Q1: you can choose 3 reading topics from the reading list, the questions on this
topic will be technically more detailed– Q2: a question on a more conceptual level based on the script
• Motivation: there exists 4 levels of acquaintance with a topic– Knowledge of names (who ?) - hopefully you heard them– Understanding of concepts and their relationships (what ?) - Q2– Understanding the technical details and algorithms (how ?) - Q1– Mastering the technology (do it) - Exercises
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Reading List
• Part 1– XSL Transformations: XSLT Alleviates XML Schema Incompatibility Headaches, Don Box, Aaron Skonnard, John
Lam (html document)– XML Schema Part 0: Primer, W3C Candidate Recommendation 24 October 2000 (html document)
• Part 2– Federated Information Systems: Concepts, Terminology and Architectures, Susanne Busse, Ralf-Detlef Kutsche,
Ulf Leser, Herbert Weber, Forschungsberichte des Fachbereichs Informatik, Bericht Nr. 99-9 (pdf article)
• Part 3– Using the Web DataBlade Module (html document -
http://examples.informix.com/frameset.html#top?initial_page=/doc/case_studies/datablade/apb/apbLOC.html)
• Part 4– Database Technologies for Large Scale Databases in Telecommunication, Eurescom Deliverable, Part 1:
Transaction Processing Monitors (pdf document)– OMG Transaction Service Specification, ch 1-2 (pdf document)– R. Ramakrishnan, J. Gehrke, "Database Management Systems", McGraw Hill, 2000. - ch 18, 19, 20 on transaction
processing (paper copies - available at LSIR secretary)
• Part 5– M. Henning, S. Vinoski, Advanced CORBA Programming with C++, Addison Wesley, 1999. - ch 2, 3, 11 on CORBA
and POA (paper copies - available at LSIR secretary)
• Part 6– Introduction to BEA WebLogic Server 5.1 (html document)– R. Monson-Haefel, "Enterprise Java Beans", O'Reilly, Second Ed., 2000. - ch 2, 3, 6, 7 on the EJB model (paper
copies - available at LSIR secretary)
• Part 7– Workflow Management Coalition: The Workflow Reference Model (pdf document)
• Part 8– Biztalk Framework 2.0 (Word document) and Biztalk server example (html document)
©2001, Karl Aberer, EPFL-DSC, Laboratoire de systèmes d'informations rèpartis
Semester project -The P2P Information Systems Algorithm Project
• Take part in an exciting endevaour we are undertaking at LSIR !• Goal
– systematically analyse whether and how existing algorithms for accessing large information collections can be implemented in a P2P fashion
– Java-based testbed – P2P information systems will be the hot topic over the next years on the Internet
and in business computing– Buzzwords: Gnutella, FreeNet, MojoNation, …
• Algorithms that are added to the library – accessing databases (typically indexing methods):
• Examples: B-Trees, kd-Trees, Trie structures, ...– information retrieval:
• Examples: Vector retrieval model, latent semantic indexing model, Bayesian model, ...– data mining and distributed decision making:
• Examples: Classification methods, association rule mining, cluster analysis, ...
• Approach– choice of the specific algorithm left to you (if you wish)– the semester project can serve as entry to a larger subsequent diploma project– this project matches perfectly the contents of the lecture "Distributed Information
Systems"• contact [email protected] in case you are interested in the project