Roadmap: How to Adopt the Software Capability Program Management Practice
This roadmap describes how to adopt the Software Capability Program Management practice, which helps organizations assess, monitor, and improve their software development capabilities.
Main Description

Getting Started

Assess the organization

Assess the current state of the organization's software capabilities to better understand what needs improvement. Recommend improvements that are prioritized and aligned with organization's business and operational objectives. If your organization places a higher priority on time to delivery than cost, then your process improvement priorities should reflect that objective.

Introduce incremental process and tools improvements

Plan to implement the process and tools improvements incrementally so teams won't be overwhelmed by many new factors all at once. By implementing incrementally, it is possible to focus on a subset of the process, which increases the probability of success.

Artifact: Development Organization Assessment results help you decide which process and  tools improvements you should start to introduce first. Focus on those areas where the development organization has its biggest problems. Taking small steps, making a few improvements at a time, and book successes (quick wins) before starting on the next improvements. In this way, project teams will not become overwhelmed, and stakeholders can be convinced that you are making progress.

Manage and plan

Manage and plan the capability improvement activities just as you would all other activities in a software development project. Implementing new processes and new tools across an organization is a complex task. Changing the way people work can jeopardize the success of projects.

Use mentors to ensure adoption through execution. Communicate clearly and often at each stage of recommending and deploying improvements.

Monitor improvements

Confirm successful adoption of improvements by monitoring project performance. THe people using the process are the real experts. Their experiences and feedback should be captured and incorporated back into the process.


Common Pitfalls

Spending too much time and resources developing extensive process-related material

Think 'return-on-investment' when you introduce capability improvements. Focus on those things that will pay back more than the investment.  There are three major problems with developing extensive process descriptions:

  • People do not read extensive descriptions.
  • Doing everything right from the beginning is very difficult. It is better to do something less extensive, try it out, and then adjust it.
  • It removes the focus from mentoring. People with process knowledge need to have mentoring, not writing extensive descriptions, assigned as their primary task.  

Trying to do it all at once

A common mistake is to deploy many process and tool improvements as a single effort. A "big bang" introduction forces change onto people and can destabilize projects if resistance is too great. People can lose motivation, which hampers them from dealing effectively with the complexity of having to learn and apply everything at once. Typically, someone eventually decides to rectify the situation, most often by reversing the original decision to implement improvements rather than reassessing the situation and determining the best way forward.

The most effective way to reach high levels of adoption is to introduce improvements incrementally based on business priority and readiness of the organization to change. Introduce those improvements that will provide the most value to the organization first.

Not keeping people informed and involved

Keeping people informed about the new processes and tools, and involving them in the work  is critical to successful adoption. The greatest threat to any change in an organization is peoples' attitudes towards the change. Introducing a new process and tools in any organization means that people have to change the way they work. People have a natural resistance toward change. There's always the risk of falling into a negative spiral, where people's negative attitudes lead to poorer results which then lead to even more negative attitudes.

Lack of training/ mentoring

Education is necessary for successful capability improvement adoption. People need to understand the new processes and how to use the new tools. Experience shows that having a mentor help with implementing process and tools in the context of real work is a key success factor.

Lack of management support

It is a well-known fact that organizational change has to be effected at all levels in an organization, starting with management. Pilot projects should have visibility at the management level, and part of the organization's commitment to success is a management team that is willing to participate in implementing new process and tools.

Unclear vision and change drivers

When the business drivers behind the change are not clear, it is difficult to convince people of the value of steps that must be taken to effect that change. People must know why the organization must change (drivers) and where the change is leading (vision) in order to build a strong foundation for the implementation.