Multi-tasking verses Single-tasking
ByCompanies seem to want to increase productivity of their workers by making sure they are fully utilized by putting developers on multiple projects and forcing them to multi-task. Manager fear “down” time for their directs. But is it wise to schedule 100% of an employee’s time?
What are the perceived benefits of multitasking:
- A developer will always have a task to work on.
- More projects can be staffed.
- More development hours are recorded against projects.
But are benefits producing a good return on investment? Let’s look at each one of these benefits.
1. A developer will always have a task to work on
Every time one changes tasks especially on another project there is a problem of context switching. First one must take the task they are working on and save the information that is needed to work on it in the future. When starting a new task, previous information about the new task must be gathered and the task started. This may create considerable overhead with large tasks in different projects.
Also, a developer may choose tasks that are “easier” to do and avoid project critical tasks when making a switch. This makes them look more productive because tasks are getting done.
2. More projects can be staffed
It does look like company resources are be used more efficiently because more hours can be allocated. But are these really productive hours?
3. More development hours are recorded against projects.
We can all look busy but are we really productive.
One of the foundations of Scrum is that the team is able to focus on a project for a sprint. This quote is from Scaling Lean and Agile Development page 142:
Do your job. Focus all your efforts and skills on doing the work that you’ve committed to doing. Don’t worry about anything else. In Scrum, work is not arbitrarily forced on people, and work cannot be added during the iteration. Nor is there any multitasking or distraction, because each team is 100 percent committed to the set of small achievable items chosen for the short iteration. There is no partial allocation on different projects; partial allocation means partial results. Each person’s time is 100 percent allocated to the goals of the iteration for the product. This provides the foundation for the focus and reduction in multitasking that leads to quick delivery and productivity
When a team can focus on a single goal they will be more productive. Assigning team members to multiple projects is a sure way of decreasing productivity.