Research Article

A Workflow Criticality-Based Approach to Bypass the Workflow Satisfiability Problem

Algorithm 1

Task priority algorithm.
//if a Task T is NonDelegable => its NonPreemptable.
// if a Task T is Delegable => its Preemptable.
(1)ifT is Optionalthen Pr(T) ⟵ 0
(2)else ifT  is Delay-SensitiveandNonDelegablethen
(3)  if T  is NonInterruptiblethen Pr(T) ⟵ 1
(4)  else ifT is Interruptiblethen Pr(T) ⟵ 0.8
(5)  end if
(6)else ifT  is Delay-SensitiveandDelegablethen
(7)  ifT  is NonInterruptibleandNonPreemptablethen Pr(T) ⟵ 1
(8)  else ifT is InterruptibleandNonPreemptablethen Pr(T) ⟵ 0.8
(9)  else Pr(T) ⟵ 0.6 /∗ for NonInterruptible and Preemptable or interruptible and Preemptable. ∗/
(10)  end if
(11)else ifT  is NonDelay-SensitiveandNonDelegablethen
(12)  ifT  is NonInterruptiblethen Pr(T) ⟵ 0.8
(13)  else ifT is Interruptiblethen Pr(T) ⟵ 0.6
(14)  end if
(15)else ifT  is NonDelay-SensitiveandDelegablethen
(16)  ifT  is NonInterruptibleandNonPreemptablethen Pr(T) ⟵ 0.6
(17)  else ifT is InterruptibleandNonPreemptablethen Pr(T) ⟵ 0.4
(18)  else Pr(T) ⟵ 0.2
(19)  end if
(20)end if