Avoid Process Improvement Failure with Pacing that Promotes Mastery
Software process improvement efforts often fail because we try to accomplish too much too soon. Aside from the cultural and organizational obstacles to change, people need time to learn and assimilate new ideas and skills. “Human memory and comprehension are limited, and it is easy to design processes that are beyond peoples’ capacities,” says Watts Humphrey (Humphrey, 1989). This is true in any situation, but I think it is compounded in the software world because time is always a scarce resource. The pressure is high in every organization to justify process improvement dollars and increase capabilities.
Establishing and maintaining software best practices requires that you design clear processes and plan a pace of implementation that promotes lasting change. A key component is accommodating human learning and skill development challenges. Borrowing from a training class I developed 14 years ago (yes, implementing best practices is still a challenge), let’s follow a team of water bugs as they progress through Watts’ four stages of Human Methods Adoption to understand what good pacing requires.
Installation – Initial installation of the methods and training in their use. Process documentation and training should answer questions like: