150 likes | 410 Views
The Essence of Capability Maturity Model. Prerna Sethi Oct 26, 2004. What is Capability Maturity Model (CMM)?. Definition:
E N D
The Essence of Capability Maturity Model Prerna Sethi Oct 26, 2004
What is Capability Maturity Model (CMM)? • Definition: ” A framework that describes the key elements of an effective software process. It's an evolutionary improvement path from an immature process to a mature, disciplined process. “
CMM (Cont.) • CMM for Software (SW-CMM) • CMM for Management of Human resources (P-CMM) • CMM for Systems engineering (SE-CMM) • CMM for Integrated product development (IPD-CMM) • CMM for Software Acquisition (SA-CMM)
CMM (Cont.) • History of CMM • Introduced by SEI fellow, Watts Humphrey from IBM in 1986. • Introduced on the demand from Department of Defense.
Maturity Levels • Initial Level – Adhoc, Unpredictable , Lack of Management. • Repeatable Level- Encourages repetition of successful practices • Defined Level- Identifies best practices • Managed Level- Sets quantitative and quality goals • Optimizing Level- Removal of waste, continuous improvement.
Benefits of Capability Maturity Model • At level 2 : Avoid “Death Marches” experienced in Level 1. • At Level 3: View historical data to come up with best measures. • At Level 4 : Identify the root causes and make improvements with predictable efforts. • At Level 5: Continuous Improvement.
Case Study for Raytheon • When their processes were immature, between 30 percent and 50 percent of their development effort was spent on fixing mistakes. • It took six years for Raytheon to move from Level 1 to level 4 • After applying CMM Raytheon was able to save $9.2 million from their software development cost of $115 million.
Raytheon (Cont.) • At each level, they continued to reduce rework and increase the percentage of effort involved in the original development activity. • After reaching Level 3, their productivity increased by 230% from their starting baseline. • By the time they moved to Level 4, they were producing software for 40 % of their original costs.
What CMM does not address • Address expertise in a particular application domain. • Advocate specific tools, methods or software technologies, or address issues related to human resources. • Address issues related to concurrent engineering, team work change management, or systems engineering.
Conclusion • Capability Maturity Model applies to new product development as well as software development. • CMM identifies practices for a mature software process and provides examples of the state of the practice (in some cases state of the art) • It is not meant to be either exhaustive or dictatorial.
References • [1] James D. Herbsleb, Dennis R. Goldenson, “A Systematic Survey of Experience and Results”, SEI Carnegie Mellon University, Proceedings of ICSE-18. • [2] Rick Hefner, Janice Tauser, “Things they never taught you in CMM School”, Proceedings of the 26th Annual NASA Goddard Software Engineering Workshop. • [3] Mark C. Paulk, Bill Curtis, and Mary Beth Chrissis, “Capability Maturity Model Version 1.1”, Software Engineering Institute, July 1993. • [4] Mark C. Paul, “Extreme Programming from a CMM Perspective”, IEEE Software November-December 2001.
References (Cont.) • [5] Hossein Saiedian, Richard Kuzara , “SEI Capability Maturity Model’s impact on Contractors”, Feature Article IEEE-1995. • [6] Donna L. Johnson, Judith G. Broadman, “Applying CMM Project Planning Practices to Diverse Environments”, LOGOS International, July-August 2000. • [7] “Capability Maturity Model Integration (CMMI):Frequently Asked Questions (FAQ),” Version 1.3, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Spring 2000. • [8] “Advice, trends, opinions and Analysis from Garter Measurement”, Special Edition 2001.