QSM provides unparalleled support throughout the product acquisition, installation, and implementation process.
For nearly five decades, QSM has helped organizations bring data-driven discipline to software project estimation, tracking, and benchmarking. Our methodology and tools turn project complexity into measurable, defensible outcomes.
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:
Example:
Practice — People learn to perform the methods as instructed. New concepts, like software sizing or software estimating techniques, require more time for people to simply practice. Each person will have their own challenges. Estimation Center of Excellence leads should check in with practitioners to offer help, because they are unlikely to ask for it.
Implementing pilot projects provides a protected space to practice. It is also important to practice as a team.
Proficiency — There is a learning curve as people gradually improve their efficiency. Every organization wants to get up and running quickly, but attempting to implement multiple processes at once can cause the opposite effect — stagnation. Avoid practitioner frustration and temptations to abandon the process, especially after they have made a little progress, by letting them become proficient in a few things. Build upon small successes.
Naturalness — Finally, the methods are performed without intellectual effort. This is the goal. Like riding a bike, the team knows what to do and when. They recognize good results. Intellectual effort will always be required, of course; however, it is productive effort aimed at achieving the goal, not wasted energy.
Avoid process improvement failure by providing the necessary time and material resources to lead your teams through these stages; none can be skipped. Plan, coach, and monitor. Before you know it they’ll surpass your performance expectations, because they are competent and confident. Victory at last!
Artwork by Wendy DiNicola.