man in black long sleeve shirt holding girl in black long sleeve shirt

jBPM as AI Orchestration Platform – Part 1

This series presents jBPM as a platform for orchestrating external AI-centric environments.
Home » Blog » jBPM as AI Orchestration Platform – Part 1

Java library for business process and workflow management (jBPM) is an Open Source workflow engine written in Java that can execute business processes described in BPMN 2.0.

This three-part series presents jBPM as a platform for orchestrating external artificial intelligence-centric environments, such as Python, used for designing and running AI solutions.

Here’s an overview of jBPM’s most relevant functionalities for AI orchestration and guide you through a practical example that demonstrates its effectiveness as an AI orchestration platform.

Stroke Prediction solution deployed in jBPM is run by the users of OpenEMR
Stroke Prediction solution deployed in jBPM is run by the users of OpenEMR

In brief: About jBPM

Although the jBPM project defines itself as a BPM (business process management) or workflow engine, toolkit, or suite, describing it as an integration platform is more precise.

The features that support this characterization include:

  • Exposing business logic implemented in jBPM for external access – e.g., via REST API:
A REST API call to jBPM resulting in a response (ID: 976) with status 201 (“success”)
A REST API call to jBPM resulting in a response (ID: 976) with status 201 (“success”)
  • Providing an engine for business process automation:
Web-based workflow editor, part of jBPM’s business process automation engine
Web-based workflow editor, part of jBPM’s business process automation engine
  • Embedding components for interaction with external providers – e.g., with Python:
jBPM’s project-level dependency configurator displaying a dependency record for the Jep extension
jBPM’s project-level dependency configurator displaying a dependency record for the Jep extension

These capabilities enable jBPM to interact with external systems, make automation decisions, and manage callouts to external providers efficiently.

What makes jBPM an AI orchestration platform

Given its ability to orchestrate AI workflows, you might ask: Does jBPM have sufficient surrounding functionality to be considered a full-fledged AI orchestration platform?

Let’s examine the ecosystem around jBPM. Its “nearest neighbor” is likely Eclipse, the preferred IDE (Integrated Development Environment) for jBPM, particularly due to plugins like Eclipse BPMN2 Modeler:

A jBPM business process edited in Eclipse (offline)
A jBPM business process edited in Eclipse (offline)

Eclipse enhances jBPM by enabling offline development. The previously mentioned plugins allow developers to perform most tasks locally that jBPM’s web-based client supports. Moreover, as a highly extensible modular IDE, Eclipse provides tools to meet virtually any requirement faced by development teams.

Another key “neighbor” is PostgreSQL, one of several database engines that can be configured to support jBPM’s underlying data structures:

Internal jBPM tables deployed in PostrgreSQL
Internal jBPM tables deployed in PostrgreSQL

PostgreSQL’s ability to store jBPM’s technical data unlocks vast opportunities for data mining and optimizing AI solutions deployed within jBPM.

In this context, it’s worth mentioning another key “neighbor” – BIRT (Business Intelligence Reporting Tool). It’s one of the Open Source BI engines capable of extracting, transforming, and reporting on both technical and business data managed by jBPM:

BIRT maintaining reporting structures and visualizing jBPM data
BIRT maintaining reporting structures and visualizing jBPM data

Together, Eclipse, PostgreSQL, and BIRT, along with jBPM’s core capabilities, form a robust AI orchestration platform that facilitates AI model deployment, execution, and optimization.

For more: C-NLTX/Open-Source

Next in the series: How jBPM orchestrates Python

Author

  • Sergey Lukyanchikov

    I design-to-market development, deployment and production accelerators for in-platform computations. I have contributed to the evolution of product offering at well-known data platform vendors. My LinkedIn: https://www.linkedin.com/in/lukyanchikov/

    View all posts

If you enjoyed this post, you might also enjoy these