Theory of Constraints (Part 4) - Reasons for delay
In this post, I shall be giving some points due to which the projects get delayed in spite of the use of tools such as Gannt chart, etc. So here goes;
Protection of buffers during estimates of work - When estimating the time it will take to complete the work, generally a buffer is kept in the estimates to make sure that the work gets completed in the time that has been estimated. It is empirically seen that when there is a 50% chance of the work getting completed in a particular amount of time, to be 90% confident that the work will get completed, the time estimate has to be 2 times the amount of time estimated with a 50% confidence.
To get over this issue, there has to be a change in thinking between both the person giving the estimates and the people to whom they report. In order to give a 50% confidence estimate, the person who gives the estimates must be confident that he/she will not be penalized if the deadline is missed around 50% of the time. Hence the person to whom the estimate is sent to must make sure that no penalty occurs due to the missing of the estimate.
Now once all the estimates for the individual pieces of work are taken into account, there has to be a buffer kept at the end of the total estimate. As only 50% of the work can get delayed, a 50% extra amount of time can be kept at the end of the total estimate. Even then there is a 25% amount of time which is saved by this over the previous method which is currently used.
Student Syndrome - This occurs when a person allocates a due date to complete the work and then works on the project with 100% focus only when the due date is near. This is very similar to how students put off their homework till the last minute and hence the name. One can imagine how this behavior along with the previous behavior is quite dangerous to a quick delivery.
Starting the work immediately - Though this sounds directly contradictory to the above law, it is not. This delay occurs when the work starts without having all the inputs in place. Hence in best case scenario, when the particular input is required, the work stops and does not proceed until the input comes in. In the worst case, when the particular input comes in, it is found that the work done so far is useless and it is to be done all over again.
Parkinson's Law - This law states that "Work expands so as to fill the time available for its completion"
For example, a work has been given which is to be completed in 5 hours. In case, the person doing the work is able to complete it in 3 hours, the result will not be passed on. Instead, more checks, more processing of the work takes place until the 5 hours are used up.
This along with student's syndrome explains why only the delays in work are passed on and no savings of time is passed on inspite of having big buffers.
As an aside, this Parkinson's Law is also used to explain how bureaucracies expand irrespective of the work assigned to it until the organization it supports collapses.
Multitasking - This phenomenon is often seen as a time saver and not a time waster. Unfortunately in the real world, this is one of the biggest time wasters. To explain this further, kindly check the diagram below and read on.
Consider that each color shown here is a different task. Hence as observed in the first bar, there are 3 tasks which take equal amount of time to complete. In case the tasks are done one after another without any multitasking, it is observed that the first task completes in around 1/3rd of the total time, the second task in 2/3rd of the total time with the last task completing at the end. The little white gaps in between is the time taken to shift from one task to another. In manufacturing industries, this is known as setup time.
Now when multitasking is used (The second bar with each of the colours split in three equal parts), it is noticed that the first task takes more than 100% of the time that it would have taken if multitasking was not done. Even the second task takes more time to get completed. The total time to complete all the tasks also increases, as the number of times shifting between tasks (The white space) multiplies by as many times as the tasks are split. This total time increases so much more when this setup time (The amount of white space during each shifting over from one task to another) also increases.
Improper use of the constraint - It has been seen how critical the constraint is to produce the output in an optimal manner. So if this constraint is used improperly, the delay will increase. Here are some ways that the constraint is used improperly.
- Sending bad quality inputs to the constraint. This can be avoided by having a quality check of the inputs which go to the constraint.
- Sending unimportant work to the constraint. This happens when the inputs are sent to the constraint in order to produce an output which will not be required right now and there is an output currently required which is not processed as the constraint is now working on the unimportant task.
- Making the constraint work on general processing. The constraint is generally a specialist in some task. In case the constraint starts working on a task which can be done by any other non-constraint (A general, non-specialist task) then there is a waste of time which could be better utilized.
This brings us to an important point of Theory of Constraints. An hour wasted in a non-constraint is no time wasted at all. An hour wasted in a constraint is an hour wasted on each and every part of the whole system.