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.
|