BPM with GeneXus Web - Create the Business Process Diagram that models the process

Official Content
This documentation is valid for:

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:


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).


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:


Next, insert a Task that represents the Reservation input.


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:


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:

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?


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:

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:



  • 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.


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:


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.