A workflow engine is an application software that manages and executes modeled computing processes. It is a key component in workflow technology and usually makes use of a database server.
An engine workflow interprets events, such as documents submitted to a server or expiration dates that expire, and implements them according to the defined computer processes. The actions can be anything from saving the document in a document management system for the issuance of a new job, sending an email to the users or the escalation of pending work items to the administration. A workflow engine facilitates the flow of information, tasks and events. Workflow engines can also be referred to as an Engines orchestration workflow.
Workflow engines have three functions:
- Verification of the current situation: Check which tasks are valid to perform according to the current status of the process.
- Determine the authority of the users: Check if the current user is allowed to execute certain tasks specific to the current state of the process.
- Execution of a condition script: After passing the two previous steps, the workflow engine executes the automated steps associated with the user's task. If the execution completes successfully, it returns success, if No, it reports the error to activate and roll back the change.
The workflow engine is the basic technique for the application of task allocation software, such as BPM in which Workflow Engine assigns tasks to the different executors with the communication of data between the participants. A workflow engine can execute any arbitrary sequence of steps. For example, a workflow engine can be used to execute a sequence of steps that make up an analysis of health care data.