Rozwiazania w zakresie WorkFlow - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

Rozwiazania w zakresie WorkFlow

Description:

WSCI (Web Services Choreography Interface) - Sun, BEA, Intalio and SAP ... The research work of Wil van der Aalst, Arthur ter Hofstede, Bartek Kiepuszewski ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 39
Provided by: siPjws
Category:

less

Transcript and Presenter's Notes

Title: Rozwiazania w zakresie WorkFlow


1
Rozwiazania w zakresie WorkFlow
  • Tomasz Czwarno
  • Tomasz (at) czwarno.pl

2
Agenda
  • WorkFlow Working Groups
  • WorkFlow Standards and Languages
  • Process Modelling Methodologies
  • WorkFlow Patterns
  • Formal Models
  • SBA WorkFlow

3
WorkFlow Working Groups
  • WARIA - Workflow and Reengineering International
    Association 1992,
  • WfMC - WorkFlow Management Coalition 1993
  • OMG Object Management Group 1998
  • BPMG Business Process Management Group 1999,
  • BPMI Business Process Management Initiative
    1999,
  • ebXML UN/CEFACT and OASIS 2001,
  • Universities (Eindhoven University of Technology)
  • Institutes (Hasso-Plattner Institute)
  • ....

4
WorkFlow Concepts (WfMC)
  • 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.
  • WorkFlow Management System
  • Business Process
  • Process Definition
  • Activity (Manual and/or Automated)
  • Instance (Process and/or Activity)
  • Workflow Participant
  • Parallel and Sequential Routing
  • And/Or Split/Join
  • Pre/Post Condition
  • Transition

5
WorkFlow Reference Model (WfMC)
  • An architectural representation of a workflow
    management system, identifying
  • the most important system interfaces, developed
    by the Workflow Management
  • Coalition . It identifies interfaces covering,
    broadly, five areas of
  • functionality between a workflow management
    system and its environment.
  • Interface 1 Process Definition Tools
  • Interface 2 WorkFlow Client Application
  • Interface 3 Invoked Application
  • Interface 4 Other WorkFlow Enactment Services
  • Interface 5 Administrations and Monitoring Tools
  • Supported by the WfMC, the Object Management
    Group (OMG) has standardised
  • the structure and interfaces of the Workflow
    engines with CORBA Objects -
  • Workflow Management Facility (WMF).
  • In 1996 the WfMC released an OMG IDL binding for
    its Client Application
  • Programming Interface and have been developing a
    similar binding for the
  • Interoperability interface.

6
WorkFlow Standards and Languages
  • WPDL (Workflow Process Definition Language) -
    WfMC
  • XPDL (XML Workflow Process Definition Language)
    WfMC
  • BPMN (Business Process Modelling Notation) - BPMI
  • BPML (Business Process Modelling Language)
  • BPQL (Business Process Query Language)
  • BPSS (Business Process Specification Schema)
    ebXML
  • BPDL (Business Process Describing Language)
    Stefan Heberl
  • EPC (Event-Driven Process Chains) SAP
  • ICN (The Information-Control Nets)
  • UML 2.0
  • WSCL (Web Services Composition Languages)
  • XLANG (Web Services for Business Process
    Design) Microsoft
  • WSFL (Web Services Flow Language) IBM
  • BPEL4WS (Business Process Execution Language for
    Web Services)
  • WSCI (Web Services Choreography Interface) -
    Sun, BEA, Intalio and SAP
  • WS-CDL (Web Services Choreography Description
    Language) W3C
  • WSCL (Web Services Conversation Language)
  • Web Bond Georgia State University

7
Process Modelling Methodologies (1)
  • Process modelling
  • Modelling strategy
  • Mechanisms to structure a model
  • Modelling language
  • Different modelling strategies
  • Process-oriented
  • Resource-oriented
  • Data-oriented

8
Process Modelling Methodologies (2)
  • Process modelling methodologies criteria (by
    BPDL)
  • Ability to modelling all complexity of business
    process (sequencing, branching, looping, forking,
    synchronizing, timeouts, deadlines, faults,
    aggregations)
  • Ability to distinguish roles and assign them the
    various tasks
  • Unambiguous graphical representation of the
    language
  • Transaction model for process undo
  • Ability to specifying how process instances will
    be triggered and identified through their
    execution
  • Ability to specifying the characteristics of
    business process (QoS)
  • Language should not mix in details of
    communication protocols.
  • 1, 2, 3 Reflection of business process
  • 4, 5, 6 Automating of business process between
    cooperating organization
  • 7 Right level of abstraction

9
Process Modelling Methodologies (3)
  • Traditional methodologies
  • Flow Charts
  • DFD Data Flow Diagrams
  • CFD Control Flow Diagrams
  • FFBD Function Flow Block Diagrams
  • Gantt/PERT Diagrams
  • IDEF (IDEF0, IDEF3)
  • Modern methodologies
  • XPDL
  • BPML
  • UML 2.0
  • BPEL4WS
  • BPSS

10
WorkFlow Model
  • Workflow model is a description of a business
    process in sufficient detail
  • that it is able to be directly executed by a
    workflow management system.
  • WorkFlow models contain
  • Computing elements processes/tasks/activities
  • Coordinating elements control
    structures/logical connectors
  • Some common control structures
  • Sequence,
  • Choice,
  • Parallelism,
  • Joins (AND, OR, XOR),
  • Splits (AND, OR, XOR).

11
WorkFlow Patterns
  • The research work of Wil van der Aalst, Arthur
    ter Hofstede, Bartek Kiepuszewski
  • and Alistair Barros (Eindhoven University of
    Technology)
  • WorkFlow Patterns
  • Describe the behaviour of business processes,
  • Describe interaction between business processes,
  • Help developers in building business models
    efficiently,
  • Provide an effective way to document sound
    solutions,
  • Provide an effective way to compare process
    modelling methodologies
  • Define a set of requirements for WFMS to perform
    complex business processes,

12
WorkFlow Patterns - Overview
  • Basic Control Flow Patterns
  • Sequence
  • Parallel Split
  • Synchronization
  • Exclusive Choice
  • Simple Merge
  • Advanced Branching and Synchronization Patterns
  • Multi Choice
  • Synchronizing Merge
  • Multi-Merge
  • Discriminator
  • N-out-of-M Join
  • Structural Patterns
  • Arbitrary Cycles
  • Implicit Termination
  • Patterns with Multiple Instances
  • without synchronization
  • with a priori design time knowledge
  • with a priori runtime knowledge
  • without a priori runtime knowledge
  • State-based Patterns
  • Deferred Choice
  • Interleaved Parallel Routing
  • Milestone
  • Cancellation Patterns
  • Cancel Activity
  • Cancel Case

13
WorkFlow Patterns (1)
  • Basic control-flow patterns.
  • The first five patterns are fairly simple
    examples of process behaviour. They define the
    basic modelling patterns of business processes.
  • Pattern 5 Simple Merge.
  • Two or more alternative branches come together
    without synchronization.

14
WorkFlow Patterns (2)
  • Advanced branching and synchronisation patterns.
  • The next five patterns describe more complex
    ways of splitting and joining the flow of a
    business process.
  • Pattern 9 - Discriminator
  • Wait for one of the incoming branches to
    complete before activating the subsequent
    activity. From that moment on wait for all
    remaining branches to complete and "ignore them

15
WorkFlow Patterns (3)
  • Structural patterns.
  • The two patterns in this group cover such
    behaviour as looping and the independence of
    separate process paths.
  • Pattern 11 - Arbitrary Cycles
  • One or more activities can be done repeatedly.

16
WorkFlow Patterns (4)
  • Patterns involving multiple instances.
  • The following four patterns describe how
    multiple instances or copies of activities are
    created. In some cases, the patterns can be
    handled by standard looping patterns.
  • Pattern 14 - Multiple Instances With a Priori
    Design Time Knowledge
  • For one process instance an activity is enabled
    multiple times. The number of instances of a
    given activity for a given process instance is
    known at design time. Once all instances are
    completed some other activity needs to be
    started.

17
WorkFlow Patterns (5)
  • State-based patterns.
  • The three patterns in this group define how the
    behaviour of a business process may sometimes be
    affected by factors outside the direct control of
    the process engine. Typical workflow systems
    focus only on activities and events and not on
    states.
  • Pattern 19 - Milestone
  • The enabling of an activity depends on the case
    being in a specified state. The activity is only
    enabled if a certain milestone has been reached,
    which did not expire yet .

18
WorkFlow Patterns (6)
  • Cancellation patterns.
  • The following two patterns show how the
    completion of one activity may cause the
    cancellation of an activity or group of
    activities. The occurrence of an event (e.g., a
    customer cancelling an order) may lead to the
    cancellation of activities.
  • Pattern 20 Cancel Activity
  • An enabled activity is disabled, i.e. a thread
    waiting for the execution of an activity is
    removed.

19
WorkFlow Patterns - Comparison
20
Formal Models
  • PAIS (Process-Aware Information Systems)
  • Process-based
  • WFMS (Work Flow Management Systems)
  • BPMS (Business Process Management Systems)
  • Data-based
  • ERP (Enterprise Resource Planning)
  • B2B (Business-to-Business)
  • CRM (Customer Relationship Management)
  • Foundations for PAISs
  • State-based
  • Petri Nets (Carl Adam Petri)
  • Event-based
  • Pi Calculus (Robin Milner)

21
Petri Nets (1)
  • Petri nets were invented by Carl Adam Petri in
    1966
  • Petri nets are a process model technique
  • Petri nets are based on directed bipartite graphs
  • Petri nets are a graphical language
  • The semantics is defined formally
  • State can by modelled explicitly in a Petri nets
  • Petri nets based analysis techniques can be used
    to determine the correctness of a process design
  • Vendor independent

22
Petri Nets (2) - Definition
  • A Petri Nets (PN) comprises places, transitions,
    and arcs
  • Places are system states -
  • Transitions describe events that may modify the
    system state -
  • Arcs specify the relationship between places -
  • Tokens reside in places, and are used to specify
  • the state of a PN
  • Relationship between two places is not allowed
  • Relationship between two transition is not allowed

23
Petri Nets (3) - Example
Transition SWITCH OFF
Place OFF
Place ON
Transition SWITCH ON
Transition (task) is enabled if each input place
contains at least one token. An enabled
transition may fire. Transition consumes one
token from each input place and produces one
token in each output place
24
Petri Nets (4) WorkFlow blocks
25
Petri Nets (5) Triggering
  • A trigger is an external condition which leads to
    the execution of an enabled
  • transition (task).
  • Automatic enabled task is triggered by an
    application
  • User enabled task is triggered by a user
  • Message enabled task is triggered by external
    event fax, email etc.
  • Time enabled task is triggered by a clock

26
Petri Nets (6)
  • Classical Petri nets
  • Ability to model states, events, conditions,
    synchronization, parallelism, choice and
    iteration
  • High-level Petri nets
  • Extension with colour to model data (CPN)
  • Extension with time,
  • Extension hierarchy to structure large models

27
Pi Calculus (1)
  • Pi calculus was invented by Robin Milner in1980
    (Calculus of
  • communicating systems)
  • Theory of mobile systems (processes)
  • Pi calculus is based on textual description
  • The semantics is defined formally
  • Everything in pi calculus is a process
  • Computation and communication informatics is a
    process
  • Integer, string, object, workflow, procedures,
    computational entity, service can be considered
    to be an abstract data type called a process.
  • No limitation in modelling business process
  • Business process ? Flow of work only

28
Pi Calculus (2) - Definition
  • In Pi Calculus, every process participant is
    given unique Name (Name is a central notation of
    Pi Calculus)
  • Connection between named participants represent
    dynamic capability and behaviour of any given
    process, at any point in time
  • In Pi Calculus algebra names represents channels
  • Channel can act both as transmission medium and
    as transmitted data
  • Communication is done on complementary channels
  • Pair of processes interact with each other by
    sending and receiving named messages in a
    synchronized way
  • The contents of messages are also channels

29
Pi Calculus (3) Example
30
Pi Calculus (4) - Syntax
  • The set of pi processes is defined by
  • Summation Process Px i guarded by the action ?x
  • 0 denote the empty sum.
  • ?.P denotes the singleton sum.
  • x(y) (input) receive names along x,
    parameterised by distinct list y x ltzgt
    (output) - sends list of names z along x
  • ? denotes unobservable action
  • Composition - P1P2 parallel composition
  • Restriction vxP make name x local to P
  • Replication - !P arbitrary composition of P

31
Pi Calculus (5) - Syntax Example
  • The output process A can send the list of names x
    via the name b, and continue as 0
  • The input process B binds the list of distinct x
    in B and executes unobservable action in B. It
    can receive any list of names via b (this names
    will be substitute to x)

32
Pi Calculus (5) WorkFlow mapping
  • Each workflow activity is mapped to a pi calculus
    process with pre and post conditions
  • Precondition wait for event
  • Postcondition generate event

33
WorkFlow Patterns - Comparison
34
SBA WorkFlow (1)
  • Process model
  • Business process model
  • Implementation model
  • Business model
  • Right level of abstraction for business users
  • Graphical representation
  • Process modelling methodology covering all
    workflow patterns
  • Implementation model
  • Hierarchy of processes
  • Process connection schema

35
SBA WorkFlow (2)
  • Each process is an object with formal attribute
  • Each process has one definition and many instance
  • Each process is associated with a state
  • Each process can have pre and post condition for
    execution
  • Each process can be executed parallel or
    sequential
  • ECA approach, more Pi calculus than Petri nets
  • Processes can be structured by hierarchy of
    processes
  • Connection can be modelled by connection schemas

36
SBA WorkFlow (3)
  • Hierarchy of processes
  • Describe structure of nested processes as SBA
    objects with state
  • Hierarchy can be built on the basis of business
    process model (ex. BPMN)
  • Each process can be executed independently and
    parallel on the same level in hierarchy
  • Each process can be executed according to pre and
    post condition
  • Processes can be queried by recursive SBQL
    queries
  • Pre and post condition can be SBQL query

37
SBA WorkFlow (4)
  • Process connection schema
  • Describe connection between processes as SBA
    updatable views with state
  • Schema can be built on the basis of business
    process model (ex. BPMN)
  • Each hierarchy can have more than one connection
    schemas dynamic change of workflow, unique
    schema for user, role or organization on the same
    set of processes
  • Connection schema with ECA approach a la Pi
    Calculus
  • Each view has pre and post condition
  • Precondition wait for event
  • Postcondition generate event
  • Without schema processes can be executed ad-hoc
  • Connection schema enabled process to be executed
  • Querying connection schema gives answer which
    processes can be executed
  • Querying hierarchy gives answer which processes
    was executed or are executing

38
Thank You
Write a Comment
User Comments (0)
About PowerShow.com