business process modelling via bpmn, session i

50
BUSINESS PROCESS MODELLING via BPMN

Upload: amirhossein-aghdassi

Post on 12-Apr-2017

510 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Business Process Modelling via BPMN, Session I

BUSINESS PROCESS MODELLING via BPMN

Page 2: Business Process Modelling via BPMN, Session I

WHO IS AMIRHOSSEIN?

• Software Designer and Analyst, 2009-2014

• Software Development Consultant / Instructor, 2014-2015

• Founder of “Espersa Ins.”, 2015-Now

Page 3: Business Process Modelling via BPMN, Session I

AGENDA• Introduction to Business Process

Modelling

• Elements of BPMN

• Events, activities and gateways

• Four main structural blocks

• Information artifacts

• Resources: pools and lanes

• Process decomposition and reuse

• Your process model

Page 4: Business Process Modelling via BPMN, Session I
Page 5: Business Process Modelling via BPMN, Session I

MODELLING?

Page 6: Business Process Modelling via BPMN, Session I

– George E.P. Box (1919-2013)

“Essentially,all models are wrong;but some are useful.”

Page 7: Business Process Modelling via BPMN, Session I

BUSINESS PROCESS MODEL AND NOTATION (BPMN)

• Released by Object Management Group (OMG)

• BPMN 2.0: March 2011

• Similar to UML’s Activity Diagrams

Page 8: Business Process Modelling via BPMN, Session I

Fairly complex language: over 100 symbols

but

Easy to learn: A handful of symbols cover many of modelling needs

Page 9: Business Process Modelling via BPMN, Session I

BASIC ELEMENTS

Event Activity(Task)

SequenceFlow Gateway

Page 10: Business Process Modelling via BPMN, Session I

SIMPLE ORDER MANAGEMENT

Ship product(s)

Receive payment

Archive order

Confirm order

Order received Order fulfilled

Page 11: Business Process Modelling via BPMN, Session I

BRANCH & MERGE

Split Gateway Join Gateway

Page 12: Business Process Modelling via BPMN, Session I

TYPES OF GATEWAYS

XOR(One)

AND(All)

OR(Some)

Page 13: Business Process Modelling via BPMN, Session I

EXCLUSIVE DECISIONUSING XOR GATEWAYS

Resend to customer

Check for mismatch Park invoice

Post invoice

Block invoice

Invoice received Invoice handled

No mismatch(es)

Mismatch(es), butcan be corrected

Mismatch(es), andcan not be corrected

Page 14: Business Process Modelling via BPMN, Session I

PARALLEL EXECUTIONUSING AND GATEWAYS

Proceed to security check

Pass security

screening

Pass luggage screening

Boarding passreceived

Departure levelreached

Proceed to depart. level

Page 15: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENTMORE ELABORATED VERSION

Get address

Ship product(s)

Archive order

Send invoice

Receive payment

Retrieve product(s)

Confirm order

Check availability

Reject order

Orderrejected

Orderreceived

Orderfulfilled

Page 16: Business Process Modelling via BPMN, Session I
Page 17: Business Process Modelling via BPMN, Session I

EXERCISE IASSESSING LOAN APPLICATIONS

A loan application is approved if it passes two checks:I. The applicant’s loan risk assessment, done automatically by a systemII. The appraisal of the property for which the loan has been asked, carried

out by a property appraiser.

The risk assessment requires a credit history check on the applicant, which is performed by a financial officer.

Once both the loan risk assessment and the property appraisal have been performed, a loan officer can assess the applicant’s eligibility. If the applicant is not eligible, the application is rejected, otherwise the acceptance pack is prepared and sent to the applicant.

Page 18: Business Process Modelling via BPMN, Session I

کار کالسی اول ارزیابی درخواست‌های وام

یک درخواست وام با گذراندن شرایط زیر پذیرفته می‌شود: (i .برآورد ریسک وام به متقاضی که به صورت اتوماتیک توسط سیستم احنام می‌شود(ii .تعیین قیمت وثیقه که توسط ارزیاب ملک احنام می‌شود

برآورد ریسک نیازمند استعالم سابقه‌ی متقاضی است که توسط مسئول امور مالی صورت می‌پذیرد.

زمانی که تعیین قیمت وثیقه و برآورد ریسک احنام شد،مسئول اعطای وام می‌تواند واجد نباشد، شرایط واجد متقاضی که صورتی در کند. مشخص را متقاضی بودن شرایط برای و شده صادر وام حواله‌ی صورت، این غیر در می‌شود؛ رد متقاضی درخواست

متقاضی ارسال می‌گردد.

Page 19: Business Process Modelling via BPMN, Session I
Page 20: Business Process Modelling via BPMN, Session I

EXERCISE IIORDER DISTRIBUTION

An online store has two warehouses that store different products in TehranPars and Ekbatan.

When an order is received, it is distributed across these warehouses: if some of the relevant products are maintained in TehranPars, a sub-order is sent there; likewise, if some relevant products are maintained in Ekbatan, a sub-order is sent there.

Afterwards, the order is registered and the process completes.

Page 21: Business Process Modelling via BPMN, Session I

کار کالسی دوم توزیع سفارشات

کاالهای که دارد اکباتان و تهران‌پارس در بزرگ انبار دو آن‌الین فروشگاه یک متفاوتی را نگهداری می‌کنند.

زمانی که یک سفارش دریافت می‌شود، توزیع آن از این انبارها شروع می‌شود. اگر برخی از کاالهای سفارش داده شده در انبار تهران‌پارس باشد، یک زیرسفارش سفارش کاالهای از برخی اگر ترتیب، همین به می‌شود. فرستاده انبار آن برای داده شده در انبار اکباتان باشد، یک زیرسفارش برای آن انبار فرستاده می‌شود.

پس از آن، سفارش ثبت شده و فرآیند کامل می‌شود.

Page 22: Business Process Modelling via BPMN, Session I

INCLUSIVE DECISIONFIRST TRIAL

Forward to Ekbatan

Warehouse

Check order line-

items

Register order

Forward to TehranPars Warehouse

Forward to Ekbatan

Warehouse

Orderreceived

Ordercompleted

Only contains TehranPars products

Only containsEkbatanproducts

Contains both TehranParsand Ekbatan products

Forward to TehranPars Warehouse

Page 23: Business Process Modelling via BPMN, Session I

INCLUSIVE DECISIONSECOND TRIAL

Forward to TehranPars WarehouseCheck

order line-items

Register order

Orderreceived

Ordercompleted

Does not contains TehranPars products

Forward to Ekbatan

Warehouse

containsTehranPars products

Does not contains Ekbatan products

containsEkbatan products

Page 24: Business Process Modelling via BPMN, Session I

INCLUSIVE DECISIONUSING OR GATEWAYS

Check order line-

items

Forward to TehranPars Warehouse

Forward to Ekbatan

Warehouse

Orderreceived

Ordercompleted

Register order

Contain TehranPars products

Contain Ekbatan products

Page 25: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENT+ PRODUCT MANUFACTURING3.2 Branching and Merging 77

Fig. 3.12 The order fulfillment process diagram with product manufacturing

3.2.4 Rework and Repetition

So far we have seen structures that are linear, i.e. each activity is performed at mostonce. However, sometimes we may require to repeat one or several activities, forinstance because of a failed check.

Example 3.7

In the treasury minister’s office, once a ministerial inquiry has been received, it is firstregistered into the system. Then the inquiry is investigated so that a ministerial responsecan be prepared. The finalization of a response includes the preparation of the responseitself by the cabinet officer and the review of the response by the principal registrar. If theregistrar does not approve the response, the latter needs to be prepared again by the cabinetofficer for review. The process finishes only once the response has been approved.

To model rework or repetition we first need to identify the activities, or morein general the fragment of the process, that can be repeated. In our example thisconsists of the sequence of activities “Prepare ministerial response” and “Reviewministerial response”. Let us call this our repetition block. The property of a repeti-tion block is that the last of its activities must be a decision activity. In fact, this willallow us to decide whether to go back before the repetition block starts, so that thiscan be repeated, or to continue with the rest of the process. As such, this decisionactivity should have two outcomes. In our example the decision activity is “Reviewministerial response” and its outcomes are: “response approved” (in this case wecontinue with the process) and “response not approved” (we go back). To modelthese two outcomes, we use an XOR-split with two outgoing branches: one whichallows us to continue with the rest of the process (in our example, this is simply

Page 26: Business Process Modelling via BPMN, Session I

QUESTION

When should we use anOR-join?

Page 27: Business Process Modelling via BPMN, Session I

ABNORMALITIES3.2 Branching and Merging 75

Fig. 3.11 What type should the join gateway have such that instances of this process can completecorrectly?

liver a token to the OR-join. If the branch is active, the OR-join will wait for thattoken, otherwise it will not. Once all tokens of active branches have arrived, theOR-join synchronizes these tokens into one (similarly to what an AND-join does)and sends that token to its output arc. We call this behavior synchronizing mergeas opposed to the simple merge of the XOR-join and the synchronization of theAND-join.

Let us delve into the concept of active branch. Consider the model in Fig. 3.11,which features a join gateway with undefined type (the one grayed out with a ques-tion mark). What type should we assign to this join? Let us try an AND-join tomatch the preceding AND-split. We recall that an AND-join waits for a token to ar-rive from each incoming branch. While the token from the branch with activity “C”will always arrive, the token from the branch with activities “B” and “D” may notarrive if this is routed to “E” by the XOR-split. So if activity “D” is not executed,the AND-join will wait indefinitely for that token, with the consequence that theprocess instance will not be able to progress any further. This behavioral anomalyis called deadlock and should be avoided.

Let us try an XOR-join. We recall that the XOR-join works as a passthroughby forwarding to its output branch each token that arrives through one of its inputbranches. In our example this means that we may execute activity “F” once or twice,depending whether the preceding XOR-split routes the token to “E” (in this case “F”is executed once) or to “D” (“F” is executed twice). While this solution may work,we have the problem that we do not know whether activity “F” will be executedonce or twice, and we may actually not want to execute it twice. Moreover, if thisis the case, we would signal that the process has completed twice, since the endevent following “F” will receive two tokens. And this, again, is something we wantto avoid.

Page 28: Business Process Modelling via BPMN, Session I

REWORK / REPETITION

Prepare response

Investigate inquiry

Register inquiry

Review response

Inquiryreceived

Correspondanceaddressed

Responseapproved

Responsenot approved

Page 29: Business Process Modelling via BPMN, Session I
Page 30: Business Process Modelling via BPMN, Session I

EXERCISE IIIASSESSING LOAN APPLICATIONS

Once a loan application is received by the loan provider, and before proceeding with its assessment, the application itself needs to be checked for completeness.

If the application is incomplete, it is returned to the applicant, so that they can fill out the missing information and send it back to the loan provider.

This process is repeated until the application is found complete.

Page 31: Business Process Modelling via BPMN, Session I

MODELLING VIEWPOINTS

When?

Control

Which?

Data / Service / Product

What?

Function

Who?

Resource / Organisation

Page 32: Business Process Modelling via BPMN, Session I

INFORMATION ARTIFACTS

Data Object Data Store

[Annotation Group

Directed Association(Data Association) Undirected Association

Page 33: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENT+ ARTIFACTS

80 3 Essential Process Modeling

Fig. 3.14 The order fulfillment example with artifacts

from activity “Obtain raw materials from Supplier 1” to Raw materials, indicatesthat Raw materials is an output object for this activity. To avoid cluttering the dia-gram with data associations that cross sequence flows, we may repeat a data objectmultiple times within the same process model. However, all occurrences of a givenobject do conceptually refer to the same artifact. For example, in Fig. 3.14 Purchaseorder is repeated twice as input to “Check stock availability” and to “Confirm order”since these two activities are far away from each other in terms of model layout.

Often the output from an activity coincides with the input to a subsequent activity.For example, once Raw materials have been obtained, these are used by activity“Manufacture product” to create a Product. The Product in turn is packaged andsent to the customer by activity “Ship product”. Effectively, data objects allow usto model the information flow between process activities. Bear in mind, however,that data objects and their associations with activities cannot replace the sequenceflow. In other words, even if an object is passed from an activity A to an activity B,we still need to model the sequence flow from A to B. A shorthand notation forpassing an object from an activity to the other is by directly connecting the dataobject to the sequence flow between two consecutive activities via an undirectedassociation. See for example the Shipment address being passed from activity “Get

Page 34: Business Process Modelling via BPMN, Session I

QUESTION

Do Data Objects affect the token flow?

Page 35: Business Process Modelling via BPMN, Session I

QUESTION

Do we always need to model Data Objects?

Page 36: Business Process Modelling via BPMN, Session I
Page 37: Business Process Modelling via BPMN, Session I

EXERCISE IVASSESSING LOAN APPLICATIONS

When a claim related to a major car accident is evaluated, a clerk first retrieves the corresponding car accident report in the Police Reports database. If the report is retrieved, it is attached to the claim file. The claim file and the police report serve as input to a claims handler who calculates an initial claim estimate. Then, an “action plan” is created based on a “checklist”. Based on the action plan and the initial claims estimate, a claims manager negotiates a settlement with the customer. After this negotiation, the claims manager makes a final decision, updates the claim file to record this decision, and sends a letter to the claimant to inform him/her of the decision.

Please depict all relevant documents in the model.

Page 38: Business Process Modelling via BPMN, Session I

RESOURCES

• Active vs. passive resources

• Resource classes

Page 39: Business Process Modelling via BPMN, Session I

POOLS AND LANES

Page 40: Business Process Modelling via BPMN, Session I

RECRUITMENT

Page 41: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENT+ POOLS

Cus

tom

erS

uppl

ier

Check stock availability

Confirm order

Reject order

Send invoice

Ship goods

Place purchase

order

Purchaseorder

Order Rejection Notification

Order confirmationnotification

Invoice

Make payment

Shipment notification

Page 42: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENT+ POOLS AND LANES

Page 43: Business Process Modelling via BPMN, Session I

ORDER MANAGEMENT+ ARTIFACTS, POOLS AND LANES

843

EssentialProcess

Modeling

Fig.3.15

The

orderfulfillmentexam

plew

ithresource

information

Page 44: Business Process Modelling via BPMN, Session I
Page 45: Business Process Modelling via BPMN, Session I

EXERCISE VCLAIMS HANDLING PROCESS AT A CAR INSURER

A customer submits a claim by sending in relevant documentation. The Customer Service department checks the documents for completeness and registers the claim. The Claims Handling department picks up the claim and first checks the insurance policy. Then, an assessment is performed. If the assessment is positive, a garage is phoned to authorise the repairs and the payment is scheduled (in this order). In any case (whether the outcome is positive or negative), an e-mail is sent to the customer to notify the outcome.

Page 46: Business Process Modelling via BPMN, Session I

SOME TOOLS …• Computer-Aided Software Engineering (CASE) tools:

• Enterprise Architect by Sparx Systems

• Rational System Architect by IBM

• ARIS Express by Software AG

• Visual Paradigm for UML

• Workflow engines:

• Activiti by Alfresco

• jBPM by Red Hat

Page 47: Business Process Modelling via BPMN, Session I

NEXT SESSION

Model complex business processes using extensions …

Page 48: Business Process Modelling via BPMN, Session I

WE SHOULD LEARNED • Basic process models in BPMN:

• Simple activities, events, gateways, data objects, pools, and lanes

• Process model vs. process instance

• Information flow between activities and events

• Pools and lanes that can be used to model resources

• Some software tools that supports BPMN

Page 49: Business Process Modelling via BPMN, Session I

REFERENCES

• Fundamentals of Business Process Management by Marlon Dumas et al., Springer, 2013

• Business Process Management: Concepts, Languages, Architectures (2nd Edition) by Mathias Weske, Springer, 2012

Page 50: Business Process Modelling via BPMN, Session I