Workflow and Business Process Modeling with UML Activity Diagrams

Post on 12-Sep-2021

6 views 0 download

Transcript of Workflow and Business Process Modeling with UML Activity Diagrams

Workflow and Business Process Modeling gwith UML Activity Diagrams

April 17, 2008

1

Ab t T d ’ S i

Your input

About Today’s Seminar

Your inputPollsQuestions

This session will be recorded

2

I t d tiIntroductions

Boston University Corporate Education CenterBoston University Corporate Education CenterToday’s speaker: Dr. Martin Schedlbauer

3

A dAgenda

This webinar will show:This webinar will show:How UML Activity Diagrams are used to effectively visualize workflows

4

D fi iti W kfl M d lDefinition: Workflow Model

A workflow model is a visual representation of the flow of work in a business area Workflow modelsa business area. Workflow models are used to document how work processes are carried out, and toprocesses are carried out, and to find opportunities for process improvement.

5

BABOK, v1.6, Section 5.13.7.1

W kfl M d l C tWorkflow Model: Components

A workflow model typically has the followingA workflow model typically has the following components:

Activities (Tasks)Sequential FlowsDecision PointsConcurrent FlowsSwimlanes (Partitions)AnnotationsTerminals

6

TerminalsStructural ElementsData and Information Flows

R di ith DiRecording with Diagrams

Diagrams are a good way to record informationDiagrams are a good way to record information and communicate insights visuallyUnified Modeling Language:

a standard, industry-accepted notationmaintained by the Object Management GroupISO and ANSI standardISO and ANSI standardWorkflow modeling: Activity Diagram

Alternative notations for process modeling:

7

ANSI/ISO flow chartsBPMN

Wh B ild M d l ?Why Build Models?

Models particularly visual ones are developed inModels, particularly visual ones, are developed in order to:

document a business processidentify weaknesses in the processevaluate improvements to the processcommunicate business logic to stakeholdersgaid in reviews of requirementsgain consensus among stakeholdersguide interviews of stakeholders

8

guide interviews of stakeholders

M d l El tModel Elements

Even though our focus is on visual modeling aEven though our focus is on visual modeling, a workflow model consists of:

one or more diagramssupporting text

narrative of processdefinitionsdetailed business rules

matricese.g., CRUD matrices, decision tables

9

M d l P tiModel Perspective

Process and workflows are modeled either as:Process and workflows are modeled either as:current state (“as-is”)future state (“to-be”)

They describe either a:business process

reaction to an event external to organization or businessreaction to an event external to organization or businesssystem process

interaction with a system

Diagrams must contain this information to be

10

Diagrams must contain this information to be useful and readable

G tti St t dGetting Started

Describe the main flow (normal scenario) and itsDescribe the main flow (normal scenario) and its pre- and post-conditionsIdentify alternate and exception flows (variations) and their post-conditionsDetermine start and end of the workflow, but don’t focus on sequencing immediatelydon t focus on sequencing immediatelyUse text initially, then turn narrative into a diagram (process visualization)

11

apply use case analysis for this part

A ti iti d UML S b lActivities and UML SymbolsEach step in the process is described as print loan request

f an activity (action)Activities are described with a verb-phrase

form

Simple Activity

e.g., print loan request formSequencing of activities is indicated with control flows (edges):

«automated»print loan request

form ( g )ideally, only one input and output flow per activity

«manual»prepare loanagreement

Interest Rate

Due Date

Activity with Stereotype

12

Due Date

Parameterized Activity

«manual»fill out loan request form

«manual»meet with student

Sh i W kfl St t & E dShowing Workflow Start & Endinitial

activity

fill out loan request form

activity

final

meet with student

finalactivity

there can only be one start for each workflow but multiple ends

Success

13

there can only be one start for each workflow, but multiple ends (success and failure)the control flow points from the initial activity icon to the first activity

B t P tiBest PracticesStakeholders often don’t know theirStakeholders often don t know their processesAsking for the “first step” may confuse themBetter approach:Better approach:

ask what happens during this processwhat tasks do have to be accomplished to achieve the process goalthe process goalDon’t focus on the order of stepsAfterwards, for each step ask them: what other step must be completed before this one can be

14

p pdone

Sh i P C ditiShowing Pre-Conditions

stereotype

«manual»fill out loan request form[student asks for loan]

pre-conditions

stereotype

«Pre-condition»{student is matriculated}

trigger

pre-conditions summarize the assumptions that the process designer makespre-conditions indicate constraints that must be true in order for the workflow to

15

be successfully completablea trigger is the external event that starts the processstereotypes are a UML mechanism for classifying constructs

Sh i P t C ditiShowing Post-Conditions

«manual»issue funds

«Post-condition»{funds issued; promissory note signed}

post-conditions summarize the outcome of the process

16

p pprimarily concerned about changes to data or outputcritical for testing

Sh i D i i /B hShowing Decisions/Branches

fill t l t f Guard conditions are placedfill out loan request form Guard conditions are placed into brackets, e.g., [not approved]Decision does not contain a

meet with student YES/NO question as would be done in a flow chartGuard conditions are simple narratives

Failure[not approved]

[loan approved]

narrativesGuard conditions must be mutually exclusiveGuard conditions can be

17

disburse funds

guard conditions route the flow

Guard conditions can be compound, e.g.,[approved AND not critical]

M lti B hMulti-Branches

A b h hA branch may have more than two outgoing control flows

write check[che ck]

There is no restriction, but if the conditions get too complex consider

issue cash frompetty cash

[ca sh]

[tran sfer]too complex, consider using chains of decisions

transfer credit to account

18

L i Ch k i t P llLearning Checkpoint: Poll

Which of the following can NOT be shown in anWhich of the following can NOT be shown in an activity diagram?

A. decisionsB lti l tiB. multiple actionsC. actorsD. notesE. none of the above

19

L i Ch k i t P llLearning Checkpoint: Poll

What is an advantage of UML-style guardWhat is an advantage of UML-style guard conditions compared to flow chart decisions with Yes/No outflows?

A h i t dA. much easier to readB. more than two outflowsC. compound conditionspD. more compact syntaxE. B and CF B C and D

20

F. B, C, and D

M i S bflMerging Subflows

D i i d

i h k[ h]

[check]Decision and merge symbols are the sameDecisions have multiple

t i fl

branch

issue cash from pettycash

write check[cash] outgoing flowsMerges have multiple incoming flows

cash UML 2 requires merges, but UML 1 did not

21i l t

merge

sign loan agreement

Alt t St lAlternate Style

In UML 1 x the mergeIn UML 1.x the merge is optionalSince the icon for

rite check[ h]

[che ck]

merge is the same as for branch, it can be visually confusing

issue cash from pettycash

write check[ca sh]

visually confusingColor can be used to disambiguate

22

sign loan agreement

B t P tiBest Practices

Build the workflows collaboratively withBuild the workflows collaboratively with your stakeholdersEach activity likely will lead to functional requirements and possibly rules orrequirements and possibly rules or constraintsDocument these insights in the requirements log or business rule catalogrequirements log or business rule catalogAugment activities with text narratives and other analysis work products, such as decision tables

23

decision tables

P titi i R ibilitiPartitioning ResponsibilitiesPartitions can be horizontal,

ti l b thvertical, or bothPartitions are labeled with the actor or workflow

ti i t h iparticipant who is responsible for carrying out the activities (tasks)If t h t kIf an actor has to make a decision, the branch icon must be shown in that actor’s partition

24

actor s partitionSwimlanes are an alternative mechanism

Hidi C l itHiding Complexity

write check[cash]

[check]

issue funds

issue cash from pettycash

Subflows have their own start and end

25

sign loan agreementown start and end nodes.

U d d StUnordered Steps

A set of steps that can bewrite check

A set of steps that can be done:

in any orderat the same time

fork

[loan request ]

at the same timeAll steps must complete before the activity after the join can start

optionalstep

sign loanagreement

sign receipt the join can startOptional steps within the fork/join can be indicated

26

with guard conditionsjoin

It tiIteration

Iterations are indicatedcreate student Iterations are indicated with expansion regionsThe “loop condition” is

ll i di t d ithDisbursement«iterativ e»

record for each disbursement

generally indicated with a noteStereotypes are used to

write check

indicate iteration semantics:

iterativesign loan

agreementsign receipt

[loan request ]

27

concurrentparallel

C t It tiConcurrent vs. Iterative

Iterative example:Iterative example:Subway: one sandwich at a time; goes through a preparation pipeline

C lConcurrent example:McDonalds: several sandwiches at a time

In concurrent processing the repeated tasks canIn concurrent processing, the repeated tasks can be carried out simultaneouslyParallel means that the tasks are done in

28

lockstep: unusual in business processes

28

L i Ch k i t P llLearning Checkpoint: Poll

In an activity diagram you would combine flowsIn an activity diagram you would combine flows that were previously separated by a decision using a:

AA. mergeB. forkC. joinjD. connectorE. none of the above

29

Obj t FlObject Flows

Object flows showObject flows show data that is generated and

write check

generated and consumed by activities

Chec k

Provides activity diagrams with

sign receipt

30

capabilities similar to DFDs

Obj t Di t C tiObject: Direct Consumption

The first activity produces theprint loan The first activity produces the object that the second activity requires as input

print loanagreementApproach I

Color can be used to clarify the diagram, but color has no semantics

Loan Agreement

semanticssign loan

agreement

31

Approach II print loanagreement

Lo anAgreement

sign loanagreement

Lo anAgreementAgreement Agreement

I di ti St t ChIndicating State Changesprint loan

The outcome of an activity may be a change in state (status) of an object rather

print loanagreement

state(status) of an object, rather than the creation of a new object

Loan Agreement[ne w]

objectsign loan

agreement

State

32

Loan Agreement[sig ned]

changed by previous activity

B t P tiBest Practices

A bj t fl i i t ti itAny object flowing into an activity must be generated somewhere.Any object generated by an activityAny object generated by an activity must be used somewhere.If an object is not used, then one could argue why would be important and would have to be shown.The structure of the objects

33

The structure of the objects (attributes, relationships, rules) are documented in a UML Class Diagram.

Si l & E tSignals & Events

Signals indicate that another process should start and runSignals indicate that another process should start and run while the current processes continuesThe name of the signal and the event must be the same

send signal

ier

d d process t k t

wait for event r

Cas

hi record order process order

take payment

34

event

Pre

pare process

orderfetch

ingredientsassemble sandwich

I t tibl R iInterruptible RegionsAn interruptible region contains a group of activities that can be interrupted.

Issue LoanIssue Loan

can ce l application

print loanagreement

sign loanagreement

issue funds

35

Oth I t t UML DiOther Important UML Diagrams

Use Case Diagram Diagrams areUse Case DiagramUser requirements

State Diagram

Diagrams are developed concurrentlyState Diagram

Complex rulesClass Diagram

concurrentlyIterative refinement is Class Diagram

Data requirementsSequence Diagram

criticalWe have studied:

36

Sequence DiagramComplex algorithms and procedures

Activity Diagram

36

UML M d li T lUML Modeling Tools

Enterprise Architect PoseidonEnterprise ArchitectSparx Systems, Ltd./$

Visual ParadigmVisual Paradigm/$$

PoseidonGentleware, Inc./$$

Visible AnalystVisible Systems/$$$Visual Paradigm/$$

Rational ArchitectIBM/Rational/$$$$

Altova Umodel 2008

Visible Systems/$$$

ArgoUMLTigris/FREE

VisionAltova Umodel 2008Altova/$$

MagicDrawNo Magic Inc /$$

VisionMicrosoft/$$

BOUMLOpen Source Software/FREE

37

No Magic, Inc./$$

Together ArchitectBorland/$$$

Open Source Software/FREE

StarUMLOpen Source Software/FREE

B t P tiBest Practices

Don’t use tools during collaborative sessions with stakeholders unless you knowstakeholders unless you know the tool really well and the stakeholders can “see youstakeholders can see you work”Use whiteboards to think; use

38

;tools to record

Upcoming classes and Q&AThank you for attending today’s webinar!Thank you for attending today s webinar!

Upcoming classes:BA114 M d l d D t Y P j t R i tBA114 - Model and Document Your Project Requirements

May 14 – Univ of Houston, Houston TXMay 21 – Waltham MAJune 11 Univ of Houston at Cinco Ranch Katy TXJune 11 – Univ of Houston at Cinco Ranch, Katy TXJune 18 – Teachers College/Columbia Univ, NY

For more information please call us at 1 800 BUtrain (288

39

For more information please call us at 1-800-BUtrain (288-7246) or visit us at: www.BUtrain.com