Handovers are inefficient for software development and business as a whole

Zan Kavtaskin
2 min readJan 13, 2022

--

Knowledge work organisations are plagued by handovers. Handovers are normally required for two reasons:

  1. People doing the work don’t have the skill to perform the whole task, so it needs to be handed over to the next specialist.
  2. There is separation of duties due to security or hierarchy.
Figure 1, Handovers

Handovers are time consuming, however I was not sure if this is actually the case or was it my bias talking. So once again I have run a game experiment. This time it was a much larger, over 70 people participated in about 8 teams.

The Experiment

  1. There will be teams with the same amount of people in each team.
  2. All teams had to ship 10 letters. They had to follow the following standard work process for each letter, Dispense, Left Fold, Right Fold, Place into the envelope, Stamp, Check and Complete.
  3. During the first experiment participants in each team could perform only 1 task, that is they had to pick one work process that they would execute. Also they could choose either batch flow or one-piece flow. Most teams chose one-piece flow as it reduced wait time for all of the participants.
  4. During the second experiment participants in each team could perform as many work processes as they wanted, the only rule was that process had to be completed in the specified order, see point 2.

The Result

Average time for the first experiment was 42 seconds. Average time for the second experiment was 12 seconds, 3.5x improvement. What was really fascinating was that for the first experiment teams were told to follow standard assembly line process (figure 1). For the second experiment they were given only the rule 2 and time to figure out their optimal team setup. Most teams have converged to the model where each person performed the whole process on their own, no handovers at all. That ended up being the winning strategy.

Conclusion and Implications

Main insight is that handovers increase wait time and task time. When one person can perform the entire task from start to end it might take them longer overall then doing just one part of the process but the whole process collectively is much faster. This is because utilisation is increased as no one is waiting for work.

This is why it is important to train your software engineers to become full stack engineers and why everyone in your organisation should have the ability to self-service. Software Engineers should be able to look at the production logs, perform software releases independently, get access to all of the relevant information to get the job done without waiting on anyone or anything.

If you decide to repeat the above experiment in your own organisation, please do share your results.

--

--

No responses yet