How to make your workflow-driven applications agile? - Skryv

How to make your workflow-driven applications agile?

By Toon Timbermont - Co-founder - over 4 years ago

Workflow Management
How to make your workflow-driven applications agile?

We are living in a digital era. Everything changes faster and there are new requirements around how agile your business is. Agile development and continuous integration are key enablers for this, but how to get to this agility when you have workflow-driven applications? That have long-running instances?

In this blog post, I'll explain how workflow migrations help to reach the business agility required by more and more public agencies.

Volatile requirements ask for an agile business

Each public administration has to deal with requirements from different stakeholders. Think about citizens that want to (digitally) interact with your department to request a subsidy or to know where a recognition as a certified professional is.

These use cases often use workflows (modelled in BPMN, CMMN or a combination) to underpin the digital applications for these uses cases. And during the project, you model the workflow with the information you have.

Soon, you'll find out that the requirements are volatile:

  • Regulations may change;
  • Requirements of the user may not be as clear as you'd like or workflows may not run as smooth as you thought they would (even if you've involved users early on and ran all possible user tests, real production usage will still be a critical source of learning & improving);
  • Time constraints or external deadlines may force you to model only the 1st phases of your workflow, as a 'minimal viable product'.

In the "waterfall" world, you would try going back to the initial list of signed off requirements, but this model no longer works. Agile development, involving (business) users and providing short feedback loops to get early feedback has changed the rules of the game. Continuous integration and continuous delivery have also pushed this to the release cycle beyond the project team.

How to make your workflow-driven applications agile?

1/ Readable workflows

Have readable workflow designs and decompose your workflow in small units. Understanding the workflows is the basis to assess the impact of workflow migrations. So pay attention to the workflow design. Use logical separation between a high-level end-to-end workflow and the relevant sub-levels. What we typically see is that the overall lifecycle of the case is modelled in BPMN, calling various sub-workflows (BPMN) or expert work phases (CMMN).

2/ Right tooling to support workflow migration

Change is inevitable, so you will be faced with workflow migrations. Make sure you foresee the workflow and tooling to support workflow migration

  • As part of your release cycle, foresee time and people to do the workflow migration
  • Ideally, your tooling foresees in a (visual) migration, showing you the impact.

Similar to the continuous delivery of code, small changes are easier to release than big changes. So do not hesitate to release early and often. A small change will likely affect less running workflows and make the number of interventions smaller.

3/ Think about data migration as well

Workflows always manipulate data in one or another form. So do not forget to consider that as well!

Source image: Camunda cockpit

What do you think?

What challenges do you run into during workflow migrations? What is your view on an agile business with workflow-driven applications? Want to read more about this topic? Let us know via email or send us a message.

Bring agility to your public administration?

We know how

Related Posts