A workflow engine manages and monitors the state of activities in a workflow, such as the processing and approval of a loan application form, and determines which new activity to transition to according to defined processes (workflows). The actions may be anything from saving an application form in a document management system to sending a reminder e-mail to users or escalating overdue items to management. A workflow engine facilitates the flow of information, tasks, and events. Workflow engines may also be referred to as Workflow Orchestration Engines.
Workflow engines mainly have three functions:
- Verification of the current status: Check whether the command is valid in executing a task.
- Determine the authority of users: Check if the current user is permitted to execute the task.
- Executing condition script: After passing the previous two steps, the workflow engine begins to evaluate the condition script in which the two processes are carried out, if the condition is true, workflow engine execute the task, and if the execution successfully completes, it returns the success, if not, it reports the error to trigger and roll back the change.
A workflow engine is a core technique for task allocation software, such as business process management, in which the workflow engine allocates tasks to different executors while communicating data among participants. A workflow engine can execute any arbitrary sequence of steps, for example, a healthcare data analysis.
- Business rules engine
- Business rule management system
- Comparison of BPEL engines
- Inference engine
- Java Rules Engine API
- Rete algorithm
- Ripple down rules
- Semantic reasoner
- Business Process Execution Language
- Production system
- Workflow management system
- The Workflow Engine Model. The Workflow Engine Model Accessed 1 Dec. 2010.
- Huser, V.; Rasmussen, L. V.; Oberg, R.; Starren, J. B. (2011). "Implementation of workflow engine technology to deliver basic clinical decision support functionality". BMC Medical Research Methodology 11: 43. doi:10.1186/1471-2288-11-43. PMC 3079703. PMID 21477364.