710 likes | 1.11k Views
INFS4201 Distributed Enterprise Computing Module 1: Workflow Systems. Semester 2, 2002 School of Information Technology and Electrical Engineering. Module 1 Lectures. Overview of Workflow Systems Workflow Modeling Workflow Process Change Workflow Management Standards, Trends, Products.
E N D
INFS4201Distributed Enterprise ComputingModule 1: Workflow Systems Semester 2, 2002 School of Information Technology and Electrical Engineering
Module 1 Lectures • Overview of Workflow Systems • Workflow Modeling • Workflow Process Change • Workflow Management • Standards, Trends, Products INFS4201 Module 1 School of ITEE, University of Queensland
History of Process Orientation The age of theCrafts Worker Pre Industrial Revolution Process and Product, one in the same Measuring the work, measured the result The age of theFactory The age of theSpecialist Process Orientation Process Re-engineering Source: Sharp and Mcdermott (2000) INFS4201 Module 1 School of ITEE, University of Queensland
History of Process Orientation The age of theCrafts Worker The age of theFactory Industrial Revolution Divide and Conquer Specialization, Productivity, Scale The age of theSpecialist Process Orientation Process Re-engineering INFS4201 Module 1 School of ITEE, University of Queensland
History of Process Orientation The age of theCrafts Worker Post Industrial Revolution Service based industries Management, Control, White-collar workers, Bureaucracy High efficiency within functional divisions The age of theFactory The age of theSpecialist Process Orientation Highly fragmented process made it difficult to view, measure or improve the overall process Due to inward focus, activities and methods that benefited the functional division, but produced no value for, and in some cases negated the overall process A function’s practice that increased efficiency, such as batching, (re)entering the data, caused delay, error and expense on the overall process Process Re-engineering INFS4201 Module 1 School of ITEE, University of Queensland
History of Process Orientation The age of theCrafts Worker 1980s – Reference to cross-functional Business Processes Process: “A complete end-to-end set of activites that together create value for a customer” The age of theFactory The age of theSpecialist Process Orientation Enter: 1985 – 1993 Misconceptions: Application of IT, Downsizing and Outsourcing Exit: 1994 – 1995 Process Re-engineering INFS4201 Module 1 School of ITEE, University of Queensland
Process Orientation • Re-engineering didn’t survive, but process orientation did! • Merging of process management methods • Continuos Process Improvement (CPI) • Total Quality Management (TQM) • Business Process Re-engineering (BPR) Closer integration of business process management with process support systems INFS4201 Module 1 School of ITEE, University of Queensland
Elements of Process Analysis Business mission, strategy, and goals Business process Information Systems Presentation Application logic Data management Source: Sharp and Mcdermott (2000) INFS4201 Module 1 School of ITEE, University of Queensland
Process Design Methodology • A methodology for process (re)design • Frame the process • Understand the current (as-is) process • Design the new (to-be) process • Develop use-case scenarios Source: Sharp and Mcdermott (2000) INFS4201 Module 1 School of ITEE, University of Queensland
work flow design information technology policies & rules motivation &measurement human resources facilities &infrastructure Process Enablers • What are the factors that will help a process • achieve intended results • meet performance targets • within application constraints Business Issues! Process Enablers Source: Sharp and Mcdermott (2000) INFS4201 Module 1 School of ITEE, University of Queensland
Process Modelling Context Business Workflow ProcessEngineering ProcessModelling ApplicationDesign Data Design Functional Data INFS4201 Module 1 School of ITEE, University of Queensland
Suggested Reading • Sharp and McDermott (2001) Workflow Modelling: Tools for Process Improvement and Application Development. Chapter 3 INFS4201 Handout 2 INFS4201 Module 1 School of ITEE, University of Queensland
Workflow Modeling • Many languages invented with individual product developments • Petri Nets - most research papers • Many complex issues on expressability and verifiability • Little impact of research on products INFS4201 Module 1 School of ITEE, University of Queensland
Primary Functional Informational Behavioural Operational Organizational Secondary Security Causality History Integrity Quality Workflow Modelling Perspectives Source: Jablonski and Bussler (1996) INFS4201 Module 1 School of ITEE, University of Queensland
Primary Modelling Perspectives • FunctionalWhat is to be performed • InformationalWhat information is required • BehaviouralWhen it is performed • OperationalHow it is performed • OrganizationalWho performs it INFS4201 Module 1 School of ITEE, University of Queensland
Primary Modelling Perspectives • FunctionalWhat is to be performedActivities and Sub-processes WorkflowActivity 1 WorkflowActivity 2 INFS4201 Module 1 School of ITEE, University of Queensland
AB AX ImplicitData Flow ExplicitData Flow Workflow Relevant Data AXY AZ Primary Modelling Perspectives • InformationalWhat information is requiredInput and Output data WorkflowActivity 1 WorkflowActivity 2 INFS4201 Module 1 School of ITEE, University of Queensland
Primary Modelling Perspectives • BehaviouralWhen it is performedControl Flow • Dependency between workflow activities • Typical structures that represent this dependency: • Sequential execution • Concurrent execution • Alternative execution • …. Temporal Constraints • Durations (Single, Interval) • Deadlines (Absolute and Relative) • Interdependent time limits WorkflowActivity 1 WorkflowActivity 2 INFS4201 Module 1 School of ITEE, University of Queensland
Primary Modelling Perspectives • OperationalHow it is performedWorkflow Relevant Applications • Degree of modification (workflow aware applications) • System support (manual or automated) • Granularity (functional complexity) • Scope (manipulating workflow control data or only application data) • Coupling (integration between application and WFMS) • Invocation mode (synchronously or asynchronously) • Interaction mode (interactive or batch) INFS4201 Module 1 School of ITEE, University of Queensland
Primary Modelling Perspectives • OrganizationalWho performs itWorkflow Participants • Organizational Structure (units & roles) • Organizational Population (people) • Organizational Policy • Selection • All users in a given role • Based on instance data • Finding substitutes • Load balancing • Notification • All users satisfying the selection criteria are notified • Binding (Synchronizing) • Typically 1-out-of-many INFS4201 Module 1 School of ITEE, University of Queensland
Secondary Modelling Perspectives • SecurityWho is allowed accessPotential conflict with selection policies • CausalityDoes the model abide by the business policies, rules and strategies • HistoryWhat happened during executionAudit trail / workflow logs • System context of Audit trail • Queries on history (who performed this activity) • Failure and recovery (determine last consistent state) • Application context of Audit trail • Analysis (temporal constraints, participant loads, exceptions) • Evolution and Improvement (semantic failures) INFS4201 Module 1 School of ITEE, University of Queensland
Secondary Modelling Perspectives • Integrity How to recover from failuresSemantic and System failures • QualityHow to ensure “quality”Typically cost and time function INFS4201 Module 1 School of ITEE, University of Queensland
Suggested Reading • Jablonski and Bussler (1996) Workflow Management – Modelling Concepts, Architecture and Implementation. Chapter 6. INFS4201 Handout 2 INFS4201 Module 1 School of ITEE, University of Queensland
Workflow Languages • Formal Languages • Petri Nets • Process Algebra • Computation Tree Logic • Commercial Languages • Flowmark (MQSeries), Forte, Action, Staffware, … • See Workflow Vendors at www.waria.org • Research Proposals • Adept, Wide, Mobile, METEOR, TRAMs, WAMO, … • See Workflow Prototypes at http://www.ifi.unizh.ch/dbtg/Links/workflow.html • Standards • Workflow Management Coalition • Business Process Modelling Initiative • Web Services Definition Language • XLANG Business Process Language • … INFS4201 Module 1 School of ITEE, University of Queensland
Petri-Nets based Workflow Models • WF Nets [Van der Aalst W.M.P.] • Information Control Nets [Ellis C.A., Nutt G. J.] • Temporal Constraint Petri Net [Adam N. R., et al] • Modular Process Nets [Wikarski D.] • Coloured Petri Nets [Merz M., et al] • Reconfigurable Nets [Badouel E., Oliver J.] • Higher Order Object Nets [Wikarski D., Han Y., Lowe M.] Source: Gerrit K. Janssens, Jan Verelst, Bart Weyn. (2000) Source: http://tmitwww.tm.tue.nl/staff/wvdaalst/Petri_nets/pn_tutorial.htm INFS4201 Module 1 School of ITEE, University of Queensland
A Workflow Language • Generic language with a small number of constructs • Sufficient expressiveness for a wide variety of process requirements • Simplicity provides rigorous analysis and verifiability • Developed jointly by DSTC and UQ researchers (1995 – 2001) • Supported by a process modelling and verification tool INFS4201 Module 1 School of ITEE, University of Queensland
Fundamental Modeling Aspects • Structure • Control Flow • Data • Input and Output • Time • Deadlines and Durations • Resources • Applications, Roles, Performers INFS4201 Module 1 School of ITEE, University of Queensland
Begin A B Fork C D E Choice Synchronizer G F S Merge Do L While Synchronizer End Core Structures • Sequence • And Split • And Join • Or Split • Or Join • Nesting • Iteration • Termination INFS4201 Module 1 School of ITEE, University of Queensland
Example Approval from Choice Finance Director US$ Payment Approve Reject Begin Choice Request A$ Prepare Cheque Prepare Cheque Inform Employee for ANZ Bank for CITIBANK about Rejection Merge Fork Update Accounts Get Signatures Database from Finance Director Issue Cheque Synchronizer Merge File Payment Request End INFS4201 Module 1 School of ITEE, University of Queensland
Alternative Modelling Approach • More intuitive • Less graph nodes • Implicit semantics Implicit Representation Mapping from Explicit to Implicit Representation INFS4201 Module 1 School of ITEE, University of Queensland
Extended Modelling Structures • Multiple choice • Multiple merge • N-out-of-M join • Implicit Termination Source:http://tmitwww.tm.tue.nl/research/patterns/ INFS4201 Module 1 School of ITEE, University of Queensland
Multiple Choice The choice of braches after an or-split is not exclusive INFS4201 Module 1 School of ITEE, University of Queensland
Multiple Merge The merge can have more than one incoming branch Subsequent activities will be activated as many times INFS4201 Module 1 School of ITEE, University of Queensland
N-out-of-M Join Waits for a given number of braches and then ignores (cancels) the remaining INFS4201 Module 1 School of ITEE, University of Queensland
Implicit Termination Process is complete when there are no active activities left {B, D, E} represent terminating nodes (activities) Explicit, unique terminating node INFS4201 Module 1 School of ITEE, University of Queensland
Exercise 1 Think of examples where the core modelling structures would not be sufficient INFS4201 Module 1 School of ITEE, University of Queensland
Language Syntax Core Modelling Structures for Explicit representation • Let G = <N, F> be a graph where N: Finite Set of Nodes, F: Flow Relation F N N • n N, NodeType: n {Coordinator, Task} • N = C T, C T = where C: Set of Coordinator Nodes, T: Set of Task Nodes • n C, CoordType: n {Fork, Synchronize, Choice, Merge, Begin, End, Do, While} • Let P be a directed path in G, such that P = {n1, n2, …, nk}, (ni, ni+1) F for i = 1, 2, …, k-1 • Let Nat : Set of Natural Numbers, NId : Set of Node Identifiers • n N, I: N Nat, I(n) : Number of incoming flows for node n • n N, O: N Nat, O(n) : Number of outgoing flows for node n INFS4201 Module 1 School of ITEE, University of Queensland
Structural Specification A Workflow is a Directed Acyclic Graph (DAG) W = <N, F> such that n C, s.t. I(n) = 0 ( m N, s.t. I(m) = 0 m n ), we call this Begin Node n0 and CoordType (n0) = Begin n C, s.t. O(n) = 0 ( m N, s.t. O(m) = 0 m n ), we call this End Node nf and CoordType (nf) = End n N, P, s.t. P = {n0, …n, …, nf } n C, I(n) 2 O(n) 2 where n n0 and n nf n T, I(n) + O(n) > 1 where n n0 and n nf n T, TaskType: T {Activity, SubProcess}, Activity represents a single task and SubProcess represent nesting. INFS4201 Module 1 School of ITEE, University of Queensland
Basic Meta-model for Process refers to m m PID Sub-Process Process 1 1 Activity d Contains Contains From Task m m m 1 Name Nodes Transitions d m 1 Condition Coordinator To NID TID Type INFS4201 Module 1 School of ITEE, University of Queensland
Basic Meta-model for Activity Temporal Compensation Properties Input 1 WFVar m m Performed Activity Control Data by VarType 1 1 m 1 1 RoleID Output Role Invokes RoleName m Maps to Consumes 1 1 1 Assigned m AppVar to Application Data Application m VarType 1 m PerfID Generates Performer AppID INFS4201 Module 1 School of ITEE, University of Queensland
FlowMake • Modelling, Analysis and Verification of Workflow models • Objectives • Simple modelling language • Correctness criteria • Verification algorithms • Modelling and verification tool Download available from course website INFS4201 Module 1 School of ITEE, University of Queensland
INFS4201 Module 1 School of ITEE, University of Queensland
FlowMake Components Relational Database Verification Engine Persistence Interface C++ Object Serialization Workflow Editor Canvassing Tools Library IBM FlowMark Enterprise Interface Product Interface MincomMIMS/Verve ParticipantAssignment Application Handler INFS4201 Module 1 School of ITEE, University of Queensland
FlowMake: Demonstration • Developed in Microsoft Visual C++ • Fast and compact • User-friendly WF Editor • Verification and Analysis • Object-oriented design • Easily extensible • Implements DSTC research • Product interfaces INFS4201 Module 1 School of ITEE, University of Queensland
Exercise 2 Make a new model in FlowMake for (any or all) • Library loans • Insurance claims • Car rental • University admission INFS4201 Module 1 School of ITEE, University of Queensland
Workflow Verification • Semantic VerificationVerify that the model is in conformance with the business process goals • Syntactic VerificationVerify that the model is in conformance with the grammar of the language • Structural VerificationVerify that the model will not lead to erroneous execution INFS4201 Module 1 School of ITEE, University of Queensland
Syntactic Errors • An activity node cannot have more than one incoming/outgoing flows (explicit representation) • Reachablity of nodes (Graph must not be disconnected) • Multiple (initial) final activities INFS4201 Module 1 School of ITEE, University of Queensland
Structural Errors • Mostly represent errors in control flow specification • Incorrect specification of data, time and resources will also generate error in execution INFS4201 Module 1 School of ITEE, University of Queensland
AB AX AXY AZ Data, Time and Resource Conflicts • Data Conflicts • Missing data • Lost data • Temporal Conflicts • Resource Conflicts WorkflowActivity 1 WorkflowActivity 2 Missing data: Where is Y coming from INFS4201 Module 1 School of ITEE, University of Queensland
Data, Time and Resource Conflicts • Data Conflicts • Missing data • Lost data • Temporal Conflicts • Resource Conflicts Fork AB WorkflowActivity 1 X Y AC WorkflowActivity 2 XZ Lost data: What will be the value of X INFS4201 Module 1 School of ITEE, University of Queensland