The Washboard Anti-Pattern
June 06, 2011
Washboarding is an instability that occurs when vehicles move on dirt roads. What starts off with a small bump turns into a whole series of small bumps as vehicles travel the road. Washboard roads are more dangerous than smooth dirt roads and have to be driven at lower speeds. All these bumps are a pain in the rear (literally) and make you go slower.
We see the resourcing equivalent of washboard roads in projects too. Traditional projects staff early with business analysts to do the bulk of the requirements gathering and then bring in developers and finally QA people. These peaks and valleys of specialization not only look like a washboard road, but they have the same effect, they are a pain in the rear and make you go slower.
Because the BA’s, devs, and QA’s are not used evenly throughout the project, they are brought in for a short period and then transferred to the next project. People try to share BA’s, QA’s and other roles between multiple projects and pretty soon most people are working on multiple projects. This is very difficult to schedule efficiently because projects rarely sync up exactly or stay on plan. Worse, task switching between multiple projects is time consuming, prone to errors, less satisfying, and a slower way of working.
Just as preventing washboarding on a road is difficult once it has started, breaking the resource washboard anti-pattern can be difficult too. A concerted effort and decision to staff whole team projects needs to be made. Acknowledging that it is impossible (or at least extremely unlikely) that all the final requirements can be captured up front, keep the BA’s around. Engage the QA team early so they hear from the business firsthand what they should be testing for, and encourage developers to work with the BA’s and QA’s beyond coding. Whole team staffing breaks down silos and prevents throwing things over a wall to another group that is inefficient and error prone.
Bringing the whole team together at the beginning of the project allows them to work collectively on vertical slices of the solution through to completion. Multidisciplined teams can help each other to minimize resource constraints and since the team swarms around solving small increments, there is no task switching penalty when asking for help.
Just as the advantages of smooth roads over washboard is clear to everyone, so too are the benefits of dedicated, collaborative teams. Dirt roads and small bumps lead to road washboarding, as specializations, functional groups and matrix management leads to resource washboarding.
Executive management are the best bulldozers, they can mandate the change and pave the way as it were. If you do not have that level of commitment, break the bumpy cycle on the projects you can control. Recruit combined BA/QA staff and keep them throughout the project, get all roles in the design sessions, and business discussions, resist task switching and prioritize projects. Then see how much faster you can go.
This is a nice analogy. How did you think about connecting the two ?
Posted by: Sftwrexperiment | June 08, 2011 at 03:38 AM
I was explaining the different resourcing profiles to a client and the bumps on the graph I drew made me think of washboard roads. Both are kind of vicious circles that lead to a destructive propagation of the issue. Lumps on roads lead to bouncing and more lumps, specialization on projects lead to time fragmentation spreading to all projects. Both are problematic and make you go slower, so it seemed apt. Did I “invent” something that has been better thought through somewhere else? – Wouldn’t be the first time.
Posted by: Mike Griffiths | June 08, 2011 at 10:32 AM
I like the image and the analogy - made all the more real for me by having lived in Africa at the end of a long dirt road.
In particular I agree about the difficulty in breaking this pattern. I have seen so many attempts to implement and use resourcing tools, then link these to MS Project then add a layer of Earned Value Analysis etc. I have seen few (if any) cases where this has worked (in fact often they make it worse).
As you say it is the concerted effort of executive management, aided by an Agile approach that is really needed, and the only approach which I have seen really succeed.
Posted by: Peter Stansbury | June 17, 2011 at 10:17 AM
Great Post! I really liked your comparison of riding a dirt road to project management. The ups and downs of a project are very similar to a road with all the bumps. Plus, they can both be a pain in the butt if not done correctly.
Posted by: Andy Nathan | June 25, 2011 at 07:11 AM
Excellent analogy with washboard pattern. To break this syndrome we need to connect it to the "Theory of Constraints" which (essentially) states that the more projects you assign a resource to, the less efficiency you have.
Posted by: Jeff Pitman | July 06, 2011 at 09:52 AM