The task is completed when the work is done for that task. In a more complete model, we would want to allow a task to be done at some fraction of task size for the purposes of determining prerequisite readiness.
A logical IF THEN ELSE function checks the relational operator >= (greater than or equal to). It returns a YES result when the operator is true, switching to the THEN part of the equation, or NO when the operator is false, switching to the ELSE part of the equation.
Ø | Click on task is done. Enter the equation below: |
task is done[task]= |
IF THEN ELSE( Work Done[task] >= task size[task], 1, 0) |
Units: Dmnl
The last two equations use more complicated logical functions. The values for is a prerequisite[task], task has started[task] and task is done[task] are binary (0 or 1). The IF THEN ELSE logic will return a value of YES if the variable in question has a nonzero value (and move to THEN), and a NO if the variable has a value of zero==F_2} (moving to ELSE). Using variables in IF THEN ELSE expressions like we are doing here makes sense when the variables are formulated to take on 0 or 1 as values. Using an equation that began IF THEN ELSE(morale,... would not be a sensible formulation.
The first equation describes whether the task is active or not, and uses the logical operators :AND: and :NOT: If the task has started AND the task is NOT done, then the task is active (value = 1), else the task is not active (value = 0).
Ø | Click on task is active, write the equation as below, then click OK. |
task is active[task]= |
IF THEN ELSE(task has started[task] :AND: |
:NOT: task is done[task], 1, 0) |
Units: Dmnl