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 a 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, workflow engine begins to evaluate condition script in which two processes are carried out, if the condition is true, workflow engine execute the task, and if execution successfully complete, 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 application, such as business process management in which the workflow engine allocates task to different executors with 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.