BPMN Process modelling question


i am trying to model a backend process for an insurance company. The frontend is represented by a wizard style webapplication. The process is fairly linear so far (basically just a set of activities connected by flows matched to requests from the wepapplication), but this may change in the future. Where i try to wrap my head around is the fact, that the company wants to make it possible, that the process needs to be done once from beginning to end, but before reaching its end-state, it should be possible to go back to every step in the process and change some things.
How would i model something like that in BPMN ?


Hi Patrick,

The fact is BPMN is awful at this particular functionality. It’s one of the things that CMMN happens to be really good at.
It’s not impossible in BPMN but it makes for some very, very ugly models.


1 Like

Thanks a lot, exactly my thoughts, especially when the process would get more complex, it would be a nightmare to maintain with all the different possible flow connections. I am looking into CMMN!


1 Like

Hi Patrick,

as a process modeller I would raise the question, why the business guys wants to go back after each step? Maybe the User Interface should just provide more overview of the state?

Event Subprocesses allow certain corrections of the process data.

Cheers, Ingo

Hi Ingo,

the process itself is a sale process, the customer and/or sales person have to put in some important information to get a price on the product. after each step of input it is possible that several backend processes need to be executed. The Sales department wants the process to be done quickly, using only the necessary inputs in the first iteration, then they want to make it possible to step back to certain views and “play” with the input data (i.e. increasing/decreasing certain amounts) to customize the product.



yor description looks for me as an underwritting process. Have you checked
the CMMN process? Maybe that can be more usefulmas the bpmn.

Regards Gabor

Without tipping the scale too far over on either side of: BPMN or CMMN…

Camunda offers powerful features accross both formal process and case management. What about looking at ways to combine these capabilities into a sort-of hybrid solution?

Combining both:

a) Process, or business function, follow-through: Managed Process via BPMN

  • Example requirement: “We want to follow-up on both initial and add-on sales within a specified amount of time” (i.e. pipe-line and booked sales). And, “we want to track progress via Camunda’s built-in reporting capabilities”. Noting that reporting isn’t necessarily limited to BPM - but, a linear view of progress provides a more digestible visualization.

b) Flexible, ad hoc access to Business Function/Services: User-driven approach via CMMN (per customer / per sales-person)

  • Keep it simple. Just combine services - following an approach whereby “the salesperson knows what they need… and don’t interfere”. Case management keeps things dynamic and flexible. Letting the users build their own path. However, there is some structure to CMMN. Meaning, certain tasks are required. In fact, a BPMN-like process can exist. But, CMMN is difficult to follow if it becomes complex. For example, tracing linear progression from beginning to end is tedious if trying to answer the sort of question, “can we improve performance” or “what’s holding sales up?”.

Hybrid Example:
A BPMN+CMMN hybrid example can be a simple process with calls into CMMN model(s) - enforcing specific tasks necessary for operations. But, once started, the sales-person is then free to access any task necessary to quote and close on the opportunity.

1 Like