Capability Maturity Model

Slides:



Advertisements
Similar presentations
SOFTWARE PROCESS IMPROVEMENT “Never Stop Learning”
Advertisements

Group 7 - Chapter 3 Steven Shroyer - Introduction, ad hoc, level 2 Xiao Jingshan - Levels 3 and 4 Dusting Marker - Level 5 and example companies Definintions.
Chapter 7: Key Process Areas for Level 2: Repeatable - Arvind Kabir Yateesh.
More CMM Part Two : Details.
1 Brief Descriptions of CMM KPAs CEN 6070 Summer 2004.
1 State of Michigan Achieving Software Process Improvement with Capability Maturity Model (CMM)
Chapter 2 The Software Process
©2006 OLC 1 Process Management: The Foundation for Achieving Organizational Excellence Process Management Implementation Worldwide.
CMMI Overview Dr. Korson Software Engineering. 2 Immature organizations can be successful on occasion, but ultimately run into difficulties because –Success.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
SE 470 Software Development Processes James Nowotarski 12 May 2003.
Capability Maturity Model (CMM) in SW design
Computer Engineering 203 R Smith Process/Plan Model 7/ Development Process Models Development Process Models are different ways to look at the processes.
R&D SDM 1 Software Process Improvement Capability Maturity Models
1 R&D SDM 1 Software Project Management Capability Maturity Model 2009 Theo Schouten.
CMM Overview - 1 © Paul Sorenson CMPUT Software Engineering refs. IEEE Software, March 1988, 73-79, and IEEE Software, July 1993, (Capability.
Chapter 3 The Structure of the CMM
Capability Maturity Method (CMM)
Software Process CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 17, 2002.
Standardization. Introduction A standard is a document. It is a set of rules that control how people should develop and manage materials, products, services,
Software Reliability: The “Physics” of “Failure” SJSU ISE 297 Donald Kerns 7/31/00.
The Key Process Areas for Level 2: Repeatable Ralph Covington David Wang.
S T A M © 2000, KPA Ltd. Software Trouble Assessment Matrix Software Trouble Assessment Matrix *This presentation is extracted from SOFTWARE PROCESS QUALITY:
Integrated Capability Maturity Model (CMMI)
Capability Maturity Model. Reflection Have you ever been a part of, or observed, a “difficult” software development effort? How did the difficulty surface?
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
Capability Maturity Model Part One - Overview. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First.
N By: Md Rezaul Huda Reza n
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff.
Michael Dermody September 2010  Capability Maturity Model Integration ◦ Is a Trademark owned by the Software Engineering Institute (SEI) of Carnegie.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Lecture 1 Introduction to Software Engineering
Software Engineering - Spring 2003 (C) Vasudeva Varma, IIITHClass of 39 CS3600: Software Engineering: Standards in Process Modeling CMM and PSP.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
Software Engineering Lecture # 17
Capability Maturity Model. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First version published in.
Software Project Management Lecture 7A SEI - Capability Maturity Model.
Models of Quality Assessment
Georgia Institute of Technology CS 4320 Fall 2003.
SWEN 5130 Requirements Engineering 1 Dr Jim Helm SWEN 5130 Requirements Engineering Requirements Management Under the CMM.
M ATURATION OF P ROCESSES AND M ATURITY M ODELS Presenter Name Presentation Date.
Software Engineering - I
CS Process Improvement CMM Hans Van Vliet, Software Engineering, Principles and Practice, 3 rd edition, John Wiley & Sons, Chapter 6. W. Humphrey,
Process Improvement. It is not necessary to change. Survival is not mandatory. »W. Edwards Deming Both change and stability are fundamental to process.
CMMI. 1.Initial - The software process is characterized as ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual.
Ch-1 Introduction The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Page 1 The Capability Maturity Model (CMM) distinguishes between immature and mature software organizations. Immature software organizations are typically.
Purpose: The purpose of CMM Integration is to provide guidance for improving your organization’s processes and your ability to manage the development,
COMP 6710 Course NotesSlide 3-0 Auburn University Computer Science and Software Engineering Course Notes Set 3: Software Process Maturity Computer Science.
SOFTWARE PROCESS IMPROVEMENT
Software Engineering (CSI 321) Software Process: A Generic View 1.
UNIT 5.
Done By: Asila AL-harthi Fatma AL-shehhi Fakhriya AL-Omieri Safaa AL-Mahroqi.
Capability Maturity Model. CS460 - Senior Design Project I (AY2004)2 Immature Organisations Software processes are often rigorously followed. Organisation.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
CMMI for Services, Version 1.3
By Manish Shrotriya CSE MS Software Engineering vs Software Project Engineering Goals: Develop quality software What is quality of a software.
Capability Maturity Model. What is CMM? n CMM: Capability Maturity Model n Developed by the Software Engineering Institute of the Carnegie Mellon University.
State of Michigan Achieving Software Process Improvement with
CS4311 Spring 2011 Process Improvement Dr
Information Technology Project Management – Fifth Edition
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Software Engineering Lecture 16.
Software Engineering I
Capability Maturity Model
Capability Maturity Model
Presentation transcript:

Capability Maturity Model

What is CMM? CMM: Capability Maturity Model Developed by the Software Engineering Institute of the Carnegie Mellon University Framework that describes the key elements of an effective software process.

What is CMM? Describes an evolutionary improvement path for software organizations from an ad hoc, immature process to a mature, disciplined one. Provides guidance on how to gain control of processes for developing and maintaining software and how to evolve toward a culture of software engineering and management excellence.

Process Maturity Concepts Software Process set of activities, methods, practices, and transformations that people use to develop and maintain software and the associated products (e.g., project plans, design documents, code, test cases, user manuals) Software Process Capability describes the range of expected results that can be achieved by following a software process means of predicting the most likely outcomes to be expected from the next software project the organization undertakes

Process Maturity Concepts Software Process Performance actual results achieved by following a software process Software Process Maturity extent to which a specific process is explicitly defined, managed, measured, controlled and effective implies potential growth in capability indicates richness of process and consistency with which it is applied in projects throughout the organization

What are the CMM Levels? (The five levels of software process maturity) Maturity level indicates level of process capability: Initial Repeatable Defined Managed Optimizing

Level 1: Initial Initial : The software process is characterized as ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual effort. At this level, frequently have difficulty making commitments that the staff can meet with an orderly process Products developed are often over budget and schedule Wide variations in cost, schedule, functionality and quality targets Capability is a characteristic of the individuals, not of the organization

Level 2: Repeatable Basic process management processes are established to track cost, schedule, and functionality. The necessary process discipline is in place to repeat earlier successes on projects with similar applications. Realistic project commitments based on results observed on previous projects Software project standards are defined and faithfully followed Processes may differ between projects Process is disciplined earlier successes can be repeated

Level 3: Defined The software process for both management and engineering activities is documented, standardized, and integrated into a standard software process for the organization. All projects use an approved, tailored version of the organization’s standard software process for developing an maintaining software.

Level 4: Managed Detailed measures of the software process and product quality are collected. Both the software process and products are quantitatively understood and controlled. Narrowing the variation in process performance to fall within acceptable quantitative bounds When known limits are exceeded, corrective action can be taken Quantifiable and predictable predict trends in process and product quality

Level 5: Optimizing Continuous process improvement is enabled by quantitative feedback from the process and from piloting innovative ideas and technologies. Goal is to prevent the occurrence of defects Causal analysis Data on process effectiveness used for cost benefit analysis of new technologies and proposed process changes

Internal Structure to Maturity Levels Except for level 1, each level is decomposed into key process areas (KPA) Each KPA identifies a cluster of related activities that, when performed collectively, achieve a set of goals considered important for enhancing software capability. commitment ability activity measurement verification

Level 2 KPAs Requirements Management Software Project Planning Establish common understanding of customer requirements between the customer and the software project Requirements is basis for planning and managing the software project Not working backwards from a given release date! Software Project Planning Establish reasonable plans for performing the software engineering activities and for managing the software project

Level 2 KPAs Software Project Tracking and Oversight Establish adequate visibility into actual progress Take effective actions when project’s performance deviates significantly from planned Software Subcontract Management Manage projects outsourced to subcontractors Software Quality Assurance Provide management with appropriate visibility into process being used by the software projects work products

Level 2 KPAs Software Configuration Management Establish and maintain the integrity of work products Product baseline Baseline authority

Level 3 KPAs Organization Process Focus Establish organizational responsibility for software process activities that improve the organization’s overall software process capability Organization Process Definition Develop and maintain a usable set of software process assets stable foundation that can be institutionalized basis for defining meaningful data for quantitative process management

Level 3 KPAs Training Program Integrated Software Management Develop skills and knowledge so that individual can perform their roles effectively and efficiently Organizational responsibility Needs identified by project Integrated Software Management Integrated engineering and management activities Engineering and management processes are tailored from the organizational standard processes Tailoring based on business environment and project needs

Level 3 KPAs Software Product Engineering Intergroup Coordination technical activities of the project are well defined (SDLC) correct, consistent work products Intergroup Coordination Software engineering groups participate actively with other groups Peer Reviews early defect detection and removal better understanding of the products implemented with inspections, walkthroughs, etc

Level 4 KPAs Quantitative Process Management control process performance quantitatively actual results from following a software process focus on identifying and correcting special causes of variation with respect to a baseline process Software Quality Management quantitative understanding of software quality products process

Level 5 KPAs Process Change Management Technology Change Management continuous process improvement to improve quality, increase productivity, decrease cycle time Technology Change Management identify and transfer beneficial new technologies tools methods processes Defect Prevention causal analysis of defects to prevent recurrence

What are the benefits ? Helps forge a shared vision of what software process improvement means for the organization Defines set of priorities for addressing software problems Supports measurement of process by providing framework for performing reliable and consistent appraisals Provides framework for consistency of processes and product

Why measure software and software process? Obtain data that helps us to better control schedule cost quality of software products

Consistent measurement provide data for: Quantitatively expressing requirements, goals, and acceptance criteria Monitoring progress and anticipating problems Quantifying tradeoffs used in allocating resources Predicting schedule, cost and quality

Measurements Historical Plan Actual Projections

SEI Core Measures

Examples of measurements for size of work products Estimated number of requirements Actual number of requirements Estimated source lines of code (SLOC) Actual SLOC Estimated number of test cases Actual number of test cases

Example of measurements of effort Estimated man-hours to design/code a given module Actual man-hours expended for designing/coding the module Estimated number of hours to run builds for a given release Actual number of hours spent running builds for the release

Examples of measurements of quality of the work product Number of issues raised at requirements inspection Number of requirements issues open Number of requirements issues closed Number of issues raised during code inspection Number of defects opened during unit testing

Examples of measurements of quality of the work product Number of defects opened during system testing Number of defects opened during UAT Number of defects still open Number of defects closed Defect age

Examples of measurements of quality of the work product Total number of build failures Total number of defects fixed for a given release Total number of defects verified and accepted Total number of defects verified and rejected