Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Implementing Workflow engine in Java Spring Boot

I have the below requirements where workflow is required:

  1. The product is a cloud based product where organizations will register and create roles for their team on the go.
  2. The teams will submit some entity like expenses, travel request etc for approval
  3. The approval flow will be configured by organization using organization roles (created by org) or system roles (owner, manager, admin) which are predefined by our application.
  4. There will be actions triggered on every approval that needs to be defined in our code.

My confusion is whether to integrate a workflow engine for this or not -

If yes, which workflow engine will support this flow.

If not, should I go around and build a custom workflow engine and a UI as per my needs or there's a better solution?

like image 213
The Cloud Guy Avatar asked Aug 17 '26 07:08

The Cloud Guy


2 Answers

You could take a look at unify-flowret, a lightweight Java orchestration engine I created as part of developing a new platform in American Express.

Here are the core features. Very simple workflow definition, state management, parallel processing, comprehensive audit logging, ticket management, process variables, call back life cycle events, crash resilience, SLA and work management etc.

You can checkout unify-flowret at https://github.com/americanexpress/unify-flowret.

like image 157
Deepak Arora Avatar answered Aug 19 '26 07:08

Deepak Arora


Look at the Temporal open source project. It is not a workflow engine in the traditional sense as it allows writing stateful orchestrations directly in Java avoiding confusing diagrams. There are multiple production applications supporting similar requirements.

like image 33
Maxim Fateev Avatar answered Aug 19 '26 06:08

Maxim Fateev



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!