This is valid for every task:
Duration = Work / assigned Units
This equation is the heart of project management software.
So we have an equation with 3 variables:
Duration | the size of the bar from StartDate to EndDate |
Work | defined in the Task-Dialog under Work-Tab |
Units | the percentage allocation of a resource in Task-Dialog, Resources-Tab as a number between 0 and 1.0 (which is 100%) |
Imagine: When there is one resource for this task, who works 100%, then Units are 1.0 and the equation says: Duration = Work / 1. If the work is defined 20 hours and there is one worker assigned, it will take him 20 hours to do the 20 hours work. Simple as that.
When we set him to work with half power (50% or Units = 0.5), then the task will run for the double duration, that's 40 hours.
When instead we add a second resource and both work 100%, Units will be 2.0 and the task can be done in half of the work: 10 hours.
Computing the task when something changes
Now think, that one of the 3 variables changes and we want to compute the other two. Unfortunately we can't do that because we can not solve an equation with two unknown values.
So what should we do to get this problem out of our way and to be able to calculate something? We simply set one of them to a constant value! We fix it, so that it must not be changed by a calculation (it is still possible for us to change this value). This is not only an elegant solution to our little math problem, it's also very useful in real life.
This has been a brilliant idea long time ago, and long time before there were computers. And most modern computer programs today, that deal with project management, follow this scheme.
One variable is fixed, the second is changed, the third is calculated !
Duration = Work / Units
For this reason we have 3 Task-Types:
Fixed Units | The assigned units are fixed. When changing the duration (by resizing a bar) the Work is calculated |
Fixed Work | Work is fixed. A change of the duration will cause the assigned units to be recalculated |
Fixed Duration | Duration is fixed. Updating the units in the Task-Dialog will recalculate the work. And vice versa. |
KS-ProjectPlanner knows a fourth Task-Type called Static Task. This is a special task type which does not respect the calendars. Static tasks can simply be placed anywhere.
You can set the default Task-Type in the Project Settings Dialog.
Most of the time you may want the Units to stay fixed at 1.0 (100%), regardlless of moving the task, changing it's work or adding more resources, this resource will work full power on this task until it's done. So in most cases you may want to use Fixed-Units as your task-type.
Detailed Explanations for the different Task-Types
Task- Type | Task Moved |
Task Resized / Duration changed |
Work Changed | Units Changed |
---|---|---|---|---|
Fixed Units | Current work is calculated. The program ensures, that the current work is not less than the proposed work and will update the duration if necessary. | Current work is calculated. The proposed work is set from the calculated current work. | Duration is calculated and rounded up if necessary, so that the current work is equal or greater than the proposed work. | Duration is calculated from proposed work and proposed units. Duration is rounded up if necessary, so that we have at least the proposed work. Then the actual work is calculated, that can differ from the proposed work because of the granularity setting. |
Fixed Work | Current units are calculated. The program ensures, that no unit is above 100% and will update the duration if necessary. | Current units are calculated. The proposed units are set from the calculated current units. The program ensures, that no unit is above 100% and will update the duration if necessary. | Current units are calculated. Duration is updated if necessary, to ensure that the work is not less than the proposed work and no unit is above 100% | Duration is calculated. Current units are calculated. Duration and units are adjusted, to ensure that the work is not less than the proposed work and no unit is above 100% |
Fixed Duration | Current units are calculated. The program ensures, that no uint is above 100%. Then, current actual work is calculated. | Current units are calculated. The program ensures, that no uint is above 100%. Then, current actual work is calculated. Proposed units and works are set. | Current units are calculated. The program ensures, that no unit is above 100% and will adjust the duration, if necessary. Current work is calculated for the actual duration. | Current work is calculated. Duration is not adjusted, because it is fixed. So current work might become less than the proposed work. |
Static Task | Current work is calculated. | Current work is calculated. Proposed work is set from current work. | Current units are calculated. Current work is calculated. | Current work is calculated. |
The same in short words..
- the program calculates the depending values with the formula Duration = Work / Units
- the program ensures, that the current work is never less than the proposed work ^{*)}
- the program ensures, that units are never above 100% ^{*)}
- proposed values are only updated when a task is resized
- all this considering the granularity, the calendars and the calendar combination-modes.
^{*)} not for static tasks
The same in even shorter words..
- The program ensures the consistency of all values ^{**)}
^{**)} the software is provided "as is", without warranties of any kind.