أكاديمية الحكومة ا�لكترونية الفلسطينية
The Palestinian eGovernment Academy
www.egovacademy.ps
Session 13-14
Tutorial 1: Data and Business Process Modeling
Session 13-14
Modeling with Business Process Modeling NotationModeling with Business Process Modeling Notation
Dr. Mahmoud H. M. Saheb
Palestinian Polytechnic University
Reviewed by
Prof. Marco Ronchetti, Trento University, Italy
About
This tutorial is part of the PalGov project, funded by the TEMPUS IV program of the Commission of the European Communities, grant agreement 511159-TEMPUS-1-
2010-1-PS-TEMPUS-JPHES. The project website: www.egovacademy.ps
University of Trento, Italy
Vrije Universiteit Brussel, Belgium
Birzeit University, Palestine (Coordinator )
Palestine Polytechnic University, Palestine
Project Consortium:
University of Namur, Belgium
Vrije Universiteit Brussel, Belgium
TrueTrust, UK
Palestine Polytechnic University, Palestine
Palestine Technical University, PalestineUniversité de Savoie, France
Ministry of Local Government, Palestine
Ministry of Telecom and IT, Palestine
Ministry of Interior, Palestine
Coordinator: Dr. Mustafa JarrarBirzeit University, P.O.Box 14- Birzeit, PalestineTelfax:+972 2 2982935 [email protected]
© Copyright Notes
Everyone is encouraged to use this material, or part of it, but should properly cite the project (logo and website), and the author of that part.
No part of this tutorial may be reproduced or modified in any form or by any means, without prior written permission from the project, who have the full
copyrights on the material.
3PalGov © 2011
Attribution-NonCommercial-ShareAlikeCC-BY-NC-SA
This license lets others remix, tweak, and build upon your work non-commercially, as long as they credit you and license their new creations under the identical terms.
Tutorial Map
Topic Time
Module I: Conceptual Data Modeling
Session 0: Outline and Introduction
Session 1.1: Information Modeling 1
Session 1.2: Conceptual Data Modeling using ORM 1
Session 1.3: Conceptual Analyses 1
Session 2: Lab- Conceptual Analyses 3
Session 3.1: Uniqueness Rules 1.5
Intended Learning Objectives
Module 1 (Conceptual Date Modeling)
A: Knowledge and Understanding
11a1: Demonstrate knowledge of conceptual modeling notations and concepts
11a2: Demonstrate knowledge of Object Role Modeling (ORM) methodology.
11a3: Explain and demonstrate the concepts of data integrity & business rules
B: Intellectual Skills
11b1: Analyze application and domain requirements at the conceptual level,
and formalize it using ORM.
4PalGov © 2011
Session 3.1: Uniqueness Rules 1.5
Session 3.2: Mandatory Rules 1.5
Session 4: Lab- Uniqueness & Mandatory Rules 3
Session 5: Subtypes and Other Rules 3
Session 6: Lab- Subtypes and Other Rules 3
Session 7.1: Schema Equivalence &Optimization 1.5
Session 7.2: Rules Check &Schema Engineering 1.5
Session 8: Lab- National Student Registry 3
Module II: Business Process Modeling
Session 9: BP Management and BPMN: An Overview 3
Session 10: Lab - BP Management 3
Session 11: BPMN Fundamentals 3
Session 12: Lab - BPMN Fundamentals 3
Session 13: Modeling with BPMN 3
Session 14: Lab- Modeling with BPMN 3
Session 15: BP Management & Reengineering 3
Session 16: Lab- BP Management & Reengineering 3
and formalize it using ORM.
11b2: Analyze entity identity at the application and domain levels.
11b4: Optimize, transform, and (re)engineer conceptual models.
11b5: Detect &resolve contradictions & implications at the conceptual level.
C: Professional and Practical Skills
11c1: Using ORM modeling tools (Conceptual Modeling Tools).
Module 2 (Business Process Modeling)
A: Knowledge and Understanding
12a1: Demonstrate knowledge of business process modeling notations and concepts.
12a2: Demonstrate knowledge of business process modeling and mapping.
12a3: Demonstrate understand of business process optimization and re-engineering.
B: Intellectual Skills
12b1: Identify business processes.
12b2: Model and map business processes.
12b3: Optimize and re-engineer business processes.
C: Professional and Practical Skills
12c1: Using business process modeling tools, such as MS Visio.
Session ILOs
After completing this session students will be able to:
1. Demonstrate knowledge of BP modeling and mapping.
2. Using BP modeling tools.
5PalGov © 2011
2. Using BP modeling tools.
Session Outline
Session 13 and 14 are video, discussions, and practical activities related with modeling.
• BPMN– Activities, LOOP Activities (slide 8)
– Communication with Other BPMN Processes and Services (slide19)
– Example
6PalGov © 2011
• Lab– Case study: a library book lending process (slide 25)
– Purchasing process
• Most Common BP Mistakes in BPMN process Modeling
Dr. Tomislav Rozmanhttp://www.slideshare.net/tomirozman/eurospi2007trozman
Video session
Video from Bizagi•BPD Basic elements 15:00 (Previous session)•BPMN complete set 22:00•Gate Ways 16:00•Gate ways animation: http://knowhow.visual-paradigm.com/business-process-modeling/bpmn-
7PalGov © 2011
paradigm.com/business-process-modeling/bpmn-gateways/
Discussion
Activity basics
Task
Sub Process
Call Activity
Loop activities
• The attributes of Tasks and Sub-Processes will determine if they are repeated or performed once.
• There are two types of loops:
9PalGov © 2011
• There are two types of loops:
Standard and Multi- Instance. A small looping indicator will be displayed at the bottom-center of the activity.
Condition is evaluated
after each loop.
Sequence Flow Looping
• Loops can be created by connecting a Sequence Flow to an “upstream” object. An object is considered to be upstream if that object has an outgoing Sequence Flow that leads to a series
10PalGov © 2011
Sequence Flow that leads to a series of other Sequence Flows, the last of which is an incoming Sequence Flow for the original object.
• Loop-until
Multiple Instances
• The attributes of Tasks and Sub-Processes will determine if they are repeated or performed once. A set of three horizontal lines will be displayed at the bottom-center of the activity for sequential Multi-Instances (see lower figure to the right). A set of three vertical lines will be displayed at the bottom-
11PalGov © 2011
three vertical lines will be displayed at the bottom-center of the activity for Parallel Multi-Instances (see lower figure to the left).
• The number is predefined as FOR Loop
Task properties
• Task type: (non, service, receive, send, user, script, abstract, manual, reference, …)
• Start quantity (see page 193)
• Completion quantity
12PalGov © 2011
• Completion quantity
• Loop type: (none, standard, MultiInstance)
• Loop counter
• MI condition: (hide, show)
• MI ordering: (parallel, sequential)
• MI flow condition: (none, one, all, complex)
Types of Task Specialization
Abstract
(Plain)
Used when first scoping out a process.
Service Indicates an automated process which calls a
external service to get work done.
Send A task which sends a message to a external entity
Receive A task which receives a message from an external
entity. entity.
User A task involving both man and machine.
Manual Used to indicate non-automated task.
Business
Rule
An atomic activity that is included within a Process.
Script Determines how task operates when (java script) is specified.
• Service Task: is a Task that uses some sort of service, which could be a Web service or an automated application.
14PalGov © 2011
• Send Task: is a simple Task that is designed to send a Message to an external Participant (relative to the Process). Once the Message has been sent, the Task is completed.
• Receive Task A Receive Task is a simple Task that is designed to wait for a Message to arrive from an external Participant (relative to the
15PalGov © 2011
external Participant (relative to the Process). Once the Message has been received, the Task is completed.
• User Task A User Task is a typical “workflow” Task where a human performer performs the Task with the assistance of a software application and is scheduled through a task list manager of some sort.User Tasks need to be rendered on user interfaces like forms
16PalGov © 2011
• Manual Task A Manual Task is a Task that is expected to be performed without the aid of any business process execution engine or any application. An example of this could be a telephone technician installing a telephone at a customer location.
• Business Rule Task: provides a mechanism for the Process to provide input to a Business Rules Engine and to get the output of calculations that the Business Rules Engine might provide.Business rule is a very specific type of service, often maintained by business people instead of IT. Most BPM systems have their own BRE (business rules engine) or decision table system.
17PalGov © 2011
decision table system.
• A Script Task is executed by a business process engine. The modeler or implementer defines a script in a language that the engine can interpret. When the Task is ready to start, the engine will execute the script. When the script is completed, the Task will also be completed.
Sub Process
A Sub-Process that represents a set of coordinated activities carried out by independent, loosely-coupled
systems in accordance with a contractually defined business relationship.
Results of tasks in a transaction to be, as a whole,
Sub Process tasks
18PalGov © 2011
Transaction
whether "all tasks are executed" or "none of them is executed." The tasks are tentatively executed first,
and if all the tasks are successfully completed, the
process continues. Otherwise, all of them are undone and started over again.
Event Sub Process
This embedded sub-process is not instantiated by
normal sequence flow. It is triggered by an Eventbut runs in context of Activity.
Synchronous Vs Asynchronous:
When you invoke a synchronous operation, you send a message and then wait for an response before proceeding with the process flow.
When you invoke an asynchronous operation, you send a message
Communication with Other BPMN Processes and Services
19PalGov © 2011
When you invoke an asynchronous operation, you send a message but do not wait for an answer to proceed with the process flow.
The asynchronous operation receives the message and starts running. You can obtain the answer of an asynchronous operation by invoking a callback operation. If you invoke the callback operation before the asynchronous operation finishes running, then you must wait for it to complete before getting the answer.
BPMN provides multiple ways for BPMN processes to communicate with other processes
or services:
Messages
They enable you to invoke asynchronous services or asynchronous BPMN processes. You
can also use them to define the interface your process exposes to other processes or
services.
Send and Receive Tasks
They are very similar to message events. You can choose to use one or the other.
Communication with Other BPMN Processes and Services:Asynchronous
20PalGov © 2011
They are very similar to message events. You can choose to use one or the other.
The only difference they have with message events is that they support boundary events.
They enable you to invoke asynchronous services or asynchronous BPMN processes. You
can also use them to define the interface your process exposes to other processes or
services. Don’t mix them with send receive message in one model if message event is not
a boundary event.
.
Signal Events
They enable you to broadcast a message to multiple process. The processes waiting for
that specific message react to it.
http://docs.oracle.com/cd/E14571_01/doc.1111/e15176/ipc_bpmpd.htm#BHBBFBHD
Service tasks enable you to invoke synchronous operations in services and BPMN processes.When the BPMN Service Engine runs a service task, it invokes the operation specified in the service task and waits for a response. The BPMN Service Engine does not move the token to the next activity until it receives a response from the synchronous service or BPMN process.
Communication with Other BPMN Processes and Services:Synchronous
21PalGov © 2011
http://docs.oracle.com/cd/E14571_01/doc.1111/e15176/ipc_bpmpd.htm#BHBBFBHD
Event Sub Process
(interrupting and non-interrupting)
(I/N)-Message - Event Sub-Process -
(I/N)- Timer - Event Sub-Process -
(I/N)- Conditional - Event Sub-Process -
(I/N)- Signal - Event Sub-Process -
22PalGov © 2011
(I/N)- Multiple - Event Sub-Process -
(I/N)- Parallel Multiple - Event Sub-Process -
(I/N)- Escalation Event Sub-Process -
(I)- Error - Event Sub-Process -
(I)– Compensation - Event Sub-Process -
Event Sub process - Example
23PalGov © 2011
Understanding BPMN Release 2.0, Robert Shapiro
Session 14: Lab Activity
• Demonstration for Workflow patterns (from Bizagiresources and the BPMN equivalents of the of Workflow Patterns research headed by Wil van der Aalst) http://www.workflowpatterns.com/vendors/documentation/BPMN-pat.pdf
And www.diveintobpm.org
24PalGov © 2011
And http://www.workflowpatterns.com/patterns/control/index.php
• WP1: Sequence WP10: Synchronizing Merge• WP2: Parallel Split WP11: Arbitrary Cycles• WP3: Synchronization WP12: Implicit Termination• WP4: Exclusive Choice WP13 to 16: Multiple Instances• WP5: Simple Merge WP17: Deferred Choice• WP6: Multi-Choice WP18: Interleaved Routing• WP7: Multiple Merge WP19: Milestone• WP8: Discriminator WP20: Cancel Activity• WP9: N out M Join WP21: Cancel Case
The Borrower requests a book from the Librarian, the Librarian gets the book status using software; the book could have the following status:1- Book is on Loan: the librarian sends on loan reply, waits for the following options:•Cancel the request if he received decline hold from the borrower or he did not receive any reply from the borrower.•If he received a Hold request from the borrower then he will request
Case Study: a library book lending process
25PalGov © 2011
•If he received a Hold request from the borrower then he will request hold using the SW and sends a Hold reply for the borrower. After two weeks he will check the status again2-Book is available: the Librarian checkout the book then sends checkout reply.
Draw BPMN, presentation and discussion
Assignment 3
•Draw the Purchase process which is described in the following link: http://www.almohasb1.com/2009/04/purchasing-
procedures.html
26PalGov © 2011
procedures.html
•Draw one of the processes in your organization using BizAgi or Bonita.
Presentation and discussion.
Summary
• In this session we presented and discussed• BPMN complete
• Gate Ways
• BPMN LOOP Activities, BizAgi video for loops with examples
And the Most Common BP Mistakes in BPMN
27PalGov © 2011
And the Most Common BP Mistakes in BPMN process Modeling
• Next session will discuss the
– best practices for BPM and
– BP re-engineering.
References
• Analysis of Most Common Process ModellingMistakes in BPMN Process Models
Dr.Tomislav Rozman
http://www.slideshare.net/tomirozman/eurospi2007trozman
28PalGov © 2011
• A heuristic method for detecting problems in business process models
Volker Gruhn and Ralf Laue, DOI 10.1108/14637151011076485
• http://www.bpmn.org/
• Elearning.Bizagi.com
Thanks
Dr. Mahmoud H. Saheb
29PalGov © 2011
Top Related