BA Prince the B.A. Subscribe

Home / BPMN for Business Analysts

From BPMN Sketch to Camunda-Ready Model: User and Service Tasks

From BPMN Sketch to Camunda-Ready Model: User and Service Tasks

Watch on YouTube Subscribe

A BPMN sketch is fine for people, but a process engine like Camunda has to run it. Turn plain tasks into user, service and send tasks, name every end by its result, and export the BPMN file, all in the free bpmn.io modeler.

Step by step

Sketch vs engine

  1. Engine-ready BPMN. A BPMN sketch makes sense to people. But a process engine like Camunda has to run it, so it needs to know who or what does each task and how each path ends. The example is a refund process.
  2. New diagram. Start a new diagram in bpmn.io and name the start event Refund requested.

The sketch

  1. Sketch it. First, sketch the flow with plain tasks. Click the start event and add a task from its menu. Name it Check refund. Next, add a gateway that asks Refund approved? From the gateway, add a Pay refund task and label its arrow Yes. After it, add one more task, Tell customer. Then end the path with an end event. In a quick sketch, people often just call it Done. For the No path, drag an end event from the gateway's menu into the space below it. Name it Refund rejected and label its arrow No.

Task types

  1. User task. A plain task tells the engine nothing. Click Check refund, open the wrench and pick User task. The small person icon means a human does this step, so in Camunda it lands in someone's task list.
  2. Service task. A system pays the refund, not a person. So change Pay refund to a Service task. The gears icon means the engine calls another system to do the work.
  3. Send task. Tell customer sends a message out of the process. Change it to a Send task, shown by a filled envelope.

Clear ends

  1. Name the ends. Done is too vague. The engine records which end each case reached, so the end should name the result. Double-click the end event and type Refund paid.

Export

  1. Export. Click the BPMN button at the bottom left. It downloads the model as a .bpmn file. This is the file an engine like Camunda reads and runs.
  2. The ready model. Click on an empty part of the canvas to see the whole model: a user task, a service task, a send task, gateway arrows labelled Yes and No, and 2 ends named by their result.

Recap

  1. The rules. Before a process runs in an engine, give every task a type: User task for people, Service task for systems, Send task for messages. Label every gateway arrow and name every end by its result.

Common mistakes

  • Leaving tasks as plain tasks. A task with no type tells the engine nothing about who does the work. Camunda just passes straight through it, so nobody is asked to check the refund. Use the wrench to set a type on every task.
  • Mixing up the send and receive envelopes. A filled envelope is a Send task, which sends a message out. An empty envelope is a Receive task, which waits for a message to come in. If you pick the wrong one, the process stalls or never sends anything.
  • Ends called Done or End. The engine reports which end each case reached, so 2 ends both called Done can't be told apart. Name each end by its result, like Refund paid and Refund rejected.
  • Thinking task types are all the engine needs. Types tell Camunda what kind of work each step is. Before the process can run, someone still has to add details, such as who gets the user task and which system the service task calls. This is usually done in Camunda Modeler.

When a business analyst uses this

Before handing a refund process to the developers who will build it in Camunda, a BA goes through the agreed process map with the process owner. They mark each step as a person, a system or a message, and name each end by its result. That way the developers know which steps need a screen and which need an integration.

Questions people ask

What is the difference between a user task and a service task in BPMN?

A user task is work a person does. In Camunda it waits in a task list until someone completes it. A service task is work a system does: the engine calls another system and moves on when it finishes.

Can Camunda run a diagram made in bpmn.io?

bpmn.io saves a standard BPMN 2.0 file, which Camunda can open. To actually run it, you usually open it in Camunda Modeler and add engine details, such as assignees and what each service task calls.

How do I change a task's type in bpmn.io without redrawing it?

Click the task, open the wrench in its menu and pick the new type, such as User task or Service task. The task keeps its name and its arrows.

More in BPMN for Business Analysts