[Open Source] A general-purpose workflow orchestration component for service orchestration, workflows, and task approval scenarios

Open SourceProcess Management
2026-06-28 06:27 2 次浏览 • 0 次下载 0KB
[Open Source] A general-purpose workflow orchestration component for service orchestration, workflows, and task approval scenarios

1. Project Overview

JDEasyFlow

JDEasyFlow is a general-purpose workflow orchestration component suitable for service orchestration, workflows, task approvals, and other scenarios. It is simple, flexible, and easy to extend. Developers can get started in 30 minutes and understand its underlying principles within half a day.

2. Open Source License

Licensed under Apache-2.0

3. Screenshots

Supported Scenarios and Features

Node Transition Types

Supports sequential transitions, conditional transitions, loop transitions, and more.

Image

Node Function Types

Supports script nodes, user nodes, and message nodes.

Image
  • Script Node:
    Executes a code script when the node runs
  • User Node:
    Triggers node execution based on user operation instructions
  • Message Node:
    Triggers node execution upon receiving a message

Node Execution Modes

Supports sequential execution, parallel execution, and combined sequential and parallel execution.

Image

Workflow Interaction Scenarios

Supports multiple interaction patterns, including executing multiple nodes in a single interaction, executing one node per interaction across multiple interactions, and executing multiple nodes per interaction across multiple interactions.

Image

Subprocess Scenarios

JDEasyFlow supports subprocess workflows, allowing complex workflow nodes to be broken down into smaller subprocesses for easier business logic abstraction.

Image

Approval Workflow Scenarios

JDEasyFlow provides workflow task approval capabilities, supporting common operations such as approval, cancellation, rejection, countersignature, and additional approvers. It also includes a basic dynamic form. Workflow tasks can be initiated and managed through either the user interface or APIs. Integration with the JD OA approval system is also supported.

Image

4. Feature Overview

JDEasyFlow is a general-purpose workflow orchestration component independently developed by the Enterprise Finance R&D Department. It is suitable for service orchestration, workflows, approval processes, and other scenarios. It is currently widely used in the department's internal business systems and technology delivery systems, and is also used by other departments.

Its key characteristics are simplicity, flexibility, and extensibility. Developers can generally get started within 30 minutes and understand its underlying principles in half a day. It consists of one core module and several extension modules. The modules are loosely coupled, allowing developers to select what they need, integrate quickly, and adopt features incrementally. It supports both its built-in JSON specification and the BPMN standard. Its implementation principles also have some distinctive features, which are introduced later.

Key Features of JDEasyFlowSimplicity:

  • Simple Model: The core model revolves around node transitions.
  • Simple Extensions: Provides listener and filter features for convenient cross-cutting concerns. Nodes also support custom implementations.
  • Simple Definition: Node transition logic can be configured using JSON alone. BPMN format is also supported.
  • Simple Execution: Call the workflow engine from your code and pass in the workflow ID and business parameters.
  • Easy to Use: Simply import the component package to get started. It is lightweight.
Image

Applicable Scenarios and Integration Guide

Applicable scenarios

In theory, JDEasyFlow can accommodate any workflow scenario. It primarily addresses three types of problems:

  • Configurable Workflows:
    Abstract business processes into software workflows to ensure that software accurately reflects real-world processes. Different workflows can be defined for different scenarios, and workflows are easy to modify.
  • Loosely Coupled Functions:
    Abstract business nodes into software workflow nodes. This not only achieves loose coupling between functions but also enables node reuse.
  • Workflow Visualization:
    What you see is what you get. It facilitates communication between business product managers and software developers using a common language and also makes workflow monitoring easier.

During actual software system development, consider using workflow orchestration if you have any of the following requirements:

  • Business processes consist of multiple clearly defined nodes.
  • You want workflows to be flexible and easy to modify.
  • Business processes operate at a higher level than program execution flows and are difficult to consolidate and manage at the programming language level. For example, a workflow may require frontend operations, external system participation, and backend operations, resulting in scattered entry points during implementation.

5. Tech Stack

Overall Functional Architecture

The functional architecture of JDEasyFlow is shown below. Its functional modules are loosely coupled, allowing developers to select what they need, integrate quickly, and adopt features incrementally.。The simplest way to use it is to import the JAR package into the business application and use the workflow engine directly. If workflow visualization is required, the BPMN specification module can be integrated. If additional features such as workflow instance persistence and workflow definition persistence are needed, other relevant modules can also be integrated.

Image

Overall System Architecture

The complete JDEasyFlow system architecture is shown below. It mainly consists of three components: the business application, workflow service, and workflow management. These three components can be deployed together in a monolithic application or deployed separately.

Image

Software Architecture

At its core, JDEasyFlow provides a workflow engine/state machine module (choose either one when using it; the workflow engine is recommended). This module provides workflow orchestration capabilities based on the JDEasyFlow specification in JSON format.

The BPMN module provides workflow definition and visualization capabilities based on the BPMN standard. Workflow visualization is powered by bpmn-js. Essentially, it converts workflow definitions in BPMN format into the JDEasyFlow format.

Image
#1
资源直链https://gitee.com/JD-opensource/jd-easyflow
去下载
星河码客

发现和分享优质开源项目,传承互联网精神,为开发者服务。

关于本站

联系我们

微信/广告合作:ITcloub (备注星河码客)

免责声明:本站资源版权归原作者所有,仅供学习与交流。如有侵权,请通过「关于我们 - 侵权投诉」联系删除。

Powered by Nuxt · Deployed on Cloudflare