Figuring out how to accommodate the variability of client needs is a constant struggle. At times there will be too much work to do, or a deadline too quick, or even a lag in requests. Agile and Lean both address this issue by applying the principle of Leveling, but may do it in different ways. Leveling allows for a team to work on a consistent amount of work rather than regularly putting in nights and weekends just to get the work done. Not only does Leveling avoid resource burn-out, it also provides a platform for improvement and high repeatable performance.
To illustrate this, imagine playing a game of billiards on a cruise ship in choppy seas. Without a level playing surface it is unlikely that the game will be fair or that it will even be worth playing. However, the situation changes completely when the table is level. Take a look at the ingenious way that this pool table was leveled:
While a gyroscopic solutions is probably not required to level client demand, there are a number of different strategies that can be applied:
- Rhythm Wheel (Product Wheel) – A fixed pattern of events that occurs in a repeated cycle. The cycle may be any length, but it is most common to see daily, weekly, biweekly or monthly cycles. This works best with fairly level demand. An Agile team makes use of this strategy by Planning, Grooming, Demoing and holding a retrospective every sprint.
- Trains – A fixed patter of events which only occurs when there is enough demand. An example of this is taking out the trash when the trash can is full instead of doing it once a week on Tuesdays. This works best with highly variable demand.
- Mixed Work Streams – When there are several highly variable work streams or clients, we can make use of the Central Limit Theorem by combining the work streams into a single team. The assumption here is that a spike in demand for one client will not coincide with spikes in demand for other clients.
- Staggered Planting – Long processes with large amounts of anniversary work are initiated in a staggered manner to allow for the anniversary work to not all happen at the same time. For example, a farmer would plant one field a week so that when harvest comes around he can harvest one field a week and not require a spike in resources.
- Lead Time Buffer – This is when client requests are not immediately started. The requests are allowed to wait for a period of time to allow the team to work on a consistent amount at a time.
- Floater – An individual or a team addresses interruptions and spikes in demand so that other teams or team members can maintain a consistent work level. Depending on the amount of variability and demand spikes, 1 in every 7-10 resources may need to be a floater. A Scrum Master often fills this role.
Any leveling will require a combination of strategies in order to be successful in the long-term. Each strategy has situations where they will provide more value and in creating your solution you may come up with something completely original. In addition to leveling demand, it is also important to level supply. Teams work the best when they are long-lived and don’t change members regularly.