BPMN process modeling with Bonita Studio
Building applications to do things better leads to operational excellence. And using digital tools and applications across the enterprise to do business differently – to enable innovation and creativity – leads to strategic advantage. When digital transformation tools are applied to the long-term vision and creativity of the enterprise, digital transformation becomes strategic.
Download Bonita Studio Community from https://www.bonitasoft.com/downloads. There is either zip package or installer available depending on your operating system. At the moment of this writing there Bonita Studio Community version 2023.02-u0.
TLDR
In this article you will see how to create project, organization and design sample BPMN process. Next you will see how to process cases and tasks by various defined and mapped users relaying only on comments, so no forms design needed. Forms design will be covered in another article.
Creating new project
In order to create new Bonita Studio project:
At this point you can also select additional extension. But for now I will skip that and just create a new project. As it is deployed on Java platform you need to give group ID and artifact name. Then first things first. Create new organization. By default new projects start with ACME sample organization. Select organization and then show file in file explorer and manually delete it. I suppose there is some other options to do this but in community versions it seems that we lack of such feature.
Configuring new organization
Organization comprises of groups, roles and users.
It is somehow required to have at least one group and role before creating new user. Next, deploy project from menu and not from organization pane which will not work (for some unknown reason). You need to put default username.
For my Ubuntu installation opening application from this dialog will not work.
Accessing applications
Now lets talk a little about how to access applications. You have few options. First there is Bonita Super Administrator Application at 127.0.0.1:8080/bonita signing in as install
user with the same password.
This super administrator application thing should be use to proceed with maintenance changes, managing data model (only one can be active at a time) etc. However signing in as a different, regular user created just moments before gives us slightly different view with one additional application.
This user application allows you to work with process cases based on processes you will create in your project.
UI Designer
One more thing available using browser is a designer thing for creating and configuring pages and forms. This application can be reached at port 8081 instead of port 8080 for beforementioned applications.
Designing sample process
Bonita Studio allows you to design and deploy functional instances of BPMN processes.
For sake of case management it is important to keep track of your process versioning. It is directly linked with processing cases. Every another version of your process should get new version number which will be reflected on available cases to start by regular users. For now we just set default 1.0 version.
Now it is time to configure user mapping for the process. I start with unmapping sample ACME groups. It can be done from Configure dialog available on main menu. In addition to that I provide some new mapping instead.
I also add additional users for sake of an example here.
In order to work with configuring process I deploy the whole project once again to apply organization and user changes.
Sample process looks like this:
Configuring process
Aside from process BPMN notation there is need to setup instantiation form and overview page. For sample process I set it to No form.
Even without those forms you will be able to provide commets on task cases. I set No form also on every process steps. It can be done on Execution pane. On general pane you can setup actors which is user that can interact with this particular process step.
For now and this sample process I think it is enough to start playing with it. Last thing is to deploy the whole project once again.
Initating cases based on BPMN process
Now with project deployed, which is organization and process you can sign in as a User1. This user is within MyMapping kinda-group which maps to User1 and User2 from organization. As you can see User1 can initiate process case.
User2 can also initiate new process named Pool.
However User3 which is in different group cannot initiate new process. Which is exactly how I configure it.
Processing cases
Users placed as initiating actors can start a case. Users placed in mapping in first step can take cases for processing.
As User1 is in the same mapping as User2 (initiator), User1 can take this case at this point.
In order to place a comment you need to “take” a case. Case that is taken by a user will be seen on its Tasks list. Other users from the same mapping will see it on Cases list as there are no work to be done for other users and this work is directed to this user which took it for further proceeding.
Once User1 placed a comment a this task is no longer available as it is done. User1 and User1 (both in the same mapping) can see this case in Cases list.
User can also review all the comments history on case preview page.
At this moment User3 can take Step2 task, according to our BPMN process made before. Users which participated, i.e fill forms, left comments etc, can see those cases in Cases list. Cases that went thru all its steps go to Archived cases list.