workflow and business process modeling with uml activity diagrams
TRANSCRIPT
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