Transactional Workflows Must address following issues to computerize a workflow. Specification of workflows-detailing the tasks that must be carried out and defining the execution requirements. Execution of workflows-execute transactions specified in the workflow while also providing traditional database safeguards related to the correctness of computations,data integrity,and durability. E.g.:Loan application should not get lost even if system fails. Extend transaction concepts to the context of workflows. State of a workflow-consists of the collection of states of its constituent tasks,and the states (i.e.values)of all variables in the execution plan. Database System Concepts,5th Ed. 25.13 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.13 ©Silberschatz, Korth and Sudarshan th Ed. Transactional Workflows Must address following issues to computerize a workflow. Specification of workflows - detailing the tasks that must be carried out and defining the execution requirements. Execution of workflows - execute transactions specified in the workflow while also providing traditional database safeguards related to the correctness of computations, data integrity, and durability. E.g.: Loan application should not get lost even if system fails. Extend transaction concepts to the context of workflows. State of a workflow - consists of the collection of states of its constituent tasks, and the states (i.e. values) of all variables in the execution plan
Workflow Specification Static specification of task coordination: Tasks and dependencies among them are defined before the execution of the workflow starts Can establish preconditions for execution of each task:tasks are executed only when their preconditions are satisfied. Defined preconditions through dependencies: Execution states of other tasks. "task t;cannot start until task t,has ended" Output values of other tasks. "task t can start if task t;returns a value greater than 25" External variables,that are modified by external events. task t must be started within 24 hours of the completion of task t" Database System Concepts,5th Ed. 25.14 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.14 ©Silberschatz, Korth and Sudarshan th Ed. Workflow Specification Static specification of task coordination: Tasks and dependencies among them are defined before the execution of the workflow starts. Can establish preconditions for execution of each task: tasks are executed only when their preconditions are satisfied. Defined preconditions through dependencies: Execution states of other tasks. “task ti cannot start until task tj has ended” Output values of other tasks. “task t i can start if task t j returns a value greater than 25” External variables, that are modified by external events. “task ti must be started within 24 hours of the completion of task tj
Workflow Specification(Cont.) Dynamic task coordination E.g.Electronic mail routing system in which the text to be schedule for a given mail message depends on the destination address and on which intermediate routers are functioning. Database System Concepts,5th Ed. 25.15 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.15 ©Silberschatz, Korth and Sudarshan th Ed. Workflow Specification (Cont.) Dynamic task coordination E.g. Electronic mail routing system in which the text to be schedule for a given mail message depends on the destination address and on which intermediate routers are functioning
Failure-Automicity Requirements Usual ACID transactional requirements are too strong/unimplementable for workflow applications. However,workflows must satisfy some limited transactional properties that guarantee a process is not left in an inconsistent state. Acceptable termination states-every execution of a workflow will terminate in a state that satisfies the failure-atomicity requirements defined by the designer. Committed-objectives of a workflow have been achieved. Aborted-valid termination state in which a workflow has failed to achieve its objectives. A workflow must reach an acceptable termination state even in the presence of system failures. Database System Concepts,5th Ed. 25.16 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.16 ©Silberschatz, Korth and Sudarshan th Ed. Failure-Automicity Requirements Usual ACID transactional requirements are too strong/unimplementable for workflow applications. However, workflows must satisfy some limited transactional properties that guarantee a process is not left in an inconsistent state. Acceptable termination states - every execution of a workflow will terminate in a state that satisfies the failure-atomicity requirements defined by the designer. Committed - objectives of a workflow have been achieved. Aborted - valid termination state in which a workflow has failed to achieve its objectives. A workflow must reach an acceptable termination state even in the presence of system failures