Drawing the first process

Let’s consider this example. We want to develop simple application for file approving. Users upload files in web application with a comment and stage of the file (draft, internal, customer).

There is different set of people with a right to approve / decline the files. We want to give them the power to decide whether the files should be accepted or reworked.

If the file is accepted, user knows that he or she might continue working on the next stage (or send it to the customer) and the process ends.

If file is sent for rework, user is able to upload new version and the process repeats.

And if file is scrapped, the process ends.

Identify the tasks

We can identify several tasks from the description.

  1. Uploading the file
  2. Approving the file
  3. Declining the file
  4. Scrapping the file
With this in mind, let’s create the skeleton of our process.

We highly recommend reading about petriflow fundamentals before further reading.

Drawing in Netgrif Application Builder

Firstly we create the transition that will represent task of uploading new document.

We call it Enter new document and assign it an icon.

We then create two places, p1 and p2.

We connect tranisiton and places via arcs.

Lastly we add one token into place p1 to signal, where do we want process to start.

Then we create the two possibilities to either approve or decline the file.

We call the transitions approprietly and connect everything with arcs.

Lastly let’s add the possibility to scrap the document.

We can now test the process in Simulation View (second most left button)

But there is still one thing missing, do you see it?

If we decline the document, how do rework it and approve it again?

Right now, there is no way to do that in the process.

We have to add a new transition!

We added a new transition Rework document.

Now we will be able to get token back to the place p3, so Approve will be possible.

By this point we have the skeleton of the process ready.

Try the application!

We published the process to our testing site, so you can try interacting with it hands on.