OE Workflow Engine
oe-workflow is a BPMN 2.0 compliant workflow engine built on oe-cloud.
oe-workflow is a production grade workflow engine written in Node.js. The number of implemented bpmn-elements are comparable to popular industry standard workflow engines like jBPM, camunda, activiti. The exhaustive list
can be found in the wiki. Minimal coding is required from workflow design creation to deployment. We provide various built-in connectors like REST, oe-connector etc.
What is BPMN 2.0 ?
Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes in a business process model. It is the standard in business process modeling used widely by enterprises.
Workflow Models and Elements
oe-workflow can be interacted and managed through either function level API's or Rest Endpoints exposed by the following models.
ModelName | Description |
---|
WorkflowDefinition | This model maintains details about all the workflows that have been published. Each Workflow definition can have multiple Process Definitions |
WorkflowInstance | This model maintains details of instances of the workflows that are executed. Each WorkflowInstance can have multiple Process Instances |
ProcessDefinition | This model maintains details about all the process definitions deployed and generated through WorkflowDefinition. |
ProcessInstance | This model maintain details of a created Process Instances by WorkflowInstance. This model maintains process states, process variables, messages, etc. |
Task | This model is used to manage user tasks for a process instance executing a Workflow. |
Workflow Manager | This model maintains details pertaining to which workflows are attached to which models. |
Prerequisites
Getting Started
- Clone the git repository for refapp
git clone https://github.com/EdgeVerve/oe-workflow.git
- Install Node modules
npm install
- Start the Application
node .
Coding Guidelines
Please refer to Coding Guidlines document.
Run grunt eslint-test-coverage
to verify code quality.
Development Pre-requisites
More information
Please refer wiki documentation for more information on installation and usage.
License
The project is licensed under MIT License, See LICENSE for more details.
Contributing
We welcome contributions. Some of the best ways to contribute are to try things out, file bugs, and join in design conversations.