Michal Havey: Essential Business Process Modeling Chapter · PDF file ·...
Transcript of Michal Havey: Essential Business Process Modeling Chapter · PDF file ·...
1
TDT4250 - Model-driven Development of Information Systems, Autumn 2007
Process modelling languages
Michal Havey:
Essential Business Process Modeling
Chapter 3
+
some general background on modelling languages
2
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Modeling perspectives
A modeling perspective: What is important, what is
emphasizes, and what is ignored
What are the fundamental concepts?
What aspects are explicitly represented?
As nodes, relationships, or properties
What is visualized?
What is modeled first?
Different perspectives can use the same concepts
Can also potentially represent the same
3
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
7 perspectives to conceptual modeling
Structural – the elements a system is composed of
Functional – what the elements and system do
Behavioral – how the system of elements do it
Rule-oriented – constraints for the function
Object-oriented – collaborating objects
Social communication – human interaction
Actor/role-oriented - human behavior
4
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Modeling of workflow
Traditional transaction-oriented: Functional
IPO: Input-Process-Output (e.g. DFD, IDEF0)
Speech act-oriented: Social communication
Coordination through conversations
Role-oriented: Role-oriented
RIN and RAD;
System-thinking/System dynamics: Behavioural
For understanding and simulation, not execution
Constraint-based: rule-oriented
5
TDT4250 - Model-driven Development of Information Systems, Autumn 2007
The Scenic Tour of Process Theory
Havey: Chapter 3
6
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Why process theory?
It is mentioned frequently in connection with BPM,
even in non-academic material.
BPM is relatively immature and benefits from the
ideas and strictness of theory.
Both BPM and Web Services Choreography are
focused on the construction of complex participant
conversation.
7
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Family Tree
-Calculus and the Petri net provide the theoretical underpinnings for most of the BPM standards
-Calculus BPML
XLANG
WSCI
WS-CDL
Petri net BPMN
YAWL
WSFL
8
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q 8
-Calculus background and history
-calculus, the mathematics of sequential computing
Church, 1930s (mathematical semantics by Scott, 1969)
Functional programming languages (e.g. ML)
Type checking during development to prevent runtime errors
car_driven_by(aPerson), not car_driven_by(aCow)
Interactive, parallel, network, mobile computing
Calculus of Communicating Systems - CCS (Milner, 1980)
-calculus (Milner, 1990)
CCS with mobility (dynamic communication links)
C A
B D
C A
B D
sequential
actions
dynamic,
communicating
processes
9
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Motivation for -Calculus
Explain how computer systems behave
The essential core, described with mathematics
Education
Predict behaviour of a system, e.g. during design
Prove that a system fulfils its requirements
Prevent errors, deadlocks, leaks
Replace components (test that they behave in the same way)
Tools for automatic inference
A common language with precise, formal meaning
No room for interpretation or misunderstanding
Uncover ambiguity and incompleteness in system specifications
Execution and simulation
Especially important for security and safety critical systems
11
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Example: Mobile Phone
http://www.fairdene.com/picalculus/pi-c-tutorial.pdf
12
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q 12
Example: Business Process
Zhao, Interorganizational Workflow and E-Commerce Applications, HICSS 2002.
13
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
-Calculus Vocabulary
Symbol Name Meaning
a, b, c, x, y, ... Name Value, channel , process etc.
<x> Output Send data x on channel a
a(x) Input Receive data from channel a, bind it to name x
. Prefix P.Q means do P then do Q (in sequence)
P | Q Parallel Do P and Q concurrently
P + Q Choice Do either P or Q, not both
( x) P Restriction The name x is bound inside P, and it is not known by
anyone outside P (encapsulation)
!P Replication Do P any number of times in parallel (!P = P | !P)
0 Nil process Do nothing
Internal
action
Proceed without interaction with the environment
14
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
The -Calculus and BPM
Three key features:
Control flow
Sequential, parallel, conditional, and recursive
Message-based communication
Clean syntax and semantic for inbound an outbound
messaging
Mobility
Dynamic addressing
Most distinctive feature of the -Calculus
15
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
-Calculus for Business Processes
Numerous process modelling standards
Microsoft XLANG BPEL
Based on asynchronous -calculus
Business Process Management Initiative (BPMI)
“Workflow is just a -process”
Workflow Management Coalition (WfMC)
“Does better math lead to better business processes?”
But is not applied in the specifications of the standards
Clearly defined syntax, incomplete semantics
Processes consist of interacting parallel agents
Conventionally, processes are thought of as series of activities
18
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
-Calculus for Web Services
Dynamic composition of functionality available over the web
Challenges
Security and trust
Predictable quality of service
Service contracts
Orchestration and choreography in business processes
Publish service UDDI
Find service UDDI
Web Service Conceptual Architecture (WSCA 1.0), IBM
Bind to service
Invoke service
Service
requester
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
Service description (WSDL)
Service
registry
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
Service description (WSDL)
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted.
Service Service
provider
20
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Petri Nets
A formal graphical modeling language
Design systems as diverse as train track switches
and business processes
Helps to describe the semantics of process
control-flow.
Saturates the literature on process patterns
21
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Petri Nets (behavioral perspective)
The Petri nets original conception, the classical
net, consist of the following symbols.
Place (Circles)
Transition (Rectangles)
Arc (Arrows)
Token (black dots)
Newer variants supports larger and more complex
processes
Color (typing of tokens)
Hierarchy (decomposition)
24
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
AND-split vs. OR-split in Petri-net
25
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
State Machines and Activity Diagrams
State machine family tree
A guiding light to the
practice of process
design
Based on more rigorous
and more expressive
system
26
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Example: STD/statecharts
27
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Activity diagrams
The UML Activity diagram use Petri net token
semantic (new from UML 2.0, version 1.0 had a
different type of state-based semantics).
It is dualistic.
Activity diagrams have not gained much support in
the BPM community
30
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Swimlanes for role-oriented modelling
30
34
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Event-Driven Process Chains
Better success than other flowchart approach
Different syntax and semantics than UML Activity
diagram
Multiple-view approach
Often used in connection to ERP-systems
(especially SAP)
35
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Event Process Chains - Notation
Control flow
Accounting Accounting
XOR XOR XOR XOR
Approve
Purchase
requisition
Purchase
Requisition
created
Purchasing
PR approved
And released
PR not
approved
Function
Organizational unit
State/event
Logical operator (XOR, AND, OR)
37
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Social Communication perspective
Description of the (social) communication
structure
Also called the language action perspective (LAP)
Main concepts: Speech Acts and Conversations
Based on philosophy of language
(Austin, Searle, Habermas)
Different types of speech acts which are put
together into conversations
Specifically used in workflow modeling and
CSCW/Groupware
40
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Categories of Speech Acts (Searle)
Directive: ”Close the window”
Commissive: ”I shall close the window”
Assertive: ”The window is closed”
Declarative: ”I hereby Pronounce you Man and
Wife”
Expressive: ”Congratulations”
41
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Winograd & Flores
Conversation for Action
44
TDT4250 - Model-driven Development of Information Systems, Autumn 2009
Q
Summary
Different perspectives focus on different aspects
Formal models of behavior
precision, completeness, analysis, simulation
-calculus, Petri-Nets, Statecharts, UML Activity diagrams
Business process diagram languages
ease of use, coverage of domain, support for implementation
BPMN, EPC
Social interaction
human behavior (intention), rather than
system behavior (mechanical)
Speech Act and conversation theory