CMMi for Software Development Projects Initiating a Process Improvement Program

Version: 1.00 Date Completed: April 30th, 2004

Initiating a Process Improvement Program

Continuous Process Improvement is the underlying principle behind most modern quality and process standards. In order to stay competitive in a global economy, organizations must systematically strive to improve their processes through sustained and disciplined efforts. This paper presents the fundamental steps leading to process improvement and suggests some practical ways to jump-start this project in your organization.

1. The PDCA Cycle (A.K.A.: "the Deming Wheel")

A systematic process improvement project is composed of the four fundamental steps depicted in the diagram below.

Deming Wheel

The concept of the PDCA cycle was originally developed by Walter Shewhart and later promoted by the famous Quality Management authority, W. Edwards Deming. It makes explicit the idea that careful planning, disciplined implementation, objective evaluation and determined action are the necessary and recurring parts of a continuous improvement cycle.

1.1 Plan

Knowing where you are going is the essential first step in this journey. This is where you set forth the goals for the process improvement project, and this is also where you establish the infrastructure that will support and nourish this project.

Activity Description Tools and resources
Establish a The Management Steering Committee is Strong support from Senior
Management composed of senior staff representing all the Management.
Steering Committee major functions of the organization, including Finance and Marketing. Its purpose is to:
  • Provide overall leadership and direction for the process improvement efforts.
  • Provide adequate resources (budget, people, and tools ) for the process improvement activities.
  • Review and approve the Development Process Group recommendations and deliverables.
  • Resolve organization-wide issues.
Management Steering Committee Charter
Establish a The Development Process Group is the focal Development Process Group
Development point for process improvements. Its Charter.
Process Group1 responsibilities are to:
  • Propose, plan, coordinate and execute well-defined activities and tasks that contribute to the effective implementation of the company's process improvement program.
  • Offer solutions to problems and provide input.
  • Contribute to sharing of processes and products across the organization.
Project management tools Document Management Portal Training Facilities E-Learning Infrastructures
Conduct a Process A Process Assessment establishes a process A process improvement or
Assessment performance baseline. It helps in the identification of current gaps, challenges, and improvement opportunities. quality model (for example: the CMMI®). A process assessment methodology (for example: SCAMPI®). Process improvement expert(s) or auditor(s).

1 Also known as: Software Engineering Process Group (SEPG) and Engineering Process Group (EPG).

Activity Description Tools and resources
Set up the Process Improvement Project Based on the Management Steering Committee guidelines and the Process Assessment gap-analysis report, the Development Process Group develops a process improvement project with tangible milestones and measurable objectives. Project management tools Effort tracking and issue-tracking tools.

1.2 Do

The following activities must be performed for every improvement opportunity prioritized by the Development Process Group,

Activity Description Tools and resources
Establish Criteria It is important to establish selection and success criteria before going too far in the evaluation and/or development of a single solution. Management Steering Committee guidelines Gap-analysis report Industry reports
Select a Solution A solution meeting the selection criteria and with good probability of achieving the success criteria is retained, ideally amongst an array of at least three distinct alternatives. Decision and analysis tools and techniques.
Obtain Approval Approval and sign-off should be secured from the Management Steering Committee and, when appropriate, from other relevant stakeholders before starting to implement the solution. Management Steering Committee Change and deployment procedures.
Conduct a Pilot Always conduct a limited, controlled pilot before rolling-out a new process or a new tool. Success criteria. Feedback forms.

1.3 Check

No matter the efforts and costs that went into it, never deploy a solution until you have demonstrated its usefulness and effectiveness.

Activity Description Tools and resources
Assess the impact of the changes Verify that the changes are having a net positive impact on the performance of the organization, using objective criteria and hard data. Historical data. Statistical tools and techniques. Surveys.
Make the Go -No Go Decision Based on the assessment of the impact, decide whether or not to roll-out the changes throughout the organization. Development Process Group Management Steering Committee.

1.4 Act

Implement the changes on a larger scale, making them a routine part of your activity.

Activity Description Tools and resources
Communicate Make sure everyone involved is aware of the coming changes and understands why they are being implemented. E-mail. Internal newsletter Awareness sessions
Prepare Documentation and Support Material Key to a successful deployment is to provide people with adequate, practical documentation, templates and other supporting artifacts. Templates Tools Document Management Portal
Train People Everyone involved needs to know how their roles will be affected by the changes and what will be expected of them. Training Facilities E-Learning Infrastructures
Deploy When all is said and done, it's time to go into production. From then on, provide adequate support and start collecting the performance data that will feed the next PDCA cycle. Support hotline. Process champions. Feedback forms.

2. The CMMI Generic Practices for Establishing a Disciplined Process

The previous section described a high-level methodology for continuously improving processes. But what are the characteristics or the requirements of a disciplined and effective process?

One answer to this question can be found in the Capability Maturity Model Integration (CMMI®), a framework for process improvement that primarily targets Software and Systems Engineering.

Since this paper focuses on the initial phases of a process improvement program, we'll find the most relevant material in the generic practices of the CMMI® maturity level 2. These practices mark the transition between a performed but undisciplined, ad hoc set of activities to a well managed process.

Generic Practice Description Tools and resources
1. Establish an Organizational Policy Organizational policies are the backbone of a disciplined process. They define the expectations for the process and make these expectations visible to those who are affected. Management Steering Group. Document Management Portal.
2. Plan the Process Determine what is needed to perform the process, when or in what context it will be performed, what it will involve, etc. This planning can be imbedded into specific project plans or be implemented as a de facto process to be used by all projects. Project Planning and Scheduling Tools. Project Procedures and Process Descriptions. Organizational Procedures and Process Descriptions.
3. Provide Resources Resources include adequate funding, facilities, skilled people and tools.
Generic Practice Description Tools and resources
4. Assign Responsibility Ensure that the responsibility for performing the process and the tasks of the process are assigned and that the people assigned to the responsibilities understand and accept them. Project Plan. Organizational Charts
5. Train People The people performing and supporting the process need to be trained as needed. Training Facilities E-Learning Infrastructures
6. Manage Configuration Establish and maintain the integrity of the process support artifacts (tools, documentation, templates) and deliverables (documents, reports, checklists, etc.). Configuration Management Tool. Document Management Portal.
7. Identify and Involve Relevant Stakeholders Ensure that interactions necessary and required by the process occur by identifying and involving the relevant stakeholders. Project Plan. Organizational Charts Roles and Responsibilities Lists.
8. Monitor and Control the Process Perform the day-to-day monitoring of the process with respect to the relevant plans and procedures. Time tracking tool. Status report templates.
9. Objectively Evaluate Adherence Provide credible assurance that the process is implemented as planned and follows its description, standards and procedures. Whenever possible, involve independent (internal or external) Quality Assurance professionals .
10. Review Status with Higher Level Management Provide higher level management with adequate visibility into the process's activities, status and results. Reporting tool Digital Dashboard Periodic and event driven meetings

3. Conclusion

The PDCA cycle is the engine that should drive your process improvement initiatives. Providing the required infrastructure (including public endorsement and direct involvement from higher management) is the first step in starting this engine.

Then, by systematically submitting your processes to the 10 "questions" of the Maturity Level 2 Generic Practices, you will ensure that your organization is on the right track for sustained, resilient and result-oriented process improvement.

For additional information:

About the Author

Françis Dion is a software development and process improvement specialist. He is recognized process improvement trainer as well as a certified process assessor and auditor. He can be reached by e-mail at

Process Academy inc. 1160, rue Lévis Suite 102 Lachenaie (Qc) J6W 5S6 CANADA
Phone: +1 (450) 961-9111 Phone (Toll-Free in North America): 1-866-961-9111 Fax: +1(450) 961-9113 Email:

Free 14 day trial
Let us give you a tour, it's the least we can do.
Schedule a walkthrough or, try it now for FREE