• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Structuring a Practical, Layered Software- Development Life-Cycle using the CMMI
 

Structuring a Practical, Layered Software- Development Life-Cycle using the CMMI

on

  • 1,603 views

 

Statistics

Views

Total Views
1,603
Views on SlideShare
1,601
Embed Views
2

Actions

Likes
1
Downloads
97
Comments
0

1 Embed 2

http://www.linkedin.com 2

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Structuring a Practical, Layered Software- Development Life-Cycle using the CMMI Structuring a Practical, Layered Software- Development Life-Cycle using the CMMI Presentation Transcript

    • Structuring a Practical, Layered Software-Development Life-Cycle using the CMMI Gary P. Cort, Ph.D. Corinne A. Cort, Ph.D.Vice President, Software Quality Director, Global Learning and Talent Management Research In Motion Limited February 2009PM(CMMI)-007.000 Slide 1
    • IntroductionPM(CMMI)-007.000 Slide 2
    • What is the CMMI?The Capability Maturity Model Integration (CMMI) is a flexible, process-based set of criteria for characterizing the activities and culture of a technical organization to Understand strengths and weaknesses Predict performance Benchmark against other organizations Plan and prioritize process improvements Improve competitivenessThe CMMI is not a process or a collection of best practices.PM(CMMI)-007.000 Slide 3
    • Foundation Principles Focused on robust processes Based on industry experience, not ivory-tower theory PEOPLE Emphasizes technical excellence within an enabling culture TECHNOLOGY PROCESS Is not prescriptive Supports incremental implementation Maturity levels Capability levelsPM(CMMI)-007.000 Slide 4
    • Benefits Experience (>900 High Tech Organizations) Resource Utilization Defect Experience 1.40 1.40 1.20 1.20 1.20 1.20 1.00 1.00 Normalized Effort Normalized Staff Shipped Defects Total Defects 1.00 1.00 0.80 0.80 0.80 0.80 0.60 0.60 0.60 0.60 0.40 0.40 0.40 0.40 0.20 0.20 0.20 0.20 0.00 0.00 0.00 0.00 1 2 3 4 5 1 2 3 4 5 MaturityLevel CMM Level CMM Level Maturity Level Project Execution Time Productivity Growth 1.60 40 Normalized Time to Market 1.40 Productivity Factor 1.20 30 1.00 0.80 20 0.60 0.40 10 0.20 0.00 0 1 2 3 4 5 1 2 3 4 5 CMM Level Maturity Level MaturityLevel CMM Level PM(CMMI)-007.000 Slide 5
    • Comparison with CMM for Software CMM for Software CMMI Software-, Hardware-, or System- Software Engineering only Engineering 5 Maturity Levels or 5 Maturity Levels 6 Capability Levels 15 Key Process Areas (KPAs) 22 Process Areas (PAs) 1 Engineering KPA 6 Engineering PAs 4 Common Features 17 Generic Practices Goal/Practice Mapping: many to Goal/Practice Mapping: one to many (overlapping) many (non-overlapping)PM(CMMI)-007.000 Slide 6
    • The Fit with other Standards COBIT Process Management ITIL Best Practices Best Practices CMMI Measurement Business Results SPC Process Org Responsibility Management Six Sigma Foundation MBNQA Elements Engineering Process & Process Mgt Management Measurement Resource ISO 9001 ManagementPM(CMMI)-007.000 Slide 7
    • The CMMI Product Suite The CMMI Models CMMI for Development (Hardware, software & systems engineering) CMMI for Acquisition CMMI for Services Standard CMMI Appraisal Methodology for Process Improvement (SCAMPI) SCAMPI A – high fidelity – results in rating SCAMPI B – medium fidelity – no rating produced SCAMPI C – low fidelity – no rating produced CMMI Training Introduction to CMMI Intermediate Concepts of the CMMI Instructor Training SCAMPI Lead Appraiser Training SCAMPI B&C Team Lead TrainingPM(CMMI)-007.000 Slide 8
    • CMMI Technical OverviewPM(CMMI)-007.000 Slide 9
    • The Capability Maturity Model Integration (CMMI) Continuously improving process Optimizing 5 Predictable process Quantitatively Measurement excellence Managed - 4 Standard, consistent process Defined Engineering excellence 3 Managed Disciplined process 2 Management excellence Performed Chaos 1 Process adequate to perform work Process churn Initial 1 Incomplete Process not adequate to perform work 0 PM(CMMI)-007.000 Slide 10
    • Key Elements: Process Areas Category Process Areas Requirements Management Requirements Development Technical Solution Engineering Product Integration Verification Validation Project Planning Project Monitoring and Control Project Supplier Agreement Management Management Integrated Project Management Risk Management Quantitative Project Management Organizational Process Focus Organizational Process Definition Process Organizational Training Management Organizational Process Performance Organizational Innovation and Deployment Configuration Management Process and Product Quality Assurance Support Measurement and Analysis Decision Analysis and Resolution Causal Analysis and ResolutionPM(CMMI)-007.000 Slide 11
    • CMMI Architecture Process Area (PA) Purpose Introductory Related Statement Notes Process Areas Specific Goals (SG) Generic Goals (GG) Specific Practices (SP) Generic Practices Typical Work Subpractices (GP) Products Generic Practice Subpractices ElaborationsLegend Required Expected InformativePM(CMMI)-007.000 Slide 12
    • CMMI Architecture Continuous Staged Representation Representation Maturity Level Process Area Process Area Specific Generic Goals Goals Specific Generic Goals Goals Capability Level Specific Generic Practices Practices Specific Generic Practices PracticesPM(CMMI)-007.000 Slide 13
    • Optimal Progression: Staged Representation Maturity Level Focus Process Areas Quality Productivity 5 Optimizing Continuous Organizational Innovation and Deployment Process Causal Analysis and Resolution Improvement 4 Quantitatively Quantitative Organizational Process Performance Managed Management Quantitative Project Management 3 Defined Process Requirements Development Standardization Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management Decision Analysis and Resolution Requirements Management 2 Managed Basic Project Planning Project Project Monitoring and Control Management Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management Risk Rework 1 IncompletePM(CMMI)-007.000 Slide 14
    • Institutionalization: The Cultural Dimension A fundamental premise of the CMMI is that the effectiveness of your processes is largely determined by the culture in which they operate Once the technical details of a process are set, performance can only be increased by enhancing the effectiveness of the underlying culture Institutionalization is the process of bringing the culture to successively higher levels of effectiveness The CMMI implements a mechanism for objectively determining the level of institutionalization of a process More than 70% of the model is dedicated to institutionalization activities at the process-area levelPM(CMMI)-007.000 Slide 15
    • Institutionalization and Generic Practices Capability Level Generic Goals Generic Practices GG1: Achieve Perform the project- CL 1 Specific Goals GP 1.1: Perform Specific Practices specific work GP 2.1: Establish an Organizational Policy GP 2.2: Plan the Process GP 2.3: Provide Resources Institute basic GP 2.4: Assign Responsibility ML 2 GG2: Institutionalize GP 2.5: Train People controls and CL 2 coordination at theML 3 a Managed Process GP 2.6: Manage ConfigurationsML 4 project level GP 2.7: Identify and Involve Relevant StakeholdersML 5 GP 2.8: Monitor and Control the Process GP 2.9: Objectively Evaluate Adherence GP 2.10: Review Status with Higher Level Management Standardize at the GG3: Institutionalize GP 3.1: Establish a Defined Process organization level CL 3 a Defined Process GP 3.2: Collect Improvement Information GG4: Institutionalize Employ SPC to GP 4.1: Establish Quantitative Objectives for the Process stabilize performance CL 4 a Quantitatively Managed Process GP 4.2: Stabilize Subprocess Performance GG5: Institutionalize Employ SPC to GP 5.1: Ensure Continuous Process Improvement CL 5 an Optimizing continuously improve Process GP 5.2: Correct Root Causes of Problems PM(CMMI)-007.000 Slide 16
    • Building a Better Life Cycle: Layer 1 – The Foundation SDLCPM(CMMI)-007.000 Slide 17
    • Attributes of an Effective Life-Cycle Sequences the work – first things first Major technical activities - phases Detailed tasks - milestones Leverages best practices Integrates effective work-processes Focuses on deliverables Promotes bidirectional management-visibility Communication Control Facilitates staged evaluation of project viabilityPM(CMMI)-007.000 Slide 18
    • The CMMI Layered Life Cycles Process-Improvement Life -Cycle Infrastructure Life -Cycle Foundation SDLC Engineering & Project ManagementPM(CMMI)-007.000 Slide 19
    • CMMI and the Foundation SDLC Risk Management Project Monitoring and Control Project Planning Requirements Management Requirements Product Verification & Architecture Technical Solution Coding Design Development Integration ValidationProject Project Start EndNotes: The foundation SDLC focuses on getting the technical work done using Engineering and Project Management process areas It maps to virtually any life cycle formalism It requires the greatest change in organizational culture to reach Level 2PM(CMMI)-007.000 Slide 20
    • Increasing Foundation SDLC Effectiveness Capability Level Generic Goals Generic Practices GG1: Achieve Rely on heroes CL 1 Specific Goals GP 1.1: Perform Specific Practices GP 2.1: Establish an Organizational Policy GP 2.2: Plan the Process Institute basic, GP 2.3: Provide Resources reactive controls and GP 2.4: Assign Responsibility ML 2 GG2: Institutionalize GP 2.5: Train People coordination at the CL 2 project levelML 3 a Managed Process GP 2.6: Manage ConfigurationsML 4 GP 2.7: Identify and Involve Relevant StakeholdersML 5 Drive down rework GP 2.8: Monitor and Control the Process GP 2.9: Objectively Evaluate Adherence GP 2.10: Review Status with Higher Level Management GG3: Institutionalize GP 3.1: Establish a Defined Process Standardize at the CL 3 a Defined Process GP 3.2: Collect Improvement Information organization level GG4: Institutionalize Employ SPC to GP 4.1: Establish Quantitative Objectives for the Process CL 4 a Quantitatively stabilize performance Managed Process GP 4.2: Stabilize Subprocess Performance GG5: Institutionalize Employ SPC to GP 5.1: Ensure Continuous Process Improvement CL 5 an Optimizing continuously improve Process GP 5.2: Correct Root Causes of Problems PM(CMMI)-007.000 Slide 21
    • The Three Faces of the Foundation SDLC Capability Level 0 – Abject Chaos Rework >500% Every man for himself Little or no system exists Virtually no management support Capability Level 1 – Channeled Chaos Rework ~ 300% – 500% Heavy reliance on heroes High level system framework exists at the project level but relies on individual efforts to execute Little management support Capability Level 2 – Reactive Execution Rework ~ 100% - 300% System identifies and corrects major problems System exists at the process-area level Strong management supportPM(CMMI)-007.000 Slide 22
    • What does this look like in the Real World? Capability Level 0 For developers … For project managers … For project support personnel (CM, Testers, Process Improvement) … Capability Level 1 For developers … For project managers … For project support personnel (CM, Testers, Process Improvement) … Capability Level 2 For developers … For project managers … For project support personnel (CM, Testers, Process Improvement) …PM(CMMI)-007.000 Slide 23
    • Building a Better Life Cycle:Layer 2 – The Process Improvement Life CyclePM(CMMI)-007.000 Slide 24
    • The Process Focus The primary focus of the CMMI is on process performance. Lacking focused, organization-wide efforts to improve processes, performance stalls at capability level 2. The Level 2 culture and infrastructure is not capable of sustaining organization-wide process improvement. Special methods, resources, infrastructure, and assets are required to enable process improvement. The CMMI dedicates capability level 3 to laying the groundwork for organization-wide process improvement.PM(CMMI)-007.000 Slide 25
    • Process Management Drivers Cost and Time Process improvement is an extremely expensive proposition Significant time may be required to implement improvements and deploy them throughout the organization These factors drive organizations to use standard processes Flexibility and Performance Every execution domain is different – one size does not fit all, and sometimes fits no one Optimum performance is obtained from customized processes These factors drive organizations to use custom processes CMMI leverages both approaches through Organizational-standard processes to drive consistency Defined processes to ensure efficiencyPM(CMMI)-007.000 Slide 26
    • Organization-Standard and Defined ProcessesOrganizational Process Definition Organization’s Set Life Cycle Model Organization’s of Standard Processes Descriptions Measurement Repository Process Architectures Work Environment Organization’s Standards Process Tailoring Asset Library Guidelines Organizational Assets Project A’s Project B’s Project C’s Defined Process Defined Process Defined Process Project A Project B Project C Project EnvironmentPM(CMMI)-007.000 Slide 27
    • The Process-Improvement Life-Cycle Organizational Plan and Implement Strengths & Improvement Process Focus Weaknesses Initiatives Process Improvements Determine Process Improvement Establish Opportunities Process Action Identify the Selected Plans Establish Appraise the Organization’s Improvements Organizational Organization’s Process Process Processes Improve- Needs ments Implement Process Action Process Needs Organizational Plans and Objectives Process Assets Deploy Organizational Incorporate Process Process-Related Deploy Experiences Deploy Organizational Assets and Monitor Standard into the Implementation Process Incorporate Organizational Processes Assets Lessons Process Learned AssetsPM(CMMI)-007.000 Slide 28
    • Evolving the Process Improvement Culture Capability Level Generic Goals Generic Practices GG1: Achieve Individual best efforts CL 1 Specific Goals GP 1.1: Perform Specific Practices GP 2.1: Establish an Organizational Policy GP 2.2: Plan the Process GP 2.3: Provide Resources GP 2.4: Assign Responsibility Ad-hoc improvement ML 2 CL 2 GG2: Institutionalize GP 2.5: Train People of Foundation SDLCML 3 a Managed Process GP 2.6: Manage Configurations processes.ML 4 GP 2.7: Identify and Involve Relevant StakeholdersML 5 GP 2.8: Monitor and Control the Process GP 2.9: Objectively Evaluate Adherence GP 2.10: Review Status with Higher Level Management Standardization at the GG3: Institutionalize GP 3.1: Establish a Defined Process organization level for CL 3 a Defined Process GP 3.2: Collect Improvement Information reuse & tailoring GG4: Institutionalize Statistically GP 4.1: Establish Quantitative Objectives for the Process CL 4 a Quantitatively predictable processes Managed Process GP 4.2: Stabilize Subprocess Performance GG5: Institutionalize GP 5.1: Ensure Continuous Process Improvement Continually improving CL 5 an Optimizing Process GP 5.2: Correct Root Causes of Problems performance PM(CMMI)-007.000 Slide 29
    • Improvement Focus Capability Level 0 & 1 Process exists at individual level Little to no improvement focus Capability Level 2 Process exists at project level Ad-hoc process improvement (e.g. informal lessons learned) Tactical improvements focused on project team for near term Capability Level 3 Process exists at organization level Formal process improvement (e.g. based on objective measures) Tactical improvements focused on organization for mid-term Capability Level 4 & 5 Process exists at organization level Statistical process control (e.g. Six Sigma) Strategic improvements focused on organization for near termPM(CMMI)-007.000 Slide 30
    • Building a Better Life Cycle: Layer 3 – The Infrastructure Life-CyclePM(CMMI)-007.000 Slide 31
    • The Importance of Infrastructure The CMMI provides a number of process areas whose purpose is to facilitate the technical and process improvement activities These process areas ensure technical excellence and process consistency in the execution of these critical domains Because of their key role as enablers of the other two life- cycle layers, they comprise a distinct life-cycle layer of their own As for the process-improvement life-cycle , as the infrastructure life-cycle transitions to higher capability levels, the performance of the Foundation SDLC is enhanced commensuratelyPM(CMMI)-007.000 Slide 32
    • Key Infrastructure Process Areas Measurement & Analysis Ensures that objective measures used by the Foundation SDLC and the Process-Improvement Life-Cycle are representative, consistent, valid, and repeatable Process and Product Quality Assurance Establishes an audit function to check the fidelity of processes and work products against their specifications Configuration Management Protects key work products from uncontrolled change Decision Analysis and Resolution Provides formal support for making complex or high risk decisionsWe will focus on the Measurement & Analysis process areaPM(CMMI)-007.000 Slide 33
    • The Basic Measurement Life-Cycle Measurement & Analysis Align Measurement and Analysis Activities Specify Establish Data Specify Specify Collection Measurement AnalysisInformation Measures and Storage need Objectives Procedures Procedures Measurement Objectives Measurement Procedures Repository and Tools Measurement Results Provide Measurement Results Store Analyze Collect Communicate Data & Measurement Measurement Results Results Data Data PM(CMMI)-007.000 Slide 34
    • Beefing-up the Measurement Life-Cycle Organizational Process Performance Establish Performance Baselines and Models Establish Select Selected Subprocesses from Process- MA Processes Org. Std. Processes Performance Measures Establish Organization’s Set of Process- Standard Processes Performance Baselines Establish Organizational Process- Process- Performance Baselines Establish Performance Quality and Models Process- Organization’s Quality Performance and Process-Performance Objectives Objectives Process- QPM Performance ModelsPM(CMMI)-007.000 Slide 35
    • Institutionalizing the Measurement Life-Cycle Capability Level Generic Goals Generic Practices Decisions made on GG1: Achieve anecdotal information CL 1 Specific Goals GP 1.1: Perform Specific Practices GP 2.1: Establish an Organizational Policy GP 2.2: Plan the Process Some operational GP 2.3: Provide Resources measures of GP 2.4: Assign Responsibility Foundation SDLC ML 2 CL 2 GG2: Institutionalize GP 2.5: Train People processes.ML 3 a Managed Process GP 2.6: Manage ConfigurationsML 4 Measures are GP 2.7: Identify and Involve Relevant StakeholdersML 5 formally defined GP 2.8: Monitor and Control the Process GP 2.9: Objectively Evaluate Adherence GP 2.10: Review Status with Higher Level Management Performance measures for process GG3: Institutionalize GP 3.1: Establish a Defined Process CL 3 a Defined Process improvement GP 3.2: Collect Improvement Information Models, goals and GG4: Institutionalize baselines. Special GP 4.1: Establish Quantitative Objectives for the Process CL 4 a Quantitatively causes removed Managed Process GP 4.2: Stabilize Subprocess Performance Optimal improvement GG5: Institutionalize GP 5.1: Ensure Continuous Process Improvement life cycle. Common CL 5 an Optimizing Process GP 5.2: Correct Root Causes of Problems causes reduced PM(CMMI)-007.000 Slide 36
    • Transitioning to Statistical Process ControlOther advanced process areas complete the transition to full statistical process control (SPC): Quantitative Process Management The gateway to SPC Analyzes process performance against the measurement baselines using statistical techniques to identify non-random (special cause) variation Employs root cause analysis methods to eliminate the special causes Causal Analysis and Resolution Analyzes process performance against the measurement baselines using statistical techniques to identify random (common cause) variation Employs causal analysis methods to eliminate the special causes Organizational Innovation and Deployment Replaces the process improvement life-cycle with a modified version that incorporates SPC methodsPM(CMMI)-007.000 Slide 37
    • Putting it all TogetherPM(CMMI)-007.000 Slide 38
    • Integrating the Life Cycles CL Foundation SDLC Process Improvement Infrastructure Selected Subprocesses1. Emerging from 5 (Engineering and/or chaos Project Management2. Focusing on 4 development Project Management Statistical Process Control II, (OID, CAR)3. Preparing to (PM & PMC) Statistical Process Control I, (OPP, QPM) improve Basic Engineering 3 Organizational Process Measurement and (RD, REQM & VER) Focus (OPF) Analysis (MA)4. Prioritizing Enhanced Engineering Organizational Process Configuration (TS, PI & VAL) Development (OPD) Management (CM) improvement5. Stabilizing key 2 subprocesses6. Improving continually 1 PM(CMMI)-007.000 Slide 39
    • SummaryPM(CMMI)-007.000 Slide 40
    • CMMI Summary CMMI provides a practical, process-centric, industry-proven model for dramatically improving project performance CMMI integrates effectively with other established standards CMMI significantly extends the CMM for Software with major upgrades to the model architecture and components Enhanced engineering process areas Staged and continuous representations Generic practices CMMI supports a layered implementation approach to support the staged introduction of significant life-cycle performance improvements that align with changes in organizational culture. Foundation SDLC Process-Improvement Life-Cycle Infrastructure Life-CyclePM(CMMI)-007.000 Slide 41
    • CMMI Approach to Life Cycle Implementation Foundation SDLC Focuses on getting the technical work done at the project level Includes Engineering and Project Management process areas Generally the starting point for most implementations Process-Improvement Life-Cycle Focuses on standardizing and improving the operational processes at the organizational level Introduces the concepts of organization-standard processes and defined processes Provides the path to high performance infrastructure and statistical process control Infrastructure Life-Cycle Furnishes key capabilities essential to the Foundation and Process- Improvement life-cycles Tightly interwoven with the Process-Improvement Life-Cycle in the statistical process control domainPM(CMMI)-007.000 Slide 42
    • Discussion?PM(CMMI)-007.000 Slide 43