CMMI Overview CMMI Overview – Satish Mishra Focus of CMMI CMMI is applied here SW-CMM is applied here CMMI Overview – Satish Mishra 2 Quality Leverage Points Everyone realizes the importance of having a motivated, quality work force but... PEOPLE TECHNOLOGY PROCESS • ...even our finest people can’t perform at their best when the process is not understood or operating “at its best.” Major determinants of product cost, schedule, and quality CMMI Overview – Satish Mishra 3 Why Focus on Process? • Process provides a constructive, high-leverage focus... –as opposed to a focus on people » Your work force, on the average, is as “good” as it is trained to be. » Working harder is not the answer. » Working smarter, through process, is the answer. –as opposed to a focus on technology » Technology applied without a suitable roadmap will not result in significant payoff. » Technology provides the most benefit in the context of an appropriate process roadmap. CMMI Overview – Satish Mishra 4 Underlying Premise of Process Improvement “The quality of a product is largely determined by the quality of the process that is used to develop and maintain it.” CMMI Overview – Satish Mishra 5 Categories of Process Improvement Benefits •Process improvement benefits fall into eight general categories: –improved schedule and budget predictability –improved cycle time –increased productivity –improved quality (as measured by defects) –increased customer satisfaction –improved employee morale –increased return on investment –decreased cost of quality CMMI Overview – Satish Mishra 6 What is a CMM? •Capability Maturity Model: A reference model of mature practices in a specified discipline, used to assess a group’s capability to perform that discipline •CMMs differ by –Discipline (software, systems, acquisition, etc.) –Structure (staged versus continuous) –How Maturity is Defined (process improvement path) –How Capability is Defined (institutionalization) CMMI Overview – Satish Mishra 7 So Many Models, So Little Time Software CMM EIA 731 Systems Engr CMM IPD CMM People CMM Software Acq CMM Systems Security Engr CMM CMMI Overview – Satish Mishra • Different structures, formats, terms, ways of measuring maturity • Causes confusion, especially when using more than one model • Hard to integrate them in a combined improvement program • Hard to use multiple models in supplier selection 8 Bridging the Divide CMMI: • Integrates systems and software disciplines into one process improvement framework. • Provides a framework for introducing new disciplines as needs arise. CMMI Overview – Satish Mishra 9 The Next Step Is CMM Integration • The CMM Integration Project was formed to –build an initial set of integrated models –improve best practices from source models based on lessons learned –establish a framework to enable integration of future models –create an associated set of appraisal and training products • Collaborative endeavor (over 100 people involved) –Industry –Government –Software Engineering Institute (SEI) CMMI Overview – Satish Mishra 10 Enterprise-Wide Improvement • CMMI enables organizations that want to pursue process improvement in multiple functional areas to do so with less additional investment for each additional function. –CMMI supports process integration and product improvement. –CMMI integrates multiple disciplines into one process-improvement framework. –CMMI provides a framework for introducing new disciplines as needs arise. CMMI Overview – Satish Mishra 11 Bodies of Knowledge Captured in CMMI Models •An organization selects the bodies of knowledge most relevant to achieving its business objectives. Bodies of knowledge* available in CMMI models include –software engineering(sw) –systems engineering(se) –integrated product and process development (IPPD) –supplier sourcing (SS) •*Each body of knowledge related to product or process development in CMMI is considered a discipline. CMMI Overview – Satish Mishra 12 Software Engineering (SW) • SW covers the development of software systems • SW focus on applying systematic, disciplined, and quantifiable approaches to the –development, –operation –maintenance CMMI Overview – Satish Mishra 13 System Engineering (SE) • Systems engineering covers the development of total systems, which may or may not include software • Systems engineers focus on transforming customer needs, expectations, and constraints into product solutions and supporting these product solutions throughout the life of the product CMMI Overview – Satish Mishra 14 Integrated Product & process development (IPPD) • IPPD is a systematic approach that achieves a timely collaboration of relevant stakeholders throughout the life of the product to better satisfy customer needs, expectations, and requirements CMMI Overview – Satish Mishra 15 Supplier sourcing (SS) • As work efforts become more complex, projects may use suppliers to perform functions or add modifications to products that are specifically needed by the project. When those activities are critical, the project benefits from enhanced source analysis and from monitoring supplier activities before product delivery CMMI Overview – Satish Mishra 16 CMMI Models Source Models • Capability Maturity Model for Software V2, draft C (SW-CMM V2C) • EIA Interim Standard 731, System Engineering Capability Model (SECM) • Integrated Product Development Capability Maturity Model, draft V0.98 (IPD-CMM) CMMI Overview – Satish Mishra • Combined System Engineering / Software Engineering model • Can be applied to: – Just the software engineering projects in an organization – Just the system engineering projects in an organization – Both – IPPD/SS can be used in either/both 17 Understanding CMMI Representations • There are two types of representations in the CMMI models: –staged –continuous • A representation allows an organization to pursue different improvement objectives • The organization and presentation of the data are different in each representation. However, the content is the same. CMMI Overview – Satish Mishra 18 Staged Representation • Provides a proven sequence of improvements, each serving as a foundation for the next • Permits comparisons across and among organizations by the use of maturity levels • Provides an easy migration from the SW-CMM to CMMI • Provides a single rating that summarizes appraisal results and allows comparisons among organizations Indicates maturity of an organization’s standard process -- to answer, “What is a good order for approaching improvement across the organization?” CMMI Overview – Satish Mishra 19 CMMI Model Representations CMMI Overview – Satish Mishra 20 Maturity Levels • A maturity level is a well-defined evolutionary plateau of process improvement. • There are five maturity levels. • Each level is a layer in the foundation for continuous process improvement using a proven sequence of improvements, beginning with basic management practices and progressing through a predefined and proven path of successive levels. CMMI Overview – Satish Mishra 21 The Maturity Levels 5 4 3 2 Optimizing Focus on continuous process improvement Quantitatively Managed Process measured and controlled Defined Process characterized for the organization and is proactive Managed Process characterized for projects and is often reactive Initial 1 Process unpredictable, poorly controlled, and reactive CMMI Overview – Satish Mishra 22 Maturity Levels Should Not Be Skipped • Each maturity level provides a necessary foundation for effective implementation of processes at the next level. –Higher level processes have less chance of success without the discipline provided by lower levels. –The effect of innovation can be obscured in a noisy process. • Higher maturity level processes may be performed by organizations at lower maturity levels, with the risk of not being consistently applied in a crisis. CMMI Overview – Satish Mishra 23 Continuous Representation • Allows you to select the order of improvement that best meets your organization’s business objectives and mitigates your organization’s areas of risk • Enables comparisons across and among organizations on a process-area-by-process-area basis • Provides an easy migration from EIA 731 (and other models with a continuous representation) to CMMI Indicates improvement within a single process area -- to answer, “What is a good order for approaching improvement of this process area?” CMMI Overview – Satish Mishra 24 Capability Levels • A capability level is a well-defined evolutionary plateau describing the organization’s capability relative to a process area. • There are six capability levels. • For capability levels 1-5, there is an associated generic goal. • Each level is a layer in the foundation for continuous process improvement. • Thus, capability levels are cumulative, i.e., a higher capability level includes the attributes of the lower levels. CMMI Overview – Satish Mishra 25 The Capability Levels 5 Optimizing 4 Quantitatively Managed 3 Defined 2 Managed 1 Performed 0 Incomplete CMMI Overview – Satish Mishra 26 Representing Capability Levels for a Single Process Area Capability Level • The process area capability of an implemented process can be represented by a bar. This point represents a higher level of “maturity” than this point in a specific process area 3 2 1 0 Process Area n Process CMMI Overview – Satish Mishra 27 Relating Process Area Capability and Organizational Maturity • Organizational maturity is the focus of the staged representation, whereas process area capability is the focus of the continuous representation. • Organizational maturity and process area capability are similar concepts. • The difference between them is that organizational maturity pertains to a set of process areas across an organization, while process area capability deals with a set of processes relating to a single process area or specific practice. CMMI Overview – Satish Mishra 28 Comparison of Representations Staged • Process improvement is measured using maturity levels. • Maturity level is the degree of process improvement across a predefined set of process areas. • Organizational maturity pertains to the “maturity” of a set of processes across an organization CMMI Overview – Satish Mishra Continuous Process improvement is measured using capability levels. Capability level is the achievement of process improvement within an individual process area. Process area capability pertains to the “maturity” of a particular process across an organization. 29 Advantages of Each Representation • Staged • Provides a roadmap for implementing –groups of process areas –sequencing of implementation • Familiar structure for those transitioning from the Software CMM • Continuous • Provides maximum flexibility for focusing on specific process areas according to business goals and objectives • Familiar structure for those transitioning from EIA 731 CMMI Overview – Satish Mishra 30 CMMI in a Nutshell • A CMMI model provides a structured view of process improvement across an organization • CMMI can help –set process improvement goals and priorities –provide guidance for quality processes –provide a yardstick for appraising current practices CMMI Overview – Satish Mishra 31 Percentage Improvement Improvements from Adopting Software CMM 40 35 30 25 20 15 10 5 0 39% 35% 19% Savings vs. cost of software process improvement (median) 5:1 Productivity (increase) Time to market (reduction) Post-release defect reports (reduction) Annual Medians CMMI Overview – Satish Mishra 32 Benefits of Continuing Process Improvement •SEI Software CMM Level 5: For the Right Reasons* –Defects are now nearly all found and fixed before testing begins. –Defects escaping into the field have been reduced from 11% to practically 0%. –Programs consistently reach customer satisfaction and performance targets. –Peer reviews increase total project costs by 4%, but reduced rework during testing by 31%. R.O.I. is 7.75:1. CMMI Overview – Satish Mishra 33 CMM“I” – Improvement • The CMMI Product Suite provides a foundation for enterprise-wide improvement and adds –new emphasis on products and services as well as process –emphasis on both process capability and organizational maturity –early emphasis on measurement and analysis • The CMMI model improves upon Software CMM V1.1 and Software CMM V2.0 Draft C. CMMI Overview – Satish Mishra 34 CMM“I” – Integration • Provides expanded model scope for integration –Integrated Product Management –Integrated Supplier Management –Decision Analysis and Resolution –“Relevant Stakeholder” planning and execution –Inclusion of the Integrated Product and Process Development body of knowledge CMMI Overview – Satish Mishra 35 Improving on the Software CMM • CMMI Models improve on the best practices in Software CMM Version 2.0 Draft C: – Incorporates 4+ additional years of learning – More explicitly links management and engineering activities to business objectives – Expands the scope of and visibility into the product life cycle and engineering activities to ensure the product or service meets customer expectations – Incorporates additional areas of best practice (e.g., measurement, risk management, bi-directional traceability in requirements management, decision analysis and resolution, and supplier management) – Captures more robust high-maturity practices – Addresses additional generic practices needed for institutionalization – More fully complies with relevant ISO standards CMMI Overview – Satish Mishra 36 CMMI Can Benefit You • CMMI provides –Efficient, effective assessment and improvement across multiple process disciplines in an organization –Improvements to best practices incorporated from the Software CMM –A common, integrated vision of improvement for all elements of an organization –A means of representing new discipline-specific information in a standard, proven processimprovement context CMMI Overview – Satish Mishra 37 CMMI Product Suite •Models –Disciplines »Systems Engineering SE »Software Engineering SW »Integrated Product and Process Development (IPPD) »Supplier Sourcing (SS) –Representations »Staged »Continuous CMMI Overview – Satish Mishra 38 Available Models •The following CMMI Models exist: – SE/SW Staged – SE/SW Continuous – SE/SW/IPPD Staged – SE/SW/IPPD Continuous – SE/SW/IPPD/SS Staged – SE/SW/IPPD/SS Continuous – SW Staged – SW Continuous CMMI Overview – Satish Mishra 39 Selecting a Discipline to Use • Different model versions exist – CMMI-SW -- CMMI-SE/SW/IPPD – CMMI-SE/SW -- CMMI-SE/SW/IPPD/SS • You select which disciplines you wish to use, based on where you are trying to improve • Example – A company which engineers and builds computer systems, by acquisition of COTS hardware and development of custom software, using integrated teams – Use CMMI-SW applied only to the software development – Use CMMI-SE/SW applied to the computer system and the software – Use CMMI-SE/SW/IPPD applied to the system, software, and use of teams – Use CMMI-SE/SW/IPPD applied to the system, software, teams, and COTS acquisition CMMI Overview – Satish Mishra 40 CMMI Structure one Model, Two Representations Appendixes Appendixes Maturity Level 5 OID, CAR Maturity Level 4 OPP, QPM Maturity Level 3 REQD, TS, PI, VER, VAL, OPF, OPD, OT, IPM, RSKM, DAR Maturity Level 2 REQM, PP, PMC, SAM, MA, PPQA, CM Overview Introduction Structure of the Model Model Terminology Maturity Levels, Common Features, and Generic Practices Understanding the Model Using the Model CMMI-SE/SW Staged CMMI Overview – Satish Mishra Support CM, PPQA, MA, CAR, DAR Engineering REQM, REQD, TS, PI, VER, VAL Project Management PP, PMC, SAM IPM, RSKM, QPM Process Management OPF, OPD, OT, OPP, OID Overview Process Management Introduction PAs Structure of the Model Goals Model Terminology - Practices Capability Levels and Generic Model Components Understanding the Model Using the Model CMMI-SE/SW Continuous 41 Model Components •Process Areas (PA) – Specific Goals (SG) » Specific Practices (SP) – Typical Work Products – Sub-practices – Notes – Discipline Amplifications – References – Generic Goals Expected Informative Informative Informative Informative Informative (GG) » Generic Practices (GP) – Generic Practice Elaborations CMMI Overview – Satish Mishra Required Required Expected Informative 42 Practices • Practices are the building blocks of the process areas • Example - Project Planning Process Area Specific Practice 1.1 - Establish a top-level work breakdown structure (WBS) to estimate the scope of the project. • To satisfy the required goals, you are expected to perform the practices – Most commercial and defense projects/organizations will implement as written • You may perform equivalent practices if they have an equivalent effect toward satisfying the generic or specific goal – These are termed “alternative practices” – Less prevalent in CMMI than in SW-CMM, because the CMMI practices are at a slightly higher level of abstraction – “Equivalent” is a judgment call – discuss with your appraiser CMMI Overview – Satish Mishra 43 Specific Practices vs. Generic Practices • Apply to a single process area • Describe activities that implement the process area • Apply to all process areas • Describe activities that institutionalize the process areas • Example – Requirements Mgmt. • SG 1 Manage Requirements SP 1.1 Obtain an Understanding of Requirements SP 1.2 Obtain Commitment to Requirements SP 1.3 Manage Requirements Changes SP 1.4 Maintain Bidirectional Traceability of Requirements SP 1.5 Identify Inconsistencies between Project Work and Requirements CMMI Overview – Satish Mishra • GG 2 Institutionalize a Managed Process GP 2.1 Establish an Organizational Policy GP 2.2 Plan the Process GP 2.3 Provide Resources GP 2.4 Assign Responsibility GP 2.5 Train People GP 2.6 Manage Configurations GP 2.7 Identify and Involve Relevant Stakeholders GP 2.8 Monitor and Control the Process GP 2.9 Objectively Evaluate Adherence GP 2.10 Review Status with Higher Level Management • GG 3 Institutionalize a Defined Process GP 3.1 Establish a Defined Process GP 3.2 Collect Improvement Information 44 CMMI Model Structure CMMI Overview – Satish Mishra 45 Staged Representation: Process Areas by Maturity Level Level Focus Process Areas 5 Optimizing Continuous process improvement Organizational Innovation and Deployment Causal Analysis and Resolution 4 Quantitatively Managed Quantitative management Organizational Process Performance Quantitative Project Management 3 Defined Process standardization (SS) (IPPD) (IPPD) 2 Managed CMMI Overview – Satish Mishra 1 Initial Basic project management Requirements Development Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Integrated Supplier Management Risk Management Decision Analysis and Resolution Organizational Environment for Integration Integrated Teaming Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management 46 Continuous Representation: Organization of Process Areas Category Project Management Process Area Project Planning Project Monitoring and Control Supplier Agreement Management Integrated Project Management(IPPD) Integrated Supplier Management (SS) Integrated Teaming (IPPD) Risk Management Quantitative Project Management Support Configuration Management Process and Product Quality Assurance Measurement and Analysis Causal Analysis and Resolution Decision Analysis and Resolution Organizational Environment for Integration (IPPD) Engineering Requirements Management Requirements Development Technical Solution Product Integration Verification Validation Process Management Organizational Process Focus Organizational Process Definition Organizational Training Organizational Process Performance Organizational Innovation and Deployment CMMI Overview – Satish Mishra 47 Process Area Capability Profile Capability (How well) A process area capability profile may be represented by a set of points in two dimensions. –the process dimension »“What” you do –the capability dimension »“How well” you do it Process Area (What you do) CMMI Overview – Satish Mishra 48 Capability An Example Process Area Capability Profile 5 4 3 2 1 0 RM PP PMC etc Process Area CMMI Overview – Satish Mishra 49 SW-CMM V1.1 vs. CMMI V1.1 LEVEL 5 OPTIMIZING LEVEL 4 MANAGED Key Process Areas (KPAs) Process Areas (PAs) Defect Prevention Technology Change Mgmt Process Change Management Causal Analysis and Resolution Organizational Innovation & Deployment Quantitative Process Mgmt Software Quality Mgmt Organizational Process Performance Quantitative Project Management Organization Process Focus Organization Process Definition Training Program Integrated Software Mgmt Organization Process Focus Organization Process Definition Organizational Training Integrated Project Management Risk Management Requirements Development Technical Solution Product Integration Verification Validation Decision Analysis and Resolution Software Product Engr LEVEL 3 DEFINED LEVEL 2 REPEATABLE Intergroup Coordination Peer Reviews Requirements Management Requirements Management Software Project Planning Project Planning Software Project Tracking & Oversight Project Monitoring and Control Software Subcontract Mgmt Supplier Agreement Management Software Quality Assurance Product & Process Quality Assurance Software Configuration Mgmt Configuration Management Measurement and Analysis 50 Project Management Process Areas • There are eight Project Management Process Areas. – Project Planning – Project Monitoring and Control – Integrated Project Management (IPPD) – Risk Management – Supplier Agreement Management – Quantitative Project Management – Integrated Supplier Management (SS) – Integrated Teaming (IPPD) CMMI Overview – Satish Mishra 51 PP - Capability Level 1 Project Planning Specific Practices (CL1 - “Base Practices”) Generic Practices (CL1)) SP1.1-1: SP1.2-1: GP1.1: SP1.3-1: SP1.4-1: SP2.1-1: SP2.2-1: SP2.3-1: SP2.4-1: SP2.5-1: SP2.6-1: SP2.7-1: SP3.1-1: SP3.2-1: SP3.3-1: Estimate the Scope of the Project Establish Estimates of Work Product and Task Attributes Define Project Life Cycle Determine Estimates of Effort and Cost Establish Budget and Schedule Identify Project Risks Plan for Data Management Plan for Project Resources Plan for Needed Knowledge and Skills Plan Stakeholder Involvement Establish the Project Plan Review Plans that Affect the Project Reconcile Work and Resource Levels Obtain Plan Commitment CMMI Overview – Satish Mishra Perform Base Practices If all of the base practices are performed, Then, the associated Specific Goals and Generic Goal 1 are satisfied, So, the Process Area is rated at Capability Level 1 (CL1) Performed. 52 Building Process Capability Level 5 Generic Practices Level 4 Generic Practices Level 2 Generic Practices Managed Process Defined Process Quantitatively Managed Process Capability Level 3 Generic Practices Optimizing Process Performed Process CMMI Overview – Satish Mishra 53 Support Process Areas There are six Support Process Areas: – Configuration Management – Process and Product Quality Assurance – Measurement and Analysis – Causal Analysis and Resolution – Decision Analysis and Resolution – Organizational Environment for Integration (IPPD) CMMI Overview – Satish Mishra 54 Understanding Support Processes •Support process areas cover the practices that support product development, maintenance, and acquisition. •They provide essential processes used by all the CMMI process areas, and are typically used in the context of performing other processes. CMMI Overview – Satish Mishra 55 Engineering Process Areas •There are six Engineering Process Areas. – Requirements Management – Requirements Development – Technical Solution – Product Integration – Verification – Validation CMMI Overview – Satish Mishra 56 Process Management Process Areas •There are five Process Management Process Areas: – Organizational Process Focus – Organizational Process Definition – Organizational Training – Organizational Process Performance – Organizational Innovation and Deployment CMMI Overview – Satish Mishra 57 Understanding Process Management Process Areas •The process management PAs apply across the organization as a whole and provide details that support the Capability Level 3 Generic Goal. •For selected PAs, the organization has standard processes, which individual projects tailor to their needs. CMMI Overview – Satish Mishra 58 About IPPD Integrated Product and Process Development •IPPD affects all process areas. •IPPD is not a discipline like SE or SW. •Rather, it is a way of doing business. •IPPD is employed in conjunction with the CMMI disciplines (software and systems engineering). •Implementation of IPPD shapes how you perform the work in these disciplines. CMMI Overview – Satish Mishra 59 IPPD - Definition IPPD provides a systematic approach to product development that achieves a timely collaboration of relevant stakeholders throughout the product life cycle to better satisfy customer needs. CMMI Overview – Satish Mishra 60 Scope of IPPD CMMI SE/SW/IPPD adds to CMMI SE/SW: –Two new process areas »Organizational Environment for Integration »Integrated Teaming –A revised Integrated Project Management (IPPD) process area (adds SG3 and SG4) –IPPD amplifications and references –New glossary definitions and acronyms –Overview material CMMI Overview – Satish Mishra 61 Process Areas Organized by Category Process Management empower Organizational Process Focus Organizational Process Definition Organizational Training Organizational Process Performance Organizational Innovation and Deployment Project Management Project Planning Project Monitoring and Control Supplier Agreement Management Integrated Project Management (for IPPD*) Risk Management Integrated Teaming Integrated Supplier Management** Quantitative Project Management standardize processes analyze analyze Support Configuration Management Process and Product Quality Assurance Measurement and Analysis Organizational Environment for Integration* Decision Analysis and Resolution Causal Analysis and Resolution Engineering employ CMMI Overview – Satish Mishra Requirements Development Requirements Management Technical Solution Product Integration Verification Validation measure & assist 62 Summary • There is one CMMI Model with two representations, Staged and Continuous • The material in both representations is the same just organized differently • Each representation provides different ways of implementing processes • Equivalent Staging provides a mechanism for relating Maturity Levels to Capability Levels • The CMMI model should be applied using intelligence, common sense, and professional judgment CMMI Overview – Satish Mishra 63 For More Information About CMMI –Go to CMMI Website » http://sei.cmu.edu/cmmi » http://seir.sei.cmu.edu/seir/ » http://www.ndia.org/ (annual CMMI Conference) » www.google.com CMMI Overview – Satish Mishra 64 Further Reading CMMI Overview – Satish Mishra 65 CMMI Overview – Satish Mishra 66