Bizagi tutorial

<< Click to Display Table of Contents >>

Navigation:  How to's >

Bizagi tutorial

 

Overview

Bizagi Platform as a Service (PaaS) provides all the power of the Bizagi Digital Business platform directly in the cloud.

With Bizagi PaaS, customers run applications with business processes in a secure, reliable and high performing cloud platform.

 

This tutorial illustrates how you, as a customer, would build those applications with business processes.

 

note_pin

This tutorial sets you up with the basics of producing a simple yet fully-functional process, considering a secure design, and through ten steps which are completed under an estimated time of 1 hour.

By no means this tutorial covers up entirely all the features and concepts supported by Bizagi as a platform.

 

Before you start

Building applications and business processes is done through the Bizagi Studio (Windows desktop application).

 

Consider that this tutorial parts from you already having an installation of Bizagi Studio, where you have created one Bizagi project to work on.

For reference information about how to install Bizagi Studio on your own desktop or servers (on-premises), refer to the Bizagi Enterprise installation guide.

For reference information about how to create a project in Bizagi Studio, refer to the Project creation guide.

 

Example

In order to illustrate how you can build process applications in Bizagi, we will create an application featuring an implemented Help desk process.

This would be a typical Help desk process, in which someone is currently facing a problem or difficulty, and chooses to file a report to seek for assistance.

 

Icon_Callcenter

 

Notice that with Bizagi, you can create an application with any number of processes in it, but for the sake of the simplicity of this tutorial, we will be creating just this one.

 

The Help desk process worked throughout this tutorial (starting from its workflow), is an oversimplified representation of a real Help desk process.

On purpose, it doesn't include more than three activities so that completing this tutorial can be done in a shorter period of time.

The Help desk sample process we will be using considers the following workflow:

 

ExampleHelpDesk

 

Processes in Bizagi do not have a limit regarding the number of shapes you can diagram; and you may also choose to include sophisticated modeling patterns, such as ones supporting: long-lasting transactions, multiple sub-processes, activities executed in an asynchronous/offline fashion, compensation events, messaging and collaboration between different processes, business events being triggered (either by external applications or automatically by the system, based on a schedule, or due to changes in the underlying data), among others.

 

For instance, the following image shows a different and more complete Help desk process sample just as it is available for download at the Bizagi Process Xchange:

 

ExampleHelpDesk2

 

In case you are interested in browsing this ready-to-use process or other ones, refer to Bizagi Process Xchange.

 

You may of course, further customize and extend this process by including additional activities and business scenarios as needed.

However and through the specific Help desk sample process presented by this tutorial, you will be able to see how different users (having separate roles), will work with Bizagi, while having ACLs in place to establish well-defined boundaries towards what each of the roles may and may not accomplish.

Through this tutorial, you will be able to get a good idea of how you build role-oriented, and secure process applications.  

 

Roles considered by this tutorial, will be:

1.A requester: Will be in charge of initiating the process and eventually confirming that it can be ended.

The process will start when a requester fills out a ticket to seek for assistance (i.e, by means of Report ticket, as depicted by the oversimplified Help desk shown first).

Later on, upon receiving a response, the requester will inform if the problem or difficulty has been resolved (i.e, by completing Confirm resolution).

2.A Help desk agent: Will be assigned to analyze and provide a solution to the reported ticket (a problem or difficulty of some kind).

Upon arrival of a new ticket, a help desk agent will send suggested steps that aim to resolve the ticket (i.e, by completing Analyze and resolve).

3.An admin: Will not interact in the process per se.

The admin will not take part during any point of a Help desk ticket, but will have sole access to:

Menu options oriented to overall system administration.

Reports and queries enabling the analysis and monitoring focused on how the process and other users are performing.

 

Hands on!

Follow the steps presented next to implement the complete Help desk implementation.

 

1. Load your Bizagi project.

Open Bizagi Studio and open up the project you have already created, by clicking on that project's name listed under Recent projects:

 

00OpenProject

 

Opening the project may take up a minute or two:

 

01ProjectStartup

 

When done, you are presented with a graphical Process wizard which guides you through a series of aspects that you should consider when building your applications.

The Process wizard presents 7 steps in a carrousel, though not all of them will be actually used in this tutorial.

And certain other configuration options, which are found outside of this wizard, are employed as well.

For detailed information about this guided assistant, refer to the Process wizard.

 

ProcessWizard0

 

2. Model your process.

Modeling the process means exactly graphically diagramming the series of activities which describe the workflow of a process, from start to end.

For this tutorial, it means depicting and interconnecting the following logical steps as used by the Help Desk example: Report ticket, Analyze and resolve, Confirm resolution, Review and document, along with other secondary shapes.

 

2.1. Click on New process at the Process wizard step number 1 ("Model process") and give your process a name.

For this tutorial, it is suggested you name it "Help desk" and click Ok:

 

03ProcessWizard

 

When done, you are presented with the Process modeler, displaying a canvas where you can drag and drop BPMN shapes:

 

04ModelerInit

 

BPMN shapes used by this tutorial, are:

Start Event.

Tasks (which are referred to as Activities).

Gateways (specifically, the Exclusive Gateway).

End Event.

Sequence Flows.

Lanes.

 

ModelerPalette

 

2.2. Start by dragging a Lane from the Palette and into the upper part of the Help Desk process Pool.

 

05ModelerLane

 

When added, you will see it defaults as Lane 2.

Right-click on that name so that you can click on Edit text and change it:

 

06ModelerRename1

 

Alternatively you may edit text on labels by double-clicking on them.

 

2.3. Rename default elements in the canvas (by using the aforementioned right-click and Edit text options), so that you have a tidier and self-descriptive process model.

It is suggested that you delete the Milestone 1 default label (by renaming it to blank), and use the labels as shown in the image below (Requester, Help desk agent).

 

07ModelerRename2

 

Notice you may also make the diagram tidier by resizing these lanes (by clicking on the Help desk process Pool, and then relying on standard mouse resizing options to shorten its length).

 

2.4. Start drawing the process diagram by dragging a Start Event into the top Lane (Requester):

 

08ModelerStart1

 

Once added, label this Start Event for clarity purposes.

It is suggested you name it as Report ticket:

 

09ModelerStart2

 

2.5. Add an Activity following Report ticket, by using the Pie menu.

The Pie menu is the set of elements popping up to the immediate right, when clicking on a given shape.

 

Through this Pie menu, click the Activity icon to drag and drop it into the bottom Lane (Help desk agent):

 

10Modeler1Activity1

 

Once added, you notice that its default Task 1 text highlights and you may type right away in it, to rename this shape.

It is suggested you name this Activity as Analyze and resolve:

 

11Modeler1Activity2

 

2.6. Add another Activity, this time having it come after Analyze and resolve, by using the Pie menu in the same fashion as in the previous step.

Add the new Activity inside of the top Lane (Requester):

 

12Modeler2Activity1

 

It is suggested you name this new Activity as Confirm resolution.

 

Notice that using the Pie menu enables a quicker and easier way to draw the process diagram; however, dragging and dropping shapes from the Palette is also an option (and connecting them afterward by using Sequence Flows).

Over the next steps, the process diagram is completed from start to end, by repeating some of the features shown up until now.

 

2.7. Add a Gateway parting from Confirm resolution, by using the Pie menu.

Add the Gateway right next to it, and still inside of the top Lane (Requester):

 

13Modeler2Activity2

 

It is suggested you label the Gateway as Was the ticket resolved?.

 

2.8. Add an Activity parting from Was the ticket resolved?, by using the Pie menu.

Add the new Activity into the bottom Lane (Help desk agent):

 

14Modeler3Activity1

 

It is suggested you name this new Activity as Review and document.

 

2.9. Add an End Event parting from Review and document, by using the Pie menu.

Add the event right next to it and inside of the same Lane (Help desk agent):

 

16Modeler4Activity1

 

It is suggested you label the End Event as End - Ticket is closed.

At this point, your process diagram should look like the image below:

 

17Modeler4Activity2

 

2.10. Connect the Was the ticket resolved? shape with the Analyze and resolve one, by using the Pie menu.

Back where the workflow continues from the Gateway, and because this specific shape is meant to have the process workflow split into more than one possible path, you may also use the Pie menu to include an additional Sequence Flow that automatically draws a connection to an existing shape.

 

To make sure that while dragging and dropping, it connects to an existing shape (and not simply creates a new one), consider releasing the mouse when the target shape (i.e., Analyze and resolve), highlights and locks up:

 

18Modeler5Connect1

 

At this point, your process diagram should look like the image below:

 

19Modeler5Connect2

 

2.11. Label both paths parting from Was the ticket resolved?.

Do this by double-clicking on the newly created Sequence Flow, and label it with No:

 

20ModelerTransitions1

 

Similarly, repeat the procedure with the other Sequence Flow, by double-clicking on the one connecting to Review and document.

This time, label it with Yes:

 

21ModelerTransitions2

 

It is recommended to fine tune some minor visual aspects of your diagrammed process, simply for clarity purposes.

 

This means repositioning some of the labels (by clicking on them and moving them out to the new location), and reorganizing how the Sequence Flows route graphically (especially the one labeled with No).  

To reorganize a Sequence Flow, relocate where the end of it connects to, by dragging it and making sure you release the mouse when its endpoint highlights in a green color:

 

22ModelerFinal1

 

2.12. Include SLAs for your Activities.

As a final step, it is recommended to explicitly define the estimated duration time for the completion of each of the three Activities.

To do this, first right-click on Analyze and resolve and then click on Properties.

 

MFP_SLA1

 

For this tutorial, set a 24-hour duration for Analyze and resolve.

Inputted values or changes to them, are automatically saved (temporarily, up until saving the whole process diagram).

 

Repeat this for the other two Activities.

For Confirm resolution, click on it and set a 16-hour duration.

 

MFP_SLA2

 

Finally, for Review and document, click on it and set a 8-hour duration.

 

MFP_SLA3

 

 

2.13. Close the Process Modeler and click Yes when prompted to save changes:

 

23ModelerFinal2

 

Once the process diagram is closed, you are redirected back to the Process wizard.

Click on the Model data icon to move on into the step number two (alternatively you may click on the Next arrow to the right):

 

24WizardBackto

 

3. Design how to store your information.

Modeling data means having the possibility to define structures to hold information that your business requires.

With Bizagi, you do this by defining entities and their inner attributes, so that you organize how information will be stored, as well as defining possible relationships between those entities.

For further information and concepts about this step, refer to Modeling data.

 

For this tutorial and for the sake of its simplicity, we will define a very basic Help desk data model that considers namely: the ticket's subject, a description, and file attachments for starters, as well as other bits of information involved further on during the process such as: which are the suggested solution steps, if the ticket is resolved or not, and documentation comments.

Even though this tutorial does not focus on it, you could completely make the most out of all the potential of data modeling within Bizagi, such as: defining multiple-to-multiple relationships between entities, defining entities which inherit from others, involving system entities which already manage information used by Bizagi ("metadata"), among others.

 

3.1. Click on Model data at the Process wizard step number 2 to define the name of your main process entity.

For this tutorial, it is suggested that you go with the default value (named automatically "HelpDesk)".

Click Ok:

 

25WizardDataModel

 

Once you define the process entity's name, you are presented with a visual representation of the Help desk process' data model (based on the concepts of entity-relationship diagrams); displaying initially only the process entity you just defined.

 

3.1. Right-click on the HelpDesk entity and click on Edit attributes in order to specify how and where business information used by the process is stored:

 

26DataModel1

 

3.2. Click on Add to include four new attributes and give them a name.

Start off by adding these four, as String type attributes (which are meant to store text).

 

27DataModel2

 

After clicking Add each time, ensure you fill in the Display Name for each of the attributes (the Name you may leave it as it is automatically generated).

Recall that we will need four String type attributes, to end up having the following ones:

Subject

Detailed description

Solution steps

Documentation comments

 

28DataModel3

 

3.3. Click on Add to now add a fifth attribute.

For this new one, explicitly change the type of data it manages, from String to File.

 

This means exactly: clicking Add, naming the attribute as Ticket attachments, and moving on to the third column (Type) where you need to select File so that this attribute is designed to support having the user upload documents or file attachments in general.

 

29DataModel4

 

3.4. Click on Add to now add a sixth attribute.

For this new one, also explicitly change its data type to one that it is not from the Common Types list.

Name this attribute as Severity, and ensure at the third column (Type), that you browse/expand the Entity data type, go into its Parameter sub-type, and finally select New Entity:

 

30DataModel5

 

When clicking on New entity, you are presented with a new wizard showing up on top, so that you can define the structure of Severity as a separate entity.

In general, defining Entity data types allow you to define reusable entities which you can navigate into, parting from the one currently standing on (HelpDesk).

 

The Severity entity as used in this tutorial, is set to store a preset list with values to choose from (in this case, a Critical, Medium or Low qualification that enables a classification of those reported tickets). This means that each instance of a Help Desk entity will have an attribute of type Severity, which will store the level of severity of the case. The possible severity levels will be predefined and later on, throughout this tutorial, it will be shown how to do so.

 

3.5. Click Next to move on into defining attributes applicable to Severity.

 

 

31DataModel6

 

3.6. Click Add to define two new String attributes.

Consider the following names for the two attributes, in this exact order:

Name

Code

 

32DataModel7

 

Click Finish.

When done creating the Severity entity, notice you are redirected back to the attributes definition inside of the main HelpDesk entity.

 

33DataModel8

 

3.7. Click Add to define a last attribute, this time using the type known as Boolean.

The purpose of such attribute is to store the status of the ticket (if it is resolved or not).

 

Name this attribute as Ticket resolved?:

 

34DataModel9

 

Click Finish when done.

Once the windows closes, notice your visual representation of the Help desk data model has two entities, and it displays how these are related:

 

35DataModel10

 

You may want to re-arrange the position of entities within the diagram for clarity purposes.

Note that certain information regarding the execution of the process is already stored and managed automatically by Bizagi, such as the starting date of each process instance, its creator/requester, its estimated SLA, among others.

This means that there is no need to explicitly create as business data such information fields.

 

3.8. Close the current window having the diagram and click Yes when prompted to save changes:

 

36DataModel11

 

Once the data model diagram is closed, you are redirected back to the Process wizard.

Click on the Forms icon to move on into the step number three (alternatively you may click on the Next arrow to the right):

 

37DataModel12

 

 

4. Design forms.

Defining forms means building how the information is captured and presented to the users during the Help desk process (i.e, UI -the user interfaces).

When doing this in Bizagi, you rely on a Forms designer where you can easily drag and drop attributes of your data model (as defined previously), and get an instant preview of how it would be presented to end users (i.e., a what-you-see-is-what-you-get approach).

 

Consider that with Bizagi, you design UI only once and each of the different devices in Bizagi will smartly display the information while leveraging some native controls and according to best usability.

 

4.1. Click on Define forms:

 

38Forms1

 

You are presented with a view displaying the entire process diagram, focused on those shapes in the workflow which are designed for human intervention (where you would need to define a user interface).

Notice that those which have not been yet configured, display an alert icon directly in their upper right corner:

 

39Forms2

 

4.2. Click on the Start Event shape (Report ticket):

 

40Forms3

 

You are then presented with the Forms designer, having:

To the left: The attributes and relationships as available for the Help desk process (in the Data tab), along with UI controls (in the Controls tab).

To the right: You see a preview of what end users will see, instantly as you design the form (in this case, when carrying out Report ticket).

 

41Forms4

 

4.3. Double-click on the Subject attribute to include it in the form.

You may need to first expand the item representing the HelpDesk entity.

 

The form that is going to be defined will allow the user to kick-off the process by submitting a ticket to a Help Desk Agent.

 

42Forms5

 

Alternatively, you may drag and drop these attributes into the form (though it is suggested to rely on double-click to build the forms faster, specifically at this point in the tutorial).

 

4.4. Continue using double-click to add these other attributes: Detailed description, Severity, and Ticket attachments.

Then, click on the Subject UI field at the right so that it becomes selected:

 

43Forms6

 

4.5. Hold the CTRL key, and while pressed down, click on Detailed description, and Severity.

This way, you select multiple fields at once and may configure those properties which they share in common.

 

The form itself will indicate whenever multiple controls are selected (three for this example):

 

44Forms7

 

Go to the Required property and from its drop-down, select Yes.

Upon its change, notice that the UI fields for these attributes now show a red marking, which indicates that they are compulsory/mandatory fields for the user to fill out:

 

45Forms8

 

Alternatively, you may configure the attributes one by one.

 

4.6. Click on Ticket attachments and configure how this form allows end users to upload files.

Click on the Advanced tab, and for this tutorial ensure you set:

Allow delete: Yes

Max files: 2

Valid extensions: pdf; png; jpg; doc; docx

Maximum size (bytes): 1000000

 

This way, you are enforcing security parameters so that for instance, really large files or any type other than the ones specified (such as potentially harmful ones) aren't permitted.

 

48Forms11

 

4.7. Close the form and click Yes (Save), when prompted to save changes in the form.

 

46Forms9

 

4.8. Back in the process diagram view for the forms, click Analise and resolve to define its form.

 

47Forms10

 

Notice that Report ticket no longer displays an alert because its user interface has been already configured.

 

4.9. Switch to the Controls tab, and expand Containers.

In there, double-click Group, so that it is automatically included as a control in the form.

 

With this form, when defined, a Help Desk agent will be able to review and resolve the ticket that was submitted by the Requester. The agent will be able to type in the step by step guide for the Requester to solve the issue, after reviewing the issues and severity of the case.

 

49Forms12

 

Upon including the group, it highlights and the cursor becomes active within the text so that you may edit it.

 

4.10. Rename the group by starting to type right in.

It is suggested that you delete the default Group label, and name it as Ticket detail.

Click the Ok icon or hit Enter when done.

 

50Forms13

 

4.11. Once the group is created, drag and drop attributes from the Data tab, and into it.

First make sure you drag Subject and release it well inside of the group (whenever the "Drop Here" message inside highlights by showing a greenish line).

 

51Forms14

 

4.12. Repeat these steps for these other attributes: Detailed description, Severity and Ticket attachments.

Alternatively, you may choose to double-click on each of the attributes so that they are included at the end of the form; and then move them into the group by dragging them inside.

 

52Forms15

 

At this point, your Analise and resolve form should look like the image below:

 

54Forms17

 

4.13. Select all four attributes and set them as Editable = No.

To do this, click on Subject first, then hold CTRL and select each of the other attributes: Detailed description, Severity, and Ticket attachments.

 

53Forms16

 

Notice how through forms, you are explicitly defining which information users are allowed to see during each point during the process.

Furthermore and for the Analyze and resolve form, we are setting which information are users actually allowed to edit or input.

 

Even though this tutorial does not focus on it, you may also set that each UI field is dynamically set as visible, editable, or required, based on a business expression considering the value of another attribute, or based entirely on the user's input when filling out other UI fields in the form.

For more information on this, please refer to Customizing controls behavior.

 

4.14. Switch to the Controls tab, and expand Containers to double-click Group and add a new one.

It is suggested you name it Analysis.

 

55Forms18

 

4.15. Add the Solution steps attribute into that Analysis group.

Then, make sure you click on its UI field in order to edit its properties.

 

Ensure you set both Required = Yes, and Is extended = Yes:

 

56Forms19

 

4.16. Close the form and click Yes (Save), when prompted to save changes in the form.

 

57Forms20

 

4.17. Back in the process diagram view for the forms, click Confirm resolution to define its form.

 

58Forms21

 

4.18. Click on the Copy from option available at the upper ribbon.

 

This form will be shown to the Requester once the agent has already analyzed and resolved the ticket. The Requester will be able to see the information that the agent added, try and solve the issue and confirm if it was actually resolved.

 

59Forms22

 

You are presented with a pop up window displaying the entire process workflow, so that you can choose to import a form that you have already defined for a previous step; and hence, avoid having to design it from scratch:

 

CopyFrom

 

4.19. Click on Analyze and resolve to select the form from this Activity, and click Ok.

 

60Forms23

 

This action will modify your current form so that it looks just the same as the one defined previously for Analyze and resolve.

 

4.20. Click on the Solutions steps UI field to edit its properties and set it as Editable = No.

 

61Forms24

 

4.21. Add the Ticket resolved? attribute by dragging and dropping it into the Analysis group.

 

63Forms26

 

4.22. Click on the Ticket resolved? UI field to edit its properties and set it as Required = Yes.

 

62Forms25

 

4.23. Click the Properties option found at the upper ribbon, to edit the general properties of the form.

For this specific form, enable the use of User Confirmation, by setting Needs user confirmation = Yes and assigning a User confirmation message.

It is suggested that you use for User confirmation message, this text: "Please acknowledge that confirming that the ticket is resolved cannot be undone".

 

UserConfirmation

 

4.24. Close the form and click Yes (Save), when prompted to save changes in the form.

 

64Forms27

 

4.25. Back in the process diagram view for the forms, click Review and document to define its form.

 

65Forms28

 

4.26. Add the following six attributes into the form, by double-clicking on them: Subject, Detailed description, Severity, Ticket attachments, Solution steps and Documentation comments.

 

Finally, when the issue was resolved and it was confirmed by the Requester, the agent will be presented with the interface that will be constructed in this section. The agent will be able to add any additional documentation comments for reviewing purposes.

 

66Forms29

 

4.27. Select all UI fields except Documentation comments, so that these are set as Editable = No.

Recall that you can select multiple UI fields by holding the CTRL key while clicking on each one of those you want to select.

 

When setting them as non-editable, your form should look like the image below:

 

67Forms30

 

4.28 Close the form and click Yes (Save), when prompted to save changes in the form.

 

68Forms31

 

You are redirected back in the process diagram view for the forms, where you will notice that now all Activities have their user interfaces set up (because none show an alert icon, and the End Event or the Gateway are both performed by the system without the need of a UI).

 

69Forms32

 

At this point, you are set defining how data used by the Help desk process is captured and displayed.

 

5. Define business rules.

Defining business rules means setting the logic that runs behind the processes, which encompasses both: expressions used for the workflow's routing (presented as Define expressions), and processing/triggering certain actions (presented as Activity actions).

 

For this tutorial, it is only considered setting the expression used for the workflow's routing, which applies namely to Gateways, where you have Bizagi evaluate which of the possible paths the process should take.

Even though this tutorial does not focus on Activity actions, through these you may completely run sophisticated operations, calculate values automatically, integrate other systems or emailing services, and invoke web services, among others.

 

5.1. Click on the icon next to Define forms in its drop-down list and select Define expressions:

 

70Logic1

 

This is an alternative to going back to the Process Wizard, given that it is a shortcut that can launch any of the first six steps presented by it.

Upon clicking on Define expressions (a section presented otherwise inside of step number four in the Process Wizard), you are presented again with the entire process diagram but this time, it will focus on Sequence Flows where you need to define how they become active.

 

72Logic3

 

Similarly as when defining forms, notice that those elements which haven't been configured yet, are highlighted (with a yellow shadowing).

 

5.2. Click on the Sequence Flow labeled as Yes:

 

71Logic2

 

5.3. Click on the Based on the result of an expression checkbox:

 

73Logic4

 

5.4. Click on the New button:

 

74Logic5

 

Click directly on the New button is a shortcut to create a new expression of the "Standard" type.

 

5.5. Drag and drop the Ticket resolved? attribute into the first box seen on the right panel.

 

75Logic6

 

5.6. Click on <insert an operator>.

From the presented drop-down list, then select is equal to.

 

77Logic7

 

5.7. Click on <insert a value>.

From the presented possible values, specifically for the Ticket resolved? attribute, select true.

Notice that because this attribute is of the Boolean type, then true and false are immediately identified as the two only possible values.

 

78Logic8

 

Click Ok when done.

You are redirected back to the process diagram view where Sequence Flows are highlighted, and also that the path labeled as Yes is now properly set (no longer highlighted).

 

79Logic9

 

At this point the expression you defined, evaluates a statement as either a true one or a false one.

Whenever this expression becomes a true statement, then Bizagi will activate that specific transition (provided that the workflow has advanced up to that point where the Gateway is).

 

5.8. Click now on the Sequence Flow labeled as No:

 

80Logic10

 

5.9. Click on the Else (when no other option is valid) checkbox.

Click Ok when done.

 

81Logic11

 

You are redirected back to the process diagram view where Sequence Flows are highlighted, but this time you can check that both paths are properly set.

Notice that there is a visual mark, crossing out the path which is taking the "else" path.

 

Use the shortcut at the step of the wizard, to directly jump to step number five (Performers):

 

82Logic12

 

You are presented with the entire process diagram, but this time, it will focus on Activities where you need to define to which users these are allocated, and exactly how.

 

88Performers6

 

6. Define performers.

Defining performers means exactly configuring the algorithms and conditions employed, for each of the different Activities, so that Bizagi can assign workload to the diverse process participants.

Process participants are most often based on roles definition, though it is not necessarily bound to them (i.e, you may base workload allocation on other criteria such as geographical location, position or area in the organization, etc).

For further information about performers, refer to Process participants.

 

For this tutorial, it is only considered distributing workload according to role definitions, as initially described at the beginning (Example's description), where a Requester and a Help desk agent role are employed.

 

6.1. Click on Analyze and resolve.

 

83Performers1

 

You are presented with a wizard which guides you through the definition of allocation rules.

 

6.2. Hover over the default And, circled in blue, and click on the plus sign having a red background color:

 

86Performers4

This action allows you to include a condition box, to define this Activity's assignment.

 

6.3. Click on the recently added condition box (stating "Click to open properties"), and then select the Role property from the drop-down list.

 

87Performers5

 

6.4. Leave the Equals and Expression default values for the two next drop-down lists, and click on the plus sign to add a new role.

 

89Performers7

 

6.5. Type in "Service agent" in the textbox enabled to capture the new role's value, and then click on Add when done.

 

90Performers8

 

Basically, this condition is now configured and it states that Analyze and resolve is assigned to the user with least amount of work, having the role of "Service agent".

 

6.6. Click the drop-down list for the Assignation method and change it to "Sequential".

This modifies the default algorithm employed by Bizagi to distribute workload among those end users meeting the assignment condition:

 

AssignmentAlgorithm

 

6.7. Click Ok when done:

 

 

91Performers9

 

 

Upon clicking Ok, the wizard is closed and you are redirected back to the process diagram view focused on performers.

 

6.8. Click on Confirm resolution.

 

85Performers3

 

 

6.9. Repeat the same procedure as with Analyze and resolve.

That is, start by adding a condition box, and then clicking on it to define its properties.

 

86Performers4

 

6.10. Similarly, set the condition to evaluate the user's role, but this time define a new role called "Requester".

This time, do not change the default assignment method (it should remain "By load").

Click Ok when done:

 

92Performers10

 

At this point you are redirected back to the process diagram focused on performers.

 

6.11. Click on Review and document:

 

84Performers2

 

 

6.12. Repeat the same starting procedure done so far to define an assignment condition:

 

86Performers4

 

Given that the condition for Review and document is the same one as for Analyze and resolve, the same procedure is applicable save the difference that this time, it is not needed to define a new role but refer to the previously created one.

 

6.13. When defining the condition, use Role, Equals, Entity value; and this time, simply select "Service agent" from the last drop-down list:

 

93Performers11

Notice that Bizagi includes a heuristic in its assignation algorithms; and the "By load" assignation method will always give priority to a user who has previously worked on the same process instance (given that the user meets the assignment condition).

Leave the assignment method set to "By load".

 

6.14. Click Ok when done.

At this point you are redirected back to the process diagram focused on performers, and you may now see that performers for all Activities are properly defined.

 

94Performers12

 

 

7. Set authorization.

Setting authorization means exactly configuring access rights to establish well-defined boundaries towards what each of the roles may and may not accomplish.

 

For this tutorial, it is considered to base access rights according to role definitions, having a Requester only allowed to start new process instances, a Help desk agent only work on the Activities that user has been assigned, and an Admin user having access to system settings, general configuration and other monitoring options including BAM, analytics or reports.

 

7.1. Click on Expert, located at the upper ribbon in order to move out of the Process Wizard and into an advanced view based on modules.

 

Expertview

 

7.2. Click on the Security module, located at the left panel and browse its Authorization group (by expanding its inner items):

 

95Authorization1

 

 

Notice that for this tutorial, configuration regarding authentication is left with the default local authentication, though Bizagi supports integration with identity providers such as Microsoft ADFS, Microsoft Active Directory, or Azure AD among others

 

7.3. Expand the Pages item, and proceed to set which roles are the only ones authorized to view and use each of the options presented to end users.

 

Over the following steps, a similar procedure is carried out for these following sub-items in Pages (24 in total):

Administration / Alarms

Administration / Asynchronous work item retries

Administration / Authentication log query

Administration / Business policies

Administration / Cases

Administration / Custom delegation

Administration / Dimensions

Administration / Encryption

Administration / Entities

Administration / Holidays

Administration / Licenses

Administration / Multilanguage

Administration / OAuth applications

Administration / Pending requests

Administration / Processes

Administration / Profiles

Administration / Project Name

Administration / Stakeholder

Administration / Theme builder

Administration / User default assignation

Administration / Users

Analysis / All reports

Bizagi Queries / Bizagi Queries

Cases / New case

 

 

AuthorizationOpts

 

7.4. Start by click on Alarms (as the first one of the sub-items listed above).

Then, click on Add User Role in the right panel and select Analysis from the drop-down list:

 

96Authorization2

.

Click Ok to close the pop up window.

 

7.5. Click on the appearing Analysis role in the upper pane, and then click on the Allow radio button:

 

97Authorization3

 

Click Ok to save this change.

At this point and through the last two steps, Bizagi is now restricting that the Alarms menu option is only available to those end users having the Analysis role (all other roles and users are left with access denied, by default, when explicitly including one authorized role).

 

7.5. Repeat the previous steps for each of the other sub-items found inside of Administration or inside of Analysis, as listed above (all except Cases / New case).

In the end, all of these need to be left with Analysis as the only listed role, being set as Allow:

 

98Authorization4

 

 

 

Remember to always click Ok to save changes (otherwise the Allow / Deny radio button selection is not persisted).

 

7.6. For the remaining sub-item (Cases / New case), also repeat the same step as above.

But this time, ensure that it is left with Requester as the only listed role, being set as Allow (in other words, repeat the same steps but select Requester as the role instead):

 

99Authorization5

 

 

7.7. Go back to the Administration / Users sub-item.

Having already configured the Analysis role, click on Add user group this time:

 

100Authorization6

 

7.8. Select Default Assignation users from the drop-down list and click Ok.

 

101Authorization7

 

7.9. Click on Default Assignation users at the upper pane and then click on Allow.

Click Ok when done.

 

102Authorization8

 

 

8. Enforce case privacy.

Enforcing case privacy means exactly restricting visibility and access to process instances (i.e, cases) so that only those end users who are working on them (or have worked on them previously), can see their information.

This part is also set while in the Expert view.

 

8.1. Click on the Processes module, which is the first one located from top to bottom and locate the Help desk process.

 

103CaseP1

 

8.2. Right-click on version 1.0 of the Help desk process and select Properties.

You may need to expand the Applications, App, Processes and Help Desk items.

 

104CaseP2

 

8.2. Select Private from the Case security drop-down list.

 

105CaseP3

 

You may also take this opportunity to define an SLA for the complete process.

It is suggested that you input an Estimated duration of 24 hours, a Lower limit of 1 hour and an Upper limit of 48 hours.

Click Ok when done.

 

9. Configure parameter entities.

Configuring parameter entities means exactly: both, defining the use of business keys as a best practice (oriented to data integrity, performance and integration and security with other systems), and also inputting starting values so that it is treated indeed as an entity in Bizagi providing parameters.

This is so because business keys prevent you from adding duplicate values, implement use of indexes for best performance, and enforce exchanging information with other systems while using security by obscurity and ensuring a same logical record is addressed.

This part is also set while in the Expert view.

 

9.1. Click on the Entities module, which is the second one located from top to bottom, and locate the Severity entity.

 

106Parameter1

 

You may need to expand the Parameter item.

 

9.2. Right-click on this entity and select Advanced properties:

 

107Parameter2

 

9.2. Switch to the Business key tab, and tick the Enable business keys checkbox.

Then, click on the Code attribute and use the >> button to assign this attribute as Business Key:

 

109Parameter4

 

 

9.3. Click Ok when done:

 

108Parameter3

 

Clicking Ok closes the window and redirects you back to the Entities module view.

 

9.4. Expand the Severity entity and click Values:

 

110Parameter5

 

9.5. Expand the Severity entity and click Values:

 

110Parameter5

 

9.6. Use the Add Severity button to input a new value.

Notice that this entity is designed to have Critical, Normal and Low severity.

 

111Parameter6

 

Upon clicking Add Severity, the cursor is located at the first column needing your input (Name for this tutorial).

It is suggested that you input: Critical for this field and input S01 for the Code.

 

113Parameter8

 

9.7. Repeat this step to add the other two values.

Input Normal with S02 for its Code, and then Low with S03 for its Code.

 

In the end, your three values should be listed as shown below:

 

112Parameter7

 

At this point, the parameter entity is properly set up, and no further configuration is needed within Bizagi Studio for the scope of this tutorial.

 

10. Configure sample end users.

Configuring sample end users means exactly creating those users which will work in the Help desk process, so that you can test everything that was configured in Bizagi Studio.

Notice that end users are never created inside of Bizagi Studio but on the actual runtime environment, by means of the Bizagi Work portal (the application that presents the processes to end users).

 

Given that Bizagi Studio bundles an integrated Work portal, you rely on this possibility in order to perform quick prototyping, unit tests, and overall verifications on how the processes behave in execution.
The integrated Work portal featured by Bizagi Studio presents everything just exactly as it is presented eventually in a production environment to end users.

 

For this tutorial, you will create four end users: 1 requester, 2 service agents, and an admin user. This is apart from the default internal system user which is shipped in with Bizagi.

 

10.1. Launch the Work portal by clicking on the Run option located at the upper ribbon:

 

114Users1

 

Notice that you may alternatively use the quick access icon.

Both result in opening the default browser in your machine, and redirecting you to your locally-hosted Work portal (http://[your_machine]/[your_Bizagi_project_name]):

 

114Users2

 

By default, the first time you access the Work portal you are not presented with a login page, given the fact that it is the bundled one for Bizagi Studio and because there are no users created so far, other than the default internal system user.

 

10.2. Click the Admin menu option and then click on the Users option:

 

115Users3

 

10.3. Click on the New user button to register a first sample end user.

 

116Users4

 

10.4. Add details at the Basic Information tab, for the first user.

It is suggested that you input:

Full Name: Tom Hall

User Name: U01

Domain: AgilityCorp

Notify by Email: No (unchecked)

Contact Email: tom.hall@agilitycorp.com

Password: BizagiBPM1

Expired Password: No (unchecked)

Locked Account: No (unchecked)

Send Mail with Password to User: No (unchecked)

 

117Users5

 

10.5. Switch to the Organizations tab, and assign the current default Organization (named Organization).

Do this by first clicking on it, and then clicking on the >> button to move it to the rightmost box.

 

118Users6

 

10.6. Switch to the User configuration tab, and assign the role for this user.

Do this by clicking on Requester at the Roles line, and then clicking on the >> button to move it to the rightmost box.

 

119Users7

 

Click Save to persist the end user.

You may need to scroll down in this window to access the Save button.

 

Upon saving the user, you are redirected back to the window where you see all users listed.

At this point, you should see the currently used default Bizagi system user (admon), as well as the one you recently created.

 

120Users8

 

Click New user to repeat the previous steps, this time for a second user.

 

10.7. This time, for Basic Information, it is suggested that you input:

Full Name: Martha Lewis

User Name: U02

Domain: AgilityCorp

Notify by Email: No (unchecked)

Contact Email: martha.lewis@agilitycorp.com

Password: BizagiBPM2

Expired Password: No (unchecked)

Locked Account: No (unchecked)

Send Mail with Password to User: No (unchecked)

 

121Users9

 

10.8. Switch to the Organizations tab, and assign the current default Organization (named Organization).

 

118Users6

 

10.9. Switch to the User configuration tab, and assign the role for this user.

This time click on Service agent at the Roles line, and then click on the >> button to move it to the rightmost box.

Recall that you may need to scroll down to click on Save to persist changes.

 

120Users10

 

10.11. Click New user to repeat the same steps, this time for a third user.

For this third user, in its Basic Information, it is suggested that you input:

Full Name: Juliette Leroy

User Name: U03

Domain: AgilityCorp

Notify by Email: No (unchecked)

Contact Email: juliette.leroy@agilitycorp.com

Password: BizagiBPM3

Expired Password: No (unchecked)

Locked Account: No (unchecked)

Send Mail with Password to User: No (unchecked)

 

122Users10

 

Similarly, in its Organizations tab, this user should use the same default Organization:

 

118Users6

 

And for the User Configuration tab, repeat the same role as previously configured, which means setting this user to be a Service agent:

 

120Users10

 

Scroll down and click on Save to persist changes.

At this point, you are presented with the three users you created so far, plus the default internal system user (admon).

 

10.12. Click New user to repeat the same steps, this time for a fourth and final user.

For this third user, in its Basic Information, it is suggested that you input:

Full Name: Piotr Blanter

User Name: U04

Domain: AgilityCorp

Notify by Email: No (unchecked)

Contact Email: piotr.blanter@agilitycorp.com

Password: BizagiBPM4

Expired Password: No (unchecked)

Locked Account: No (unchecked)

Send Mail with Password to User: No (unchecked)

 

123Users11

 

Similarly, in its Organizations tab, this user should use the same default Organization:

 

118Users6

 

And for the User Configuration tab, this time set the Analysis role:

 

124Users12

 

Scroll down and click on Save to persist changes.

At this point, you are presented with the four users you created, plus the default internal system user (admon):

 

125Users13

 

10.13. Close the users administration window.

Then click on the logged in user's avatar located at the upper right corner and click Logout:

 

126Users14

 

When logged out, you are redirected to the login page, and you may now run a full test involving the different users participating in the Help Desk process:

 

127Users15

 

Execution

Access the Work portal with the different created end users, in order to verify how the built process behaves.

Furthermore, you may test every single scenario covered up by configuration in Bizagi Studio.

This implies that the possibilities shown in execution for this process, will naturally reflect those behaviors which were configured at the previous steps; and as such, these possibilities can be changed as needed.

 

In order to verify and test run the Help desk process (within the same development environment), follow these steps:

 

1. Login with user U01

Take it from where you left in the previous step, by going into the browser and using the login page.

If you closed the browser, then launch the Work portal again by using the Run button in Bizagi Studio.

 

At the login page, input these credentials:

User: U01

Password: BizagiBPM1

Click Login when done.

 

128ExecU01

 

2. Create a new case

Once logged in to the Work portal, click on the New case menu option and click on All processes to list all available processes built so far:

 

129ExecU02

 

 

Notice that for this user having the Requester role, admin menu options or further possibilities are disabled.

 

3. Locate the Help desk process

Click on Help desk in order to start a new case:

 

130ExecU03

 

 

4. Fill in the Help desk ticket's details

Type in text of your choice to fill in a new ticket.

That is, fill in the Subject, Detailed description and select a Severity from the values in the drop-down list:

 

131ExecU04

 

5. Include attachments

Notice that you may optionally include up to 2 attachments as evidence to support the ticket.

To do this, click on the attachment icon right next to Ticket attachments:

 

133ExecU06

 

In the appearing dialog, you may click on Choose file to upload a local file as an attachment. Click Upload when done.

 

You may repeat this step so that in the end, you have 2 attachments.

Recall that no more than 2 are allowed due to previous configuration for this UI field:

 

134ExecU07

 

 

Also recall that you are allowed to upload files with a .pdf, .png, .jpg, .docx or .doc file extension:

 

UploadAllowedExt

 

Similarly you are allowed to upload files with no more than 1 MB of total file size:

 

UploadLargerThan

 

6. Submit the ticket

Click Create when done, in order to submit the ticket in the built Help desk process.

 

Notice that if you should not fill any of the required fields from this form (Subject, Detailed description or Severity), then Bizagi will prompt that you make sure you have done so:

 

132ExecU05

 

Upon submitting the ticket , you are presented with a confirmation and a statement about this user not having further pending work.

If browsing over the recently created case, you may notice that it has been assigned to user "Martha Lewis" given that such user is granted with the Service agent role:

 

135ExecU08

 

 

In other words, notice that the submitted ticket has been numbered as case 1, and it is currently assigned to user U02.

 

7. Repeat this step; create another new case

Repeat the above steps to create another new case.

 

This time, the Help desk process is accessible through the list of Recent processes:

 

136ExecU09

 

Fill in at least the minimum required fields (Subject, Detailed description or Severity), and click Create when done.

You may fill in any details and for instance, skip uploading attachments this time.

 

Notice that this second case was created in order for you to verify that the assignment algorithm is working as expected, and that this new case is now assigned to the other user granted with the Service agent role: "Juliette Leroy".

 

137ExecU10

 

In other words, notice that the submitted ticket has been numbered as case 2, and it is currently assigned to user U03.

At this point log out with this user:

 

138ExecU11

 

When logged out, you are presented with the initial login page.

 

8. Login with user U02

At the login page, input these other credentials:

User: U02

Password: BizagiBPM2

Click Login when done.

 

139ExecU02

 

9. Work on the pending activity

One logged in to the Work portal, notice how the Inbox automatically displays pending work for the U02 user (Martha Lewis), and in this scenario, it is represented by the Analyze and resolve activity pending for the case numbered with 1.

 

140ExecU02_02

 

Click on that pending activity.

 

10. Fill out details for Analyze and resolve

Upon clicking on the pending activity, you are presented with the UI for it, as defined in Bizagi Studio.

Notice you may choose to click on files attached by user U01 previously, in order to download and view them.

 

141ExecU02_03

 

Though, the important aspect in this specific activity, is to ensure you fill out the Suggested steps field.

Click Next when done:

 

142ExecU02_04

 

11. Browse for a different case details

Upon clicking Next, you are presented with a message prompting you that there are not further pending activities.

Use the search box located to the upper right corner, to browse for a given case.

 

Type 2 as the case identifier (the one assigned to user U03 -Juliette Leroy-) and hit enter.

You will notice that no results are displayed, meaning that the case security configured through Bizagi Studio is effectively not allowing a different user to view details of a case not assigned to that user.

 

147ExecU02_09

 

12. Browse for the worked on case

Use again the search box located to the upper right corner, to browse for a given case.

This time, type 1 as the case identifier (the one which was already assigned to this user U02 -Martha Lewis-) and hit enter.

 

Upon hitting enter, you are presented with a one-line summary view of the case numbered with 1:

 

144ExecU02_06

 

Notice that this case has already moved forward into the Confirm solution activity and the current user can view its detail because it is the case in which this user was a participant.

 

13. Click on the process diagram graphic view  

Locate the process diagram graphic view icon to the left of the one-line summary information, and click on it.

 

143ExecU02_05

 

You are presented with the graphic query.

Hover over the currently pending Confirm solution activity, and you will notice that it displays which user is currently assigned to that activity and its relevant dates.

 

145ExecU02_07

 

14. View details from previous activities.

Click on the Path button to highlight the complete path taken by such case.

Notice you may again hover over activities, but this time, hover over the Analyze and resolve activity in order to learn about details of that activity's completion.

 

146ExecU02_08

 

Click Close when done and then log out with this user:

 

148ExecU02_10

 

Notice that so far, none of these users (U01, U02, nor U03 by extension), has access to admin options or further menu options others than the Inbox or Live processes (which you may ignore for the scope of this tutorial).

 

15. Login with user U01 again

At the login page, input these other credentials:

User: U01

Password: BizagiBPM1

Click Login when done.

 

128ExecU01

 

You will not be needing to login with user U03 given that it has the same role and expected activity as user U02.

User U03 was simply created so that you could validate how the assigning algorithm distributes evenly the two submitted tickets: case number 1 going to user U02, and case number 2 going to user U03.

 

16. Work on the pending activity

You are presented with the Confirm solution activity as pending for this user, for the same case worked on before (case number 1).

 

149ExecU01t2_01

 

Click on that pending activity.

 

17. Fill out details for Confirm solution

Upon clicking on the pending activity, you are presented with the UI for it, as defined in Bizagi Studio.

Notice that for this step, you may review details on the ticket plus the suggested steps as entered by the Service agent, though it is expected and compulsory for this user to fill out the Ticket solved? field.

 

150ExecU01t2_02

 

Tick the Yes radio button and click Next when done.

 

You are presented with the prompt stating that there are no further activities expected from this user.

Proceed to log out:

 

151ExecU01t2_03

 

16. Login with user U02 again

At the login page, input these other credentials:

User: U02

Password: BizagiBPM2

Click Login when done.

 

139ExecU02

 

17. Work on the pending activity

You are presented with the Review and document activity as pending for this user, for the same case worked on before (case number 1).

Notice that the assignment algorithm is evaluating that the same user U02 should work on this case given that it has worked on it before (i.e, user U02 has priority over user U03 when both users are set with the Service agent role that meets with the assignment condition).

 

152ExecU02t2_01

 

Click on that pending activity.

 

18. Fill out details for Review and document

Upon clicking on the pending activity, you are presented with the UI for it, as defined in Bizagi Studio.

Notice that for this step, you simply may opt to add comments for documentation or as the incident's post mortem.

 

153ExecU02t2_02

 

Fill in any comments and click Next when done.

 

19. Browse the current case

Though you are presented with the prompt stating that there are no further activities expected from this user, use the search box (located to the upper right corner), to browse for this case recently worked on.

Type 1 as the case identifier and hit enter.

Notice that you will see there is no due date given that the case now has no pending activities.

 

154ExecU02t2_03

 

You may confirm this by clicking on the View summary icon, where the state of the case is shown as "Successfully completed":

 

155ExecU02t2_04

 

From there, clicking on the Process Diagram icon will display the graphical view of this case's state, while also allowing you to click Path to check the course of activities completed by it:

 

156ExecU02t2_05

 

At this point, you may see how a case has been completed, meaning that it is a given business representation of the Help desk process (an example of an instance that took the sequence of activities as shown above).

 

And that's it!

You have now built your first application in Bizagi, offering a sample process which you have previewed and verified as it would behave in execution for end user (i.e in a production environment).

In case you wish to deploy and run it in the cloud, refer to the next section.

 

Running the process in the cloud

In order to see this process in action directly in the cloud, you may export it with the Bizagi Studio and then import it into your cloud environment.

This is done as described at From Studio to PaaS.