business process modeling - polito.it · arbitrary cycles process modeling notations and workflow...

77
Business Process Modeling © Maurizio Morisio, Marco Torchiano, 2012-2017 Version 1.2.0 - 16/10/2017

Upload: others

Post on 30-May-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Business Process Modeling

© Maurizio Morisio, Marco Torchiano, 2012-2017

Version 1.2.0 - 16/10/2017

Page 2: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

BP Aspects

▪ Process flow

Process modeling– UML Activity Diagrams

– BPMN

▪ Information

Conceptual modeling– UML Class diagrams

– (Entity-Relationships)

▪ Interaction

Functional modeling– Use cases

3

Page 3: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

UML

▪ Unified Modeling Language

▪ Standardized by OMG

▪ Several diagrams

Class diagrams

Activity diagrams

Use Case diagrams

(Sequence diagrams)

(Statecharts)

Conceptual modeling

Process modeling

Functional modeling

Page 4: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Objectives

▪ Describe, as precisely as possible, a process (or workflow)

▪ Communicate, document, analyze, validate the workflow

▪ Implement (execute) it

Only formal notations allow this step

Page 5: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Issues

▪ Formal notations

Executable

But model can be very complex for high level of detail

▪ Semiformal

Not executable

But can be starting point for high level analysis

Page 6: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Notations

▪ Formal

UML Activity Diagrams

BPMN

BPEL

▪ Semi formal

IDEF0

Data Flow Diagrams

Page 7: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

UML ACTIVITY DIAGRAMProcess Modeling

Page 8: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Goal

▪ Capture

Activities

Rules

Responsibilities

Page 9: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

10

Activity Diagram

▪ Extension of Statechart Diagram used to represent temporal sequence of activities and data flow

▪ Used to represent workflow process, or the inner service logic of an algorithm or function, process

▪ Parallel process representation and synchronization (fork – join)

Page 10: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Action

▪ Represents a task or operation that can be performed by either a human or automatically by the IS

Page 11: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Terminal nodes

▪ Initial node

Represents the starting point of the process execution

Create a new token

▪ Final node

Indicate that the processing has completed

Destroy all tokens

Page 12: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Semantics

▪ A token flows through the diagram

▪ The token is created at the initial node

▪ The token comply with the process rules

▪ The token is eventually destroyed at end node

Page 13: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Semantics

▪ When a token arrives at an action

The action is enabled: can be performed

– The information systems informs the intended user she can start the action

No time is defined for starting the activity

– It starts when the user wishes

No duration is defined for the activity

– It takes as much time as the user needs

▪ The token can leave the action as soon as the activity is completed.

Page 14: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Basic patterns

▪ Sequence

▪ Parallel split

▪ Synchronization

▪ Exclusive choice

▪ Merge

▪ Multiple choice

Page 15: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Sequence

▪ An action in a process is enabled after the completion of a preceding action

Aka serialization

▪ It is the essential building block

Can be used to build a series of consecutive actions that take place in turn one after the other

Page 16: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Sequence

▪ The arc determines the order of execution

Page 17: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Sequence - Semantics

▪ A token flows through the diagram

▪ Following the arcs

▪ Stopping at actions

Performing actions

Page 18: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Parallel split

▪ From a certain point on a thread diverges into several parallel threads that can be executed concurrently

Aka fork, AND-split

▪ Represents

Actions taking place at the same time (concurrently)

Actions being performed without any specific order– Possibly even serialized

Page 19: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Parallel split

fork

Page 20: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Parallel split- Semantics

▪ When the token reaches the fork it is duplicated as many times as there are outgoing arcs

Page 21: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Synchronization

▪ Define a synchronization point or rendezvous

After a group of actions have been executed in parallel

▪ Before proceeding with further activities all the previous one must be complete

Page 22: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Synchronization

join

Page 23: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Synchronization- Semantics

▪ When one token per incoming arc has reached the join, they are merged into a single token

Page 24: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Exclusive choice

▪ A diversion of the thread into several alternative paths

Exactly one alternative is picked up and followed during execution

Aka conditional routing, decision

▪ Each path is characterized by a guard

Represent a condition that, when true, enable the execution of the corresponding path

Page 25: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Exclusive choice

Page 26: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Exclusive choice – Semantics

▪ The token follows exactly one of the outgoing arcs

Page 27: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Merge

▪ The convergence of two or more threads into a single one

Any incoming thread activates the outgoing path

Aka join

▪ No synchronization is performed

Page 28: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Exclusive choice

Page 29: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

The token getting to the merge proceeds to the only outgoing arc

Merge– Semantics

Page 30: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Multiple choice

▪ When several paths are available it is possible to chose one or more of them

If no path is chosen, we have an abnormal stop to the flow

Page 31: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Example

Page 32: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Structured processes

▪ Each action has exactly one input flow and one output flow

▪ Fork and Join must be coupled

▪ Decision and Merge must be coupled

Page 33: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Swimlanes

▪ Actions can be responsibility of different actors or roles

▪ A swimlane groups together all the activities of a specific actor

Assigning responsibilities is not always required

Typically it represents a refinement step

Page 34: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Swimlanes - Example

Page 35: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Swimlanes - Example

Page 36: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Swimlanes - Example

Page 37: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Prescriptive vs. Descriptive

▪ Initial goal: understand the procedure currently in place

Descriptive

▪ Next goal: provide guidance for defining IS-supported procedures

Prescriptive

▪ Advice: avoid unnecessary constraints

Page 38: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

EVENTS, OBJECTSAdditional features

Page 39: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Signals and Events

▪ Using an event that origins outside the process as a guard to proceed with the execution of a process

Temporal signal

Signal acceptance

Signal sending

Page 40: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Temporal signal

Page 41: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Signal acceptance

Page 42: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Signal sending

Page 43: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Signals – Example

Page 44: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Object nodes

▪ Indicate that an object node will be available at a specific point in the activity

Produced by an action

Consumed by an action

▪ The object is an instance of a class defined in the conceptual model

Or possibly a base type

Page 45: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Grade = 30

Object nodes

Page 46: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Arcs

Page 47: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

ADVANCED PATTERNS

Page 48: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Complex structures

▪ Complex activities

▪ Cycles / loops

▪ Arbitrary cycles

▪ Implicit termination

▪ Multiple choice

Page 49: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Complex action

▪ Represent a complex (sub-)process a single action

Call behavior

▪ The contents of the complex action can be represented in an additional diagram

Page 50: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Structured Loop

▪ One or more activities are repeated until a specific condition become true

▪ Realized by means of decision and merge nodes

First a merge node

Then a condition

Page 51: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Loop - Repeat

do {

read_item();

pick_item();

} while( more_items );

Page 52: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Loop - semantics

Page 53: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Loop - While

while( more_items ){

read_item();

pick_item();

}

Page 54: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Arbitrary cycles

▪ Loop that is unstructured or not block structured.

▪ That is, the looping segment of the process may allow more than one entry or exit point.

▪ Important for the visualization of valid, but complex, looping situations in a single diagram

Page 55: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Arbitrary cycles

PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS

12

Figure 24: WP #10: Synchronizing Merge—Business Process Diagram

Activity Diagram

The UML Activity Diagram uses a join node for the Synchronizing Merge pattern (see Figure 25). The join

node with a condition expression that controls how many Tokens must arrive from the incoming control flow before a Token will continue through the outgoing control flow.

Figure 25: WP #10: Synchronizing Merge—Activity Diagram, Variation 1

Comparison

As with the previous pattern, the comparison between the two notations is basically the same as for the

other types of flow control mechanism used in the workflow patterns. A Business Process Diagram uses variations of a diamond shape to indicate the appropriate behavior. An Activity Diagram uses either a

diamond or a bar for flow control. The merits of these mechanisms have been discussed above.

STRUCTURAL PATTERNS

The two patterns in this group cover such behavior as looping and the independence of separate process paths.

WORKFLOW PATTERN: ARBITRARY CYCLES

The Arbitrary Cycle pattern is a mechanism for allowing sections of a process to be repeated—it is a loop. This pattern allows looping that is unstructured or not block structured. That is, the looping segment of

the process may allow more than one entry or exit point. This pattern is important for the visualization

of valid, but complex, looping situations in a single diagram. Notations that allow only block structured loops would not be able to display the entire process in a single diagram or process level or would dis-

tribute the behavior in a non-intuitive manner.

Business Process Diagram

It is possible to create an Arbitrary Cycle pattern within a Business Process Diagram by connecting Se-

quence Flow to upstream activities (see Figure 26).

Figure 26: WP #11: Arbitrary Cycles—Business Process Diagram

Page 56: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Implicit termination

▪ A specific path of a process can be concluded without other parallel paths be required to end as well.

▪ The normal case require the whole process to end when any end node is reached.

Page 57: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Implicit termination - semantics

Only one path is terminated

Page 58: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Explicit termination - semantics

ALL path are terminated. i.e.

the whole process is terminated

Page 59: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Structured Discriminator

▪ Convergence of two or more branches such that the first activation of an incoming branch results in the subsequent activity being triggered while subsequent activations of remaining incoming branches are ignored.

Page 60: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Structured Discriminator

Activity Diagram0 2014/10/22 powered by Astah

Activity Diagram0act

Previous

action

Discriminator

Next

action

Discriminator 2014/10/22 powered by Astah

Discriminatoract

Alternative 1 Alternative 2

Page 61: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Deferred choice

▪ A divergence point in a process where one of several possible branches should be activated.

▪ The actual decision on which branch is activated is made by the environment and is deferred to the latest possible moment.

Page 62: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Deferred choice

Choice 2014/10/22 powered by Astah

Choiceact

< < signal receipt> >

Signal 1

< < signal receip t> >

Signal 2

Deferred Choice 2014/10/22 powered by Astah

Deferred Choiceact

Previous

Action

Choice

Option 1 Option 2

[signal 2 ][signal 1 ]

Page 63: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

Free Tools

▪ Argo UML

▪ Astah community

▪ Star UML (win)

Graphical editors

Some support to translate to java

No support to execute activity diagrams

Page 64: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

References

▪ OMG UML web site http://www.uml.org

▪ M. Fowler, UML Distilled, Addison-Wesley

▪ N. Russell et al. WORKFLOW CONTROL-FLOW PATTERNS A Revised View http://www.workflowpatterns.com/documentation/documents/BPM-06-22.pdf

▪ N.Russel et al. On the Suitability of UML 2.0 Activity Diagrams for Business Process Modelling http://www.workflowpatterns.com/documentation/documents/UMLEvalAPCCM.pdf

▪ Workflow Patterns web site http://www.workflowpatterns.com

Page 65: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

IDEF

Page 66: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

67

IDEF

▪ Integrated Computer-aided Manufacturing Definition

▪ Approach of choice in the 1990s (have been around for over 25 years)

▪ Only one compliant with Federal Information Processing Standards (FIPS)

FIPS Publication 183

Page 67: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

68

IDEF

▪ IDEF refers to a group of methods, each of which fulfills a specific purpose

IDEFØ, for example, is used to model an organization's functions

IDEF1x is used for DB modeling

Page 68: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

69

IDEFØ

▪ “Box and arrow" graphics

function as a box

interfaces to or from the function as arrows entering or leaving the box

▪ Context diagram (main)

▪ Constraint diagrams (sub)

▪ Decomposition

Page 69: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

70

IDEFØ - Example

Page 70: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

71

IDEFØ - Decomposition

Page 71: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

DFD

Page 72: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

73

DFD

▪ Data Flow Diagram

Yourdon and Coad

Gane and Sarson

Page 73: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

74

DFD - Decomposition

▪ Initially a context diagram is drawn, which is a simple representation of the entire system under investigation

▪ This is followed by a level 1 diagram, which identifies major business processes at a high level

▪ These processes can then be analyzed further with level 2 diagrams

▪ And so on…

Page 74: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

75

DFD - Objects

▪ Process

A process is a unit of work that operates on the data

▪ Data flow

A data flow is a named flow of data through a system of processes

▪ Data store

A data store is a logical repository of data

▪ External entity

An external agent is a source or destination of data

Page 75: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

76

DFD – Example

EnquiriesDeposit & Withdrawals

2 Counter

Externalentity

Account info

Data flow

Data storeD persistent digital storageT temporary digital storage

Account info

Process

Banking process maintaingcustomer accounts

Account detailsD2

Customer

Page 76: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

77

DFD – Example II

Data flow

Data flow

External entity

Data store

Process

Page 77: Business Process Modeling - polito.it · Arbitrary cycles PROCESS MODELING NOTATIONS AND WORKFLOW PATTERNS 12 F igu re 24: W P # 10: S yn ch ron izin g M erge³ B u sin ess P rocess

78

DFD - Rules

▪ Data flows are allowed between

different external entities

processes and external entities

processes and data stores

▪ Data flows are not allowed between

external entities and data stores

one data store and another