Lecture Software process improvement: Lesson 10A provide students with knowledge about: introduction to capability maturity model (CMM); CMM structure; software state-of-the-art in 1984; software engineering institute;... Please refer to the detailed content of the lecture!
Introduction to CMM Lecture #10A CMM Structure Software StateoftheArt in 1984 1 • More than half of the large software systems were late in excess of 12 months • The average costs of large software systems was more than twice the initial budget • The cancellation rate of large software systems exceeded 35% • The quality and reliability levels of delivered software of all sizes was poor Software StateoftheArt in 1984 2 • Software personnel were increasing by more than 10% per year • Software was the largest known business expense which could not be managed Software Engineering Institute • A research facility, located in University of Carnegie Mellon, Pennsylvania • Primarily funded by US DoD to explore software issues, and especially topics associated with defense contracts • US DoD is the largest producer and consumer of software in the world Software Engineering Institute • SEI developed a Capability Maturity Model (CMM) for software systems and an assessment mechanism Five Levels of Software Process Maturity The Five Levels of Software Process Maturity Continuously Improving Process Predictable Process Standard, Consistent Process Disciplined Process Managed Process measured and controlled Defined Process characterized, fairly well understood Repeatable Integrated Can repeat previously Engineering mastered tasks Process Initial Unpredictable and poorly controlled Project Management 5.Optimizing Focus on process improvement Managing Change Product and Process Quality C MM Maturity Levels Maturity Levels Indicate • Well defined evolutionary plateau, a layer in the foundation for subsequent process improvement activities Process Capability • Range of results expected from following a software process C MM Maturity Levels • Well defined evolutionary plateau, a layer in the foundation for subsequent process improvement activities – Each level is a layer in the foundation for continuous process improvement – There are five maturity levels in the CMM – Achieving each level establishes a different component in the software process – Maturity levels are described in terms of 18 key process areas C MM Common Features Maturity Levels Indicate Process Capability Contain Key Process Areas Achieve Organized by Common Features Address Goals Implementation / Institutionalization C MM Common Features • Used to organize the key practices in each key process area • Attribute that ensure the processes are defined, documented and understood • Common features are – – – – – Commitment to perform ability to perform activities performed measurement and analysis verifying implementation C MM • • • • Institutionalization The organization outlives those who leave it The organizational culture must convey the process Indicator of whether the KPA is effective, repeatable, and lasting The CMM has four common features that focus on institutionalizing the process – – – – Commitment to perform Ability to perform Measurement and analysis Verifying implementation • Activities performed focus on implementing the process C MM Commitment to Perform • Describes the actions the organization must take to ensure that the process is established and will endure • Typically includes – Policies – Leadership C MM Ability to Perform • Describes the preconditions that must exist in the project or organization to implement the software process competently • Typically includes – – – – – function / tools resources delegation training orientation C MM Activities Performed • Describes the roles and procedures necessary to implement a key process area • Typically includes – – – – establishing plans and procedures performing the work tracking it taking corrective actions as necessary C MM Measurement and Analysis • Describes the need to measure the process and analyze the measurements • Typically includes – examples of the measurements that could be taken to determine the status and effectiveness of the activities performed common feature C MM Verifying Implementation • Describes the steps to ensure that the activities are performed in compliance with the process that has been established • Typically includes reviews and audits by – Senior Management – Project management – SQA Key Practices 26 C MM Key Practices Maturity Levels Indicate Process Capability Achieve Goals Contain Key Process Areas Organized by Common Features Address Implementation / Institutionalization Contain Key Practices Describe Implementation / Institutionalization C MM Key Practices • State the fundamental policies, procedures, and activities for a key process area. Policies and procedures make up the infrastructure • Describe “what” is to be done, but they should not be interpreted as mandating “how” • Are organized by common features • 316 key practices in the CMM CMM Structure 29 CMM Structure Maturity Levels Maturity Levels contain indicate Key Process Key Process Areas Areas Process Capability Organized by achieve Common Common Features Features Goals contain address Key Practices Key Practices Implementation or Institutionalization describe Infrastructure or Activities Summary Maturity Levels 0-7 Key Process Areas RM PP PT SM QA CM 52 Goals 2-4 goals / KPA Common Activities Features Performed 316 Key Practices Commitment to Perform Ability to Perform Measurement and Analysis Verifying Implementation References • The Capability Maturity Model: Guidelines for Improving Software Process 32 ... (CMM) for? ?software? ?systems and an assessment mechanism Five Levels of? ?Software? ?Process? ? Maturity The Five Levels of? ?Software? ?Process? ? Maturity Continuously Improving Process Predictable Process. .. Achieving each level establishes a different component in the software? ?process – Maturity levels are described in terms of 18 key? ?process? ?areas C MM Key? ?Process? ?Areas Maturity Levels Indicate Process? ?Capability Contain Key? ?Process? ?Areas Achieve... Prevention Software Quality Management Organization Process Focus Organization Process Definition Training Program Ad Hoc Processes Software Product Engineering Peer Reviews C MM Maturity Levels Key? ?Process? ?Area Goals