Lecture Software process improvement: Lesson 13 provide students with knowledge about: introduction to CMMI; standard CMMI appraisal method for process improvement; relationship between key terms; short history of CMMI; commonly used CMMs;... Please refer to the detailed content of the lecture!
Introduction to CMMI Lecture # 13 1 Introduction to CMMI • CMMI is an acronym for Capability • Maturity Model Integration • Some people would say the CMMI is a model, while others would describe it as a set of models • But most will agree that the CMMI is a merger of process improvement models for systems engineering, software engineering, hardware engineering, and integrated teams Introduction to CMMI • Some of the goals of the CMMI are to provide a common vocabulary across the set of models and to provide clarification on how these areas interrelate • The integrated model has both a continuous and staged perspective 3 Introduction to CMMI • Let’s discuss the differences between the CMMI, a process model, a process, a process description, a procedure, and an appraisal • Some people have a problem because they think CMMI is a process or a set of processes • It is neither 4 What is CMMI? • CMMI is a process model • The CMMI cannot just be copied as is and serve as an organization’s processes • CMMI is a collection of best practices from highly functioning organizations collected to help you improve your processes by describing what things or activities should be done in your organization 5 What is a Process? • A process is what you really do in your organization • The process is written down as the activities or steps you go through to perform work • Your organization’s processes must be documented to be real, to be performed consistently, and to be improved 6 What is a Process? • If your organization has undocumented processes and you believe that these processes are used consistently then you are living in a world of denial • The CMMI recommends certain attributes that are necessary when documenting processes 7 What is a Process Description? • A process description is a “documented expression of a set of activities to achieve a given purpose” • The process description documents the steps of the process performed, that is, what you do when you perform a task • Closely related are procedures that describe the stepbystep instructions on how to perform the steps in the process What is an appraisal? • An appraisal is a way to evaluate the organization’s processes and procedures, how they were implemented, to what extent they are followed, and to what extent they map to the CMMI practices 9 CMMI • In the CMMI world, SCAMPI (Standard CMMI Appraisal Method for Process Improvement) is a set of appraisal methods that differ in their intent and rigor • The SCAMPI can be used for internal process improvement, supplier selection, process monitoring, and for maturity or capability level ratings for contract awards 10 10 Continuous Representation • The continuous representation is the approach used in the SECM and the IPDCMM. This approach allows an organization to select a specific process area and improve relative to it • The continuous representation uses capability levels to characterize improvement relative to an individual process area 36 36 Process Area Capability and Organizational Maturity • Process area capability and organizational maturity are similar concepts • The difference between them is that process area capability deals with a set of processes relating to a single process area or specific practice, while organizational maturity pertains to a set of process areas across an organization 37 37 Remember • A model is not a process • The model shows what to do, NOT how to do it or who does it 38 38 Why Do We have Two Representations? • Source Model Heritage – Software CMMStaged – SECMContinuous – IPD CMM—Hybrid • Proponents for each type of representation were part of CMMI product development team • Selecting a single representation approach became “too hard” • A compromise was made to initially support two 39 representations of the model with equivalent 39 Advantages of Staged Representation • Provides a roadmap for implementing – groups of process areas – sequencing of implementation • Familiar structure for those transitioning from the SWCMM 40 40 Advantages of Continuous Representations • Provides maximum flexibility for focusing on specific process areas according to business goals and objectives • Familiar structure for those transitioning from the systems engineering community 41 41 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 42 42 CMMI Structure: One Model, Two Representations 43 43 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 CMMISE/SW Staged 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 CMMISE/SW Continuous 4444 44 CMMI Model Structure • Maturity Levels (staged representation) or Capability Levels (continuous representation) • Process Areas • Goals – Generic and Specific • Practices – Generic and Specific 45 45 CMMI Model Structure • The CMMI product suite is at the forefront of process improvement because it provide the latest best practices for product and service development and maintenance • The CMMI models improve the best practices of previous models in many important ways 46 46 Benefits of CMMI 1 • CMMI best practices enable organizations to do the following – More explicitly link management and engineering activities to their business objectives – Expand the scope of and visibility into the product lifecycle and engineering activities to ensure that the product or service meets customer expectations 47 47 Benefits of CMMI 2 – Incorporate lessons learned from additional areas of best practices (e.g., measurement, risk management, and supplier management) – Implement more robust highmaturity practices – Address additional organizational functions critical to their products and services – More fully comply with relevant ISO standards 48 48 Benefits of CMMI 3 • Use CMMI in process improvement activities as a – Collection of best practices – Framework for organizing and prioritizing activities – Support for the coordination of multidisciplined activities that might be required to successfully build a product – Means to emphasize the alignment of the process improvement objectives with organization business 49 49 objectives References • http://www.sei.cmu.edu/general/index.html • Interpreting the CMMI: A Process Improvement Approach, Second Edition, by Margaret K. Kulpa and Kent A. Johnson, Auerbach Publication, 2008 (electronic file), (Chapter 14) 50 50 ... Let’s discuss the differences between the CMMI, a? ?process? ?model, a? ?process, a process? ?description, a procedure, and an appraisal • Some people have a problem because they think CMMI is a? ?process? ?or a set of processes • It is neither... staged acquisition software? ? System Security Engineering CMM continuous engineering security Personal? ?Software? ?Process staged individual software? ?development FAAiCMM continuous software? ? engineering, systems ... Relationship between Key Terms 13 13 Short History of CMMI 14 14 Short History of CMMI • People were successfully using the Capability Maturity Model, which was designed for improving? ?software? ?processes and measuring the maturity of? ?software? ?