Workflow Management Systems

Slides:



Advertisements
Similar presentations
School of Computer Science & Software Engineering
Advertisements

Workflow Management Systems © Dr. Rafael A. Calvo – Edited by Mark Aufflick (pumptheory.com) School of Electrical and Information Eng, University of Sydney.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
1 Petri Nets I Paul Fishwick author From
An Introduction to Petri Nets
Principles of Engineering System Design Dr T Asokan
Based on: Petri Nets and Industrial Applications: A Tutorial
Interaction Modeling for Testing We would generate the test cases based on our understanding of the interactions that may happen. The source is, again,
Discrete Interaction Design Specification Prof. Dr. Matthias Rauterberg Faculty Industrial Design Technical University of Eindhoven
Petri Nets Overview 1 Definition of Petri Net C = ( P, T, I, O) Places P = { p 1, p 2, p 3, …, p n } Transitions T = { t 1, t 2, t 3, …, t n } Input.
CS5371 Theory of Computation
12/07/2007Jiacun Wang1 SE-561 Math Foundations Petri Nets - II Dr. Jiacun Wang Department of Software Engineering Monmouth University.
Lecture 6 & 7 System Models.
Mata kuliah :K0362/ Matematika Diskrit Tahun :2008
Chapter 3 : Software Process and Other Models Juthawut Chantharamalee Curriculum of Computer Science Faculty of Science and Technology, Suan Dusit University.
Business Process Management with Activiti João Silva (CERN, GS-AIS) 21st of October, 2014 BUSINESS PROCESS MANAGEMENT WITH ACTIVITI.
Workflow API and workflow services A case study of biodiversity analysis using Windows Workflow Foundation Boris Milašinović Faculty of Electrical Engineering.
程建群 博士(Dr. Jason Cheng) 年03月
System Models Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn Lecture 6 & 7.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
An Introduction to Petri Nets Marjan Sirjani Formal Methods Laboratory University of Tehran.
© 2001 Business & Information Systems 2/e1 Chapter 8 Personal Productivity and Problem Solving.
Lead Black Slide Powered by DeSiaMore1. 2 Chapter 8 Personal Productivity and Problem Solving.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Petri Nets Lecturer: Roohollah Abdipour. Agenda Introduction Petri Net Modelling with Petri Net Analysis of Petri net 2.
Modelling by Petri nets
Ch5: Software Specification. 1 Petri Nets  Introduced by C. Adams Petri in  Widely used in the modeling and analysis of computer systems.  Basic.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Systems Analysis and Design in a Changing World, Fourth Edition
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
School of Computer Science & Software Engineering
CAP 4800/CAP 5805: Computer Simulation Concepts
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
Capturing Requirements. Questions to Ask about Requirements 1)Are the requirements correct? 2)Consistent? 3)Unambiguous? 4)Complete? 5)Feasible? 6)Relevant?
Petri-Nets and Other Models
2008/10E-Enterprise Integration - eEI1 Lecture 6 Petri Net Techniques for Modeling Workflows and Their Support of Reuse.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
Turing Machine Model Are there computations that no “reasonable” computing machine can perform? –the machine should not store the answer to all possible.
Electronic Business Systems
Information Systems and Network Engineering Laboratory II
Modeling for Testing Interactions
CHAPTER
Chapter 5 System modeling
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
1.3 Finite State Machines.
Concurrent Systems Modeling using Petri Nets
Finite State Machines Dr K R Bond 2009
Main issues: • What do we want to build • How do we write this down
Object-Oriented Analysis and Design
CSS 496 Business Process Re-engineering for BS(CS)
Dr. Eng Amr T. Abdel-Hamid
Unified Modeling Language
System Design and Modeling
2. Specification and Modeling
Clockless Computing COMP
Model-Based Testing Model the system
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
What Are They? Who Needs ‘em? An Example: Scoring in Tennis
System Requirements Specification
Chapter 6 – System Design II: Behavioral Models
Submission Title: [Add name of submission]
CAP 4800/CAP 5805: Computer Simulation Concepts
CAP 4800/CAP 5805: Computer Simulation Concepts
What Are They? Who Needs ‘em? An Example: Scoring in Tennis
Finite Automata.
An Introduction to Petri Nets
CAP 4800/CAP 5805: Computer Simulation Concepts
Modeling Tangible User Interfaces
Petri Nets Laurie Frazier.
Presentation transcript:

Workflow Management Systems Dr. Rafael A. Calvo Web Engineering Group School of Electrical and Information Engineering The University of Sydney www.weg.ee.usyd.edu.au Edited by Mark Aufflick www.pumptheory.com

This presentation What are workflows? Modelling Workflows Petri Nets Finite State Machines (FSM) Formal representation of workflows Workflow management systems Example implementation

*participant = resource (human or machine) What are workflows? The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant* to another for action, according to a set of procedural rules. *participant = resource (human or machine) workflow management consortium Workflow management systems date back to the late 1980. The are used to coordinate the work of multiple people in a project that has a fixed process.

Why workflow management? Better, Cheaper faster businesses Improved efficiency - mostly through automation of business processes. Improved customer service – through consistency in the processes. Improved process control - helps management and improves overall quality of the outcomes. Flexibility – software control over processes enables their re-design in line with changing business needs Business process improvement - through focus on business processes.

A publishing workflow Publishing: Someone commissions and article, authors write it, the editor edits it and the article goes back to the author, then the editor reads it again and if accepted passes it to the publisher to decide the date of publication. Magazines, newspapers, etc… do this hundreds of times a day.

Bug tracking workflow Most common in software engineering A user submits a bug report, someone looks at it and decides who, how and when should fix it. The developer fixes it, or forward it to another developer, or back to the user asking for more information, eventually the bug is fixed and the user advised.

Workflow management systems Pure workflow software, Derived form image management systems, Document management systems, Relational or object database systems, And electronic mail systems.

To think about… What are the advantages of Web-based workflow management systems?

Workflows are modelled so they can be: Modelling workflows Workflows are modelled so they can be: Communicated to others (e.g managers, team members). Exchanged (e.g with other teams doing similar processes) Integrated (e.g with other computer systems)

Workflow Mathematical models Useful Mathematical models Finite State Machine (FSM) FSMs can be described by State Transition Diagrams Petri Net Petri Nets are used to model concurrent systems, particularly network protocols. The visual description of Petri Nets has been defined by the IEEE A directed, bipartite graph in which nodes are either "places" (represented by circles) or "transitions" (represented by rectangles), invented by Carl Adam Petri. A Petri net is marked by placing "tokens" on places. When all the places with arcs to a transition (its input places) have a token, the transition "fires", removing a token from each input place and adding a token to each place pointed to by the transition (its output places)

Petri Nets are a 4-tuple (P,T,I,O) Petri Nets modelling Petri Nets are a 4-tuple (P,T,I,O) Places represent possible states of the system (circles) Transitions are events or actions which cause the change of state (rectangles) Input relation: an arc that connects transition with a place (arrows). Output relation: an arc that connects a place with a transition (arrows).

Petri Nets Transitions… Changes of state are denoted by a movement of token(s) (black dots) from input places to output places; and are caused by the firing of a transition. The firing represents an occurrence of the event or an action taken. The firing is subject to the input conditions, denoted by token availability.

Petri Nets Transitions (2) A transition is firable or enabled when there at least one token in its input places. After firing, tokens will be moved from the input places (old state) to the output places, denoting the new state. What makes a transition to fire is called trigger.

Petri Nets Triggers User Trigger, when the transition is caused by a person. (fat arrow pointing to the task) Message Trigger. When the system is triggered by a message generated outside the WF system. Automatic Trigger. Are performed by the system as soon as the transition is enabled. Time trigger. Are automatic transitions that need to occur at a specific time.

A basic finite state machine consists of: Finite State Machines A basic finite state machine consists of: States A start state Transitions/Actions A simple representation: [Action] (State) [Action1] (State2) [Action4] (State4) (Start State) [Action3] [Action2] (State3)

States from our Bug Tracker example: FSM : States & Actions States from our Bug Tracker example: Open Resolved Closed An FSM instance will always be in exactly one such state When you perform an action, the FSM instance will be pushed into a new state States contain almost no information, but they allow us to determine which actions are possible In our real life workflow example, we also have actions that don’t change the state. This is a convenience that is not modelled by our simple deterministic FSM

Products Today's workflow management systems include: COSA (Transflow), Websphere MQ Workflow (IBM), Workflow (Eastman Software), Staffware (Staffware) and Visual WorkFlo (FileNet) support production/administrative workflow. A number of content management systems have workflows, including Vignette, Interwoven and OACS. Just a few products support ad-hoc workflow, e.g., Ensemble (FileNet).

References http://www.e-workflow.org/ http://www.wfmc.org/ Carl Adam Petri, Diss. 1962 Theory of Non-sequential processes (Kommunicakation mit Automaten) http://lsdis.cs.uga.edu/activities/NSF-workflow/ http://www.collaboraid.biz/developer/workflow-spec