290 likes | 417 Views
Techniques for Modeling Workflows and Their Support of Reuse. 第 2 組 組員 : 9634516 Kent 倪煒均 9634532 Ashley 黃雅莉 9634543 Dragon 郭奇龍 2007/10/11. Abstract.
E N D
Techniques for Modeling Workflows and Their Support of Reuse 第2組 組員: 9634516Kent倪煒均 9634532 Ashley 黃雅莉 9634543Dragon郭奇龍 2007/10/11
Abstract • Several authors propose their own technique based on Petri Nets to model workflow processes. But suggest totally different solutions. • Because the proposed techniques and fundamentally different, eleven of these techniques are briefly discussed and compared
What is workflow? • 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.
Definition of Basic Workflow • Workflow Management Coalition (WEMC): provides a common “Reference Model” of workflow management systems to identify workflow management system’s characteristics, terminology and components. • Workflow management system is a software system that defines, coordinates, manages, and executes complex business activities.
Van der Aalst (1996) -formal semantics despite their graphical nature-can explicitly model states -have abundance of available and theoretically proven analysis techniques • Oberweis et al (1997) • -Integration of data and behaviour • aspects.-Support for concurrent, cooperative • processes.-Different degrees of formality-Availability of analysis techniques-Flexibility Why Petri Nets to Model Workflow? Merz. Et al (1995) -mathematical foundation -graphical representation -possibility
High Level Petri Nets • Information Control Nets (ICN) adding a complementary data flow model, generalising control flow primitives and simplifying semantics • Coloured Petri Nets in order to enhance the distributed systems architecture Common Open Service Market (COSM), with concurrent workflow modeling. • Reconfigurable Netsconsists in fact of several Petri Nets which constitute the different possible configurations of the system.
Introduction • First introduced by Carl Adam Petri in 1962. • A diagrammatic tool to model concurrency and synchronization in distributed systems. • Very similar to State Transition Diagrams. • Used as a visual communication aid to model the system behaviour. • Based on strong mathematical foundation.
A Petri Net Specification ... • consists of three types of components: places (circles), transitions (rectangles) and arcs (arrows): • Places represent possible states of the system; • Transitions are events or actions which cause the change of state; And • Every arc simply connects a place with a transition or a transition with a place.
A Change of State … • is denoted by a movement of token(s) (black dots) from place(s) to place(s); and is 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.
A Change of State • A transition is firable or enabled when there are sufficient tokens in its input places. • After firing, tokens will be transferred from the input places (old state) to the output places, denoting the new state. • Note that the EFTPOS example is a Petri net representation of a finite state machine (FSM).
e2 e3 e1 e3 e2 e1 e5 e4 Net Structures • A sequence of events/actions: • Concurrent executions:
e1 e2 e3 e4 Net Structures • Non-deterministic events - conflict, choice or decision: A choice of either e1, e2 … or e3, e4 ...
e1 Net Structures • Synchronization
e1 Net Structures • Synchronization and Concurrency
Stochastic Petri Nets • GSPN (Generalized Stochastic Petri Nets) 1.Quantitative analysis 2.Qualitative analysis • CGSPN (the Coloured Generalized Stochastic Petri Nets)– which are based on Coloured Petri Nets as pure Petri Net formalism instead of Place/Transition Petri Nets.
Behavioural Properties • Reachability • “Can we reach one particular state from another?” • Boundedness • “Will a storage place overflow?” • Liveness • “Will the system die in a particular state?”
Other Types of Petri Nets • High-level Petri nets • Tokens have “colours”, holding complex information. • Timed Petri nets • Time delays associated with transitions and/or places. • Fixed delays or interval delays. • Stochastic Petri nets: exponentially distributed random variables as delays.
Other Types of Petri Nets • Object-Oriented Petri nets • Tokens are instances of classes, moving from one place to another, calling methods and changing attributes. • Net structure models the inner behaviour of objects. • The purpose is to use object-oriented constructs to structure and build the system.
Producer Consumer accepted ready Storage accept send produce consume ready Producer Consumer data: ITEM data: ITEM ITEM produce( ) ITEM accept( ) void send(ITEM) void consume(ITEM) An O-O Petri Net
Application Generators and Very High-Level Languages • Allow users to specify the requirements at a very high level of abstraction. • In the long term, it would have the highest potential profit. However, it remains very difficult to build generators that scale up to industrial production
Evaluation • Most common approach black-box reuse • The notion of compositionality • Questions(which advantages exactly can be achieved or which type of reuse leads to these advantages)remains unanswered
A Critical Remark Concerning Reuse in the IS-Literature • It has remained extremely difficult to realize a systematic approach to reuse. • The potential reasons for the lack of systematic reuse:some technical but many are managerial
Hidden Assumptions • A fundamental problem of software • Intended environment (1)implicit (2)don’t match the actual environment or (3)conflict with those of other parts of the system
Final Remarks • Realizing a systematic form of reuse has proven to be a very ambitious goal ---To reach this goal ,good modeling constructs alone have been insufficient • Making quick progress towards deciding which modeling constructs are most appropriate • Empirical and experimental studies are required(have yet find in the literature)
Conclusion • Identify the existing Patri Net formalisms proposed by various authors • Is that even a very good Petri Net formalism for modeling workflows is not worth much if there are no Workflow Management Systems or other computer based on it? • V.S database models:far from being mature
Conclusion(con.) • Much progress is being made towards developing an adequate modeling construct for modeling workflows using Patri Nets • Construct alone isn’t sufficient in IS-field, and how’s in workflow field?