Camunda Design Query

Hi ,

We are migrating from a legacy OrderMangement system to Camunda in the telecom domain. We have a deadline to meet.

  1. As part of this we are evaluation a spring boot implementation of camunda.
    2.We have more than 50-70 processes in the current legacy implementation.
    3.Now we have to migrate all these to Camunda within 6 months

While modeling a particular process flow in camunda we were planning to just create one process and add all the code for 50-70 processes as part this single process to keep it simple at first.(Not worry about whether to use connectors or external tasks or gateways to save time)

Now there are 2 parts a. Workflow in Modeler b. Backend code in the springboot application.

  1. Does the size of workflow diagram (not the code) that gets created add to the complexity.?? Will creating 1 single process make it simpler to start off things.?

  2. Is keeping everything to a single process a good idea from a design and performance perspective? What are the pros and cons?

3.We will ofcourse extend the single process at a later stage and expand. Will this rengineering to be done later be more costly and complex to do.??


@Niall …may be you can help me with this design dilemna or point me to someone who can.

@Niall hey Niall, I was really hoping to get your view or any other expert’s view on this.

The answer to this question can be understood if you consider thinking about a process model in the same way you would code. If you where to put all your code into a single Java class the following would be true.

  • It would be hard to maintain.
  • It would be harder reuse reoccurring logical elements
  • It would be hard to read and take longer for new people to understand.
  • It would increase the scope and impact of any small change.
  • Multiple developers working on it will have to deal with merge conflicts.

All of those aspects would also be true when creating a model that is “too big”

I would say this is a bad idea - there is no performance benefits and you in fact lose a lot of important functions. Like reusable sub processes.

Why wait? Just do it from the start.

@Niall Thanks for this. :smiley:

1 Like