11 BPMN Best Modeling Practices Part 2 - Good e-Learning · PDF fileThese best practices can...
Transcript of 11 BPMN Best Modeling Practices Part 2 - Good e-Learning · PDF fileThese best practices can...
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BPMN Series
G o o d e - L e a r n i n g R e s o u r c e s : : w w w . g o o d e l e a r n i n g . c o m / d o w n l o a d s
BPMN 2.0 Best Modeling Practices – Part 2
Good e-Learning’s complete guide to BPMN 2.0
by Gregor Polančič
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
Introduction
Business process model and notation (BPMN) definesa meta-model (i.e. abstract syntax) and a notation (i.e.visual process elements and rules about how to usethem) for creating business process diagrams andexecutable process models.
However the approach (i.e. “how to use BPMNelements in business process diagrams”) and style (i.e.“how to create unambiguous diagrams”) are out ofthe scope of BPMN specification.
This is the second part of the slides, which address the modeling ‘style’ by presenting four best practices that should be followed when creating BPMN diagrams.
These best practices can be obtained from the book ‘BPMN Modeling and Reference Guide. Future Strategies Inc., Lighthouse Pt, FL, 2008.’
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#7: Use ‘OR’ gateways in pairs (1/2)
When using an inclusive gateway-based branch (i.e. OR split), the number of active outgoing paths can range from ‘zero’ to ‘all’
A way to avoid unexpected behavior when process paths converge is to use these type of gateways in pairs (divergence – convergence)
Cond 2
Cond 1
Cond 3
Number of active
outgoing flows?
Task
When process paths converge in anuncontrolled way, a task may be performed a
different number of times!
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#7: Use gateways in pairs (2/2)
Cond 3
Cond 2
Cond 3
Task 1
Task 2
Task 3
Task 4
Task 5
Cond 3
Cond 2
Cond 3
Task 1
Task 2
Task 3
Task 4
Task 5
In this diagram Task 5 will be performed only once, because the conditional
flows converge in a controlled way
WARNING- unexpected behavior. In this diagram Task 5 will be performed
as many times as the true conditions that exist
in an inclusive branch
Note that an OR gateway join is like
an AND gateway join (synchronization)
except that it ignores incoming sequence flows that are not
enabled
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#8: Modeling complex gateways (1/2)
The complex gateway is primarily used to model complex synchronization behavior
There are many patterns that can be performed with a complex gateway, for example:
• typical inclusive gateway behavior (i.e. accepting all active incoming flows)
• batching of multiple tokens
• accepting tokens from some paths but ignoring the tokens from others
Since the gateway looks the same for each of these patterns, it is best practice to use a text annotation to inform the reader about the complex synchronization behavior that is occuring
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#8: Modeling complex gateways (2/2)
Require 2 tokens to continue
Require 3 tokens to continue
If you use this text annotation, the process will continue, since there
are two tokens ready at the input of the complex gateway
When using this text annotation, the process will wait for the third token because there are only two tokens ready at the input of the
complex gateway
Without using any text annotation, the process behavior will be unclear
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
Boundary Timer Events
Data objects can be connected to ‘item aware elements’ (e.g. activities and events) in two ways:
• by using directed associations between item aware elements and data objects or
• by associating data objects with sequence flows
Whilst the second approach is less complex, it should be avoided because the resulting sequence flow object could be a gateway
Task 1 Task 2
Data Object
Task 1 Task 2
Data Object
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#9: Associating data objects with sequence flows (2/2)
A best practice in this scenario is to use directed associations to target activity.
Task 1
Cond A
Cond B
Task 2
Task 3
Data ObjectIt is unclear if a data object is required for Task 2, Task 3 or both.
Task 1
Cond A
Cond B
Task 2
Task 3
Data ObjectIn this diagram it is
clear that the target of data object is task 2
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
BP#10: Modeling input and output sets
An input (output) set is a collection of data (documents) that is required to start an activity
A best practice here, if there is more than one input, is to pick a point on the boundary of an activity and ensure that all the inputs that belong to a single input set connect to that point
The same pattern applies when modeling output sets
Review report
Report – Part 1
Report – Part 2
Full report1st
input set
2nd
input set
The activity will be ready to perform as soon one input set is complete.
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
Summary
These slides presented four best practices that should help decrease the ambiguity and increase the usefulness of your BPMN diagrams
These best practices can be summarized in the following way:
• Inclusive branches can cause unpredictable behaviors- so use OR gateways in pairs.
• Complex gateway behavior can be configured- so use comments to define their behavior in specific situations
• Make sure you adjust your diagram to present information flows and data sets (collections) in an unambiguous way
BPMN Series Timer Events – Best Practices and Common Mistakes
© Good e-Learning 2014. All rights reserved.
Free Resource Librarywww.goodelearning.com/downloads
@goodelearning /goodelearning /company/good-e-learning
No part of this publication may be reproduced, resold, stored in a retrieval system, or distributed in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior permission of the copyright owner
Such requests for permission or any other comments relating to the material contained in this document may be submitted to: [email protected]