Getting started with BPM

by Ombretta Malinverno
9,996 views Published on Oct 24, 2017
Applies to: 7.2 or higher
Table of contents

About this Quick Start Guide

This guide can help you get up to speed quickly on BPM basic features using WebRatio Platform, or refresh your memory on how to use it.

Learn about WebRatio Platform, BPMN and processes

What is a process?

A Business Process or Business Method is a collection of related, structured activities or tasks that produce a specific service or product (serve a particular goal) for a particular customer or customers. It often can be visualized with a flowchart as a sequence of activities.

What is BPM?

Business Process Management (BPM) is a management approach focused on aligning all aspects of an organization with the wants and needs of clients. BPM enables organizations to be more efficient, more effective and more capable of change than a functionally focused, traditional hierarchical management approach.

What is BPMN?

Business Process Modeling Notation (BPMN) is a graphical representation for specifying business processes in a workflow. BPMN was developed by Business Process Management Initiative (BPMI), and is currently maintained by the OMG (Object Management Group). The current version of BPMN is 1.2. The Business Process Modeling Notation (BPMN) is a standard for business process modeling, and provides a graphical notation for specifying business processes in a Business Process Diagram (BPD), based on a flowcharting technique. The objective of BPMN is to support business process management for both technical users and business users by providing a notation that is intuitive to business users yet able to represent complex process semantics. The primary goal of BPMN is to provide a standard notation that is readily understandable by all business stakeholders. These business stakeholders include the business analysts who create and refine the processes, the technical developers responsible for implementing the processes, and the business managers who monitor and manage the processes. Consequently, BPMN is intended to serve as common language to bridge the communication gap that frequently occurs between business process design and implementation.

BPMN: concepts and elements

The modeling in BPMN is made by simple diagrams with a small set of graphical elements. It should make it easy for business users as well as developers to understand the flow and the process. The four basic categories of elements are as follows:

  • Flow Objects. Events, Activities, Gateways.
  • Connecting Objects. Sequence Flow, Message Flow, Association.
  • Swimlanes. Pool, Lane.
  • Artifacts. Data Object, Group, Annotation.

BPMN Notation

These four categories of elements give us the opportunity to make a simple Business Process Diagram (BPD).

Flow Objects

Flow Objects are the main describing elements within BPMN, and consist of three core elements (Events, Activities, and Gateways):

  • Event. An Event is represented with a circle and denotes something that happens (rather than Activities which are something that is done). Icons within the circle denote the type of Event (e.g. envelope for message, clock for time). Events are also classified as Catching (as in, they might catch an incoming message to Start the process) or Throwing (as in, they might throw a message at the End of the process).
    • Start Event. Acts as a trigger for the process; indicated by a single narrow border; and can only be Catch, so is shown with an open (outline) icon.
    • End Event. Represents the result of a process; indicated by a single thick or bold border; and can only Throw, so is shown with a solid icon.
    • Intermediate Event. Represents something that happens between the Start and End Events; is indicated by a tramline border; and can Throw or Catch (using solid or open icons as appropriate) - for example, a Task could flow to an Event that throws a message across to another Pool and a subsequent Event waits to catch the response before continuing.
  • Activity. An Activity is represented with a rounded-corner rectangle and describes the kind of work which must be done.
    • Task. A Task represents a single unit of work that is not or cannot be broken down to a further level of business process detail without diagramming the steps in a procedure (not the purpose of BPMN).
    • Sub-process. Used to hide or reveal additional levels of business process detail - when collapsed a Sub-process is indicated by a plus sign against the bottom line of the rectangle; when expanded the rounded rectangle expands to show all Flow Objects, Connecting Objects, and Artifacts. Has its own self-contained Start and End Events, and Sequence Flows from the parent process must not cross the boundary.
    • Transaction. A form of sub-process in which all contained Activities must be treated as a whole, i.e., they must all be completed to meet an objective, and if any one of them fails they must all be compensated (undone). Transactions are differentiated from expanded sub-processes by being surrounded by a tramline border.
  • Gateway. A Gateway is represented with a diamond shape and will determine forking and merging of paths depending on the conditions expressed.

Connecting Objects

They consist of three types:

  • Sequence Flow. A Sequence Flow is represented with a solid line and arrowhead and shows in which order the Activities will be performed. The Sequence Flow may be also have a symbol at its start, a small diamond indicates one of a number of conditional flows from an Activity while a diagonal slash indicates the default flow from a decision or Activity with conditional flows.
  • Message Flow. A Message Flow is represented with a dashed line, an open circle at the start, and an open arrowhead at the end. It tells us what Messages Flow across organizational boundaries (e.g., between pools). A Message Flow can never be used to connect Activities or Events within the same Pool.
  • Association. An Association is represented with a dotted line. It is used to associate an Artifact or text to a Flow Object, and can indicate some directionality using an open arrowhead (toward the Artifact to represent a result, from the Artifact to represent an input, and both to indicate it is read and updated). No directionality would be used when the Artifact or text is associated with a Sequence or Message Flow (as that flow already shows the direction).

Swimlanes

Swimlanes are a visual mechanism of organizing and categorizing Activities, based on cross functional flowcharting, and in BPMN consist of two types:

  • Pool. Represents major participants in a process, typically separating different organizations. A Pool contains one or more lanes (like a real swimming pool). A Pool can be open (e.g., showing internal detail) when it is depicted as a large rectangle showing one or more lanes, or collapsed (e.g., hiding internal detail) when it is depicted as an empty rectangle stretching the width or height of the diagram.
    • Parameters. A Pool is characterized by a set of Parameters. A Parameter is an information managed by the process and can be of two types:
      • Simple Parameter. defined by a name, a type (string, integer and so on), a selection policy (single or multiple) and a set of predefined values.
      • Business Object Parameter. defined by a reference to a more complex object defined in the workspace named "Business Object".?
    • Business Object. A Business Object is a object composed by a set of properties. A property, like a parameter, is defined by a name, a type (string, integer and so on) and a set of predefined values.
  • Lane. Used to organize and categorize activities within a pool according to function or role, and depicted as a rectangle stretching the width or height of the pool. A Lane contains the Flow Objects, Connecting Objects and Artifacts.

Artifacts

Artifacts allow developers to bring some more information into the model/diagram. In this way the model/diagram becomes more readable. There are three pre-defined Artifacts and they are:

  • Data Objects. Data Objects show the reader which data is required or produced in an Activity.
  • Group. A Group is represented with a rounded-corner rectangle and dashed lines. The Group is used to group different Activities but does not affect the flow in the diagram.
  • Annotation. An Annotation is used to give the reader of the model/diagram an understandable impression.

The WebRatio Pltform BPMN User Interface

In WebRatio Platform, the BPMN user interface is organized in different views.

  1. The right upper area is named BPMN Explorer and contains all the BPMN Projects created in your workspace and shows all the Processes, Business Objects, Signals and Roles defined.
  2. The main view, located in the right area, is the Editing View that is dedicated to the drawing of our process; in the left area of the Editing View there is a palette in which you can choose the elements of the BPMN notation you can use in your process and in the upper area there is a toolbar that permits the navigation and zooming of your process.
  3. Each element is described by a set of properties that can be edited in the bottom left area named Properties View.
  4. A set of utility views is placed in the bottom right area permitting the check of the errors in the process and the documentation process.

The Expense Report example process

Download the example process

You can download the "Expense Report" Example Process just follow these steps:

  1. Open the WebRatio Add-Ons using the toolbar icon.
  2. If asked login with your credentials.
  3. Select the "BPMN Project" from the left side menu (the right side now contains all the BPMN Projects available).

  1. Find the "Expense Report" Project and press on Install button.
  2. A dialog asks for confirm, press Finish to proceed.
  3. At the end of the installation a dialog alerts you and press OK to exit.
  4. The project is imported an you can see it in the BPMN Explorer.
  5. Go in the BPMN Explorer, expand the "ExpenseReport" BPMN Project > "Processes" folder and double-click on the "Expense_Report" process to open it.

Process Description

The "Expense Report" Example Project is a simple BPMN process in which an employee sends a report to his company and requests the approval and payment of his month expenses. If the expense report amount is over a certain threshold, a supervisor must approve the report, otherwise the Treasurer (after a notification) can approve and store the information about the report in the company account system and start the payment. The process manages a unique parameter named "Report" which is a reference to the "Report" Business Object characterized by:

  • "Title" [string]. The report's title.
  • "Expense" [decimal]. The expense associated to the report.
  • "Supervisor Decision" [string]. The decision specifying if the expense report has been approved or not from the Supervisor (the available values are "Accepted" and "Rejected"). 
  • "Supervisor Note" [text]. The text associated by the supervisor to the decision of the report.
  • "Treasurer Decision" [string]. The decision specifying it the expense report has been approved or not from the Treasurer (the available values are "Accepted" and "Rejected").
  • "Treasurer Note" [text]. The text associated by the treasurer to the status of the report.

The process is composed by a pool named "Expense Report" in which there are three Lanes:

  • "Employee".
  • "Supervisor".
  • "Treasurer".

Each Lane represents a role involved in the process.

Publish the process

Publish the process:

  1. Press on the Publish Process button placed in the toolbar.
  2. At the end of the publishing process a browser window is opened.

For each role specified in the process the generated Web application proposes two demo users. Access to the Web application:

  1. You can see the list of the demo users in the Home Page.
  2. Press on the Select link beside the "John Doe" employee user.
  3. Press on the Login button to access the Web Application.

 

Once logged in, you are in the "Control View" Area which contains all the activities related to the "Employee" Role. In this area you can:

  1. Start a new process by pressing on one of the links available in the left side area.
  2. See all the activities that are waiting to be worked by you or one of the other employees by using the list placed in the central area.

Pressing on the New Expense Report link in the left side area of the desktop you can start a new "Expense Report" process. This link correspond to the Start Event named "New Expense Report" placed in the BPMN Process on the "Employee" Lane.

Once pressed the process starts and the user is redirected in a page named "Edit Report" in which he has to specify the title and the expense amount of the report. This page corresponds to the "Edit Report" Task , placed in the "Employee" Lane just after the Start Event.

The title and expense amount information are two properties of the "Expense Report" Business Object defined in the Activity Parameters. Using the Property View it is possible to associate these two Activity Parameters to the current task.

In the "Edit Report" page there are three buttons:

  1. Cancel. It allows to cancel the changes and leave the Activity as pending in the user's electronic desktop.
  2. Save and Work Later. It allows to save the changes and leave the Activity as pending in the user's Control View.
  3. Finish. It allows to save the changes and complete the Activity and keep going in the process.

  1. Insert "My Report" as title and "500" as expense value.
  2. Press on the Save and Work Later button to save changes and come back to your Control View.
  3. In the Control View you will see a new pending work item, in the "Work Items" list.
  4. Press on the resume button beside the pending work item to enter again in the Task.
  5. And then press on Finish to complete the Activity.

 

Now the Activity is completed and the process continues its flow directly to a gateway named "Evaluate Expense". Since the expense amount is equal to "500" the Gateway follows the gate that flows to the Supervisor area in the "Review Report" Task.

The process continues its flow right to the End Event passing through the specified Task and Gateways.

Add a new information to the "Edit Report" task

Suppose that you want to change the process by adding a new information to the "Edit Report" page. You want to add a new property to the "Expense Report" business object named "Employee's Note" and give to the employee the possibility to fill this information in the "Edit Report" task; all the other users will see this note as a report information.

Modify the Business Object

You can modify a Business Object in this way:

  1. Go in the BPMN Explorer, expand the "Expense Report" BPMN project and the "Business Objects" folder.
  2. Double-click on the "Report" Business Object.
  3. Press on the Add button to add a new property, in the opened editor.
  4. Insert "Employee's Note" as Property Name for the property and set the "text" as Type.
  5. Save the changes.

Add the property to the "Edit Report" task

Add the new property as editable:

  1. In the "Expense Report" process, select the "Edit Report" task placed in the Employee's Lane.
  2. Go to the Properties View of the Task and press on the Browse button next to theActivity Parameters property.
  3. In the opened dialog, that contains the activity parameters configuration, check the Editable option for the "Employee's Note" parameter, and then press OK.

Publish the process and browse the Application

  1. Refer to "Publish the process" section for further details.
  2. Log in as "Employee" and start a new process. In the "Edit Report" activity you'll see the new parameter as a text input in the form.

Change the threshold for the Supervisor approval

Suppose now that you want to change the threshold that decides whether a supervisor approval is necessary or not. This means that you want to change the expression associated to the "Evaluate Expense" gateway.

Edit the conditions:

  1. Select the "Evaluate Expense" gateway.
  2. Go to its Properties View and press on the Browse button next to the Condition Values property.
  3. In the opening dialog you have the list of the targets of the flow connectors outgoing from the Gateway; press on the button beside the first row to open it.
  4. In the opening dialog you have the conditions associated to the selected target; insert in the Value field "200" and press OK.
  5. Press on the button beside the second row to open it.
  6. In the opening dialog insert in the Value field "200" and press OK.

Publish the process and browse the application:

  1. Refer to "Publish the process" section for further details.
  2. Log in as "Employee" and start a new Process.
  3. In the "Edit Report" Activity insert "100" as the "Expense" value and press Finish.
  4. Pressing on the Active Items option in the menu, a page will be open, where you can see that the process is assigned directly to the Treaurer without the need of an approval from the Supervisor.