Workflow engine

From Wikipedia, the free encyclopedia
Jump to: navigation, search

A workflow engine is a software application that manages business processes. It is a key component in workflow technology and typically makes use of a database server.

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).[1] 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.[2]

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.[3]

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.[4]

See also[edit]