Official Content

The purpose of this article is to create a Business Process Diagram object to model the case study process.

To do so, select: File > New > New Object in the main menu (or Ctrl + Alt + N). The following dialog box will be displayed:

BPM__NewBPD_GenWeb

As shown below, in the “BPM” category you will find the “Business Process Diagram” object type.  Select it and name it “FlightTicketReservation”.

After creating the Business Process Diagram object, you must include in it the symbols that will define the process.

Note: The notation used for the diagrams is BPMN (Business Process Modeling Notation).


BPM__Toolbox_GenWeb

Below is a basic description of the main symbols to start modeling:

  • Task: A task that allows representing a job that is performed in a business process. It is classified into three types:

    • None: It is the default value. It means it has not yet been defined whether it will be executed by a user or a Procedure.

    • User: Indicates that the task will be executed by a user.

    • Script: Indicates that the task will be executed by a Procedure.

  • Start Event: Start of a process.

  • End Event: End of a process.

  • Gateway: It allows controlling when a process diverges or converges in several paths.

To signal the start of the process, drag a “Start Event” symbol from the Toolbox to the Diagram as shown in the image:

BPM__StartEvent_GenWeb

Next, insert a Task that represents the Reservation input.

BPM__Task_GenWeb

By double-clicking on the task you can modify its description (example: “Reservation”).  

Next, join the start of the process with the Task entered. To do so, select the Start Event and when you click on it, the following icons will be displayed on the right side:

BPM_Icons_GenWeb

Click on the arrow (connector) and, while holding down the mouse button, drag it to the task to indicate the flow to be followed, as shown:
BPM__TaskReservation_GenWeb

The next step is to evaluate whether the customer is registered or not. To do this, insert a symbol of “Gateway” type with this description: Is a customer?

BPM__Gateway_GenWeb

If the customer is registered, the next step is to indicate whether the reservation is available or not. To do so, insert a Task with the description “Reservation Availability” and then a Gateway to evaluate this availability:
BPM__ReservationAvailability_GenWeb

If there is availability for the requested reservation, the process is completed. To represent this, you have to add the end symbol as shown in the next image. Otherwise, the flow must return to the initial task to change the reservation’s details:

BPM__GatewayToTask_GenWeb

Notes:

  • If a connector is not a straight line (this is optional), gently move the Task or Gateway to which the connector is pointing so that the diagram is adjusted and displayed to your liking.
  • If the connector that goes from the “Is it available?” Gateway to the “Reservation” Task does not look like the one you see in the image, you can select a point connector and drag it outwards to adjust it as shown in the image.
  • If you want the description of the "Gateway" to appear on the left as shown in the image, click on the text and a yellow dot appears, select and without releasing move to the desired location
     

The situation corresponding to whether the customer doesn't exist has yet to be modeled. To do so, look at the following image and add a Task with “Add Customer” description that is reached from the “Is a Customer?” Gateway if it evaluates that the customer is not registered.

BPM__AddCustomer_GenWeb

Once the customer has been registered, he/she will have to be automatically assigned to the generated reservation and then the availability will have to be checked. You should reflect this in the diagram as shown below:

BPM__AssignCustomer_GenWeb

As you can see, only one Task called “Assign to Customer” has been added, joined from the “Add Customer” task and to the “Reservation Availability” Task.

Save the diagram (CTRL + S).  

In this way, you have completed the process flow modeling.

Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant