Transcript Cursus CMMI
Capability Maturity Model Integration (CMMI) Universiteit van Amsterdam Jan Jaap Cannegieter Rini van Solingen Objectives of this lecture Basic knowledge of CMMI Basic insight in Software Process Improvement Understanding the value of CMMI Share experiences Have fun SYSQA B.V. Operational Testing Improvement Benchmarking Assessments / quick scans Tools Support Coördination Execution Tactical Requirements Quality assurance Strategic Auditing Edit quality systems Requirements development Requirements management Information analysis COTS selection Edit business case SPI Assessments / quick scans QA in projects Controlling outsourcing Edit quality plan Inspections / reviews Evaluations Products Projects Processes Suppliers Mediation Education and training Implementing: CMMI, ITIL, ASL, BISL, RUP, SDM, DSDM, Agile, PRINCE 2, PROQA LogicaCMG Founded 1969 Founded 1964 Floated in 1983 Floated in 1995 30 December 2002 Merger between Logica and CMG Founded in 1968 Floated in 1988 19 September 2005 Announcement of offer for Unilog Founded 1969 Floated in 1985 21 August 2006 Announcement of offer for WM-data A large international company in ICT-services with a leading position in Europe About 40.000 employees Active in 41 countries Euro 4.5 billion revenue Large porfolio for all application domains Over 40 years of experience in ICT-services Software Boeing 747 • 8.000.000 lines of software • Equals about 250.000 pages • Equals 2.000 CMMI books Every defect can be fatal! • • • • • • Ariane-missile: 1 Billion Euro Radar Guam: 255 Casualties Altitude meters Boeing 757: 189 Casualties Deutsche Telecom: 50 million Euro Postbank - 55.000 Double withdrawals ..... Software Characteristics Intangible Not physical (no weight, volume, .....) Not measurable (difficult to test) No production, only development Flexible Software often contains defects Very young engineering discipline Software ‘rules’ still unknown Software Problems Typical visible problems – low productivity – low predictability (budget and planning) – low quality – high maintenance costs (>70%) Typical underlying problems – little experience with used technology – insufficient understanding of processes – ineffective process monitoring – ad-hoc management Software Successes – Best in Class 85% of projects within budget and planning 1 Defect per 100.000 lines of code 50 times reduction failures after release 50% reduction of Time to Market with 90% reuse Many companies develop software according to CMMI level 5 What is Quality? “The extend in which something is capable to be used for a dedicated purpose” (Van Dale Dictionary) Views on Quality Value-view Productview Transced ent-view Quality Processview User-view Bron: Garvin, D., Sloan Management Review, 1984 Therefore: Improve! Software everywhere in society Software in life critical systems Users demand predictable and reliable software development Software development without problems is possible Continuous improvement and measurement is a prerequisite It’s time for software engineering! Starting point CMMI “All models are wrong, but some of them are useful” History of CMMI Department of Defense Software Engineering Institute 1987 – 1991: Capability Maturity Model for Software 90’s: much more CMM’s 2000 – 2002: CMMI: integrated model for SW, SE, IPPD en SS 2006: CMMI framework and CMMI DEV 2007: CMMI ACQ and CMMI SVC Component 1: Process Area’s Grouped activities – Requirements management – Project planning – Risk Management – Validation Contains specific goals and practices Example 1: Requirements Management 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 Example 2: Risk Management SG 1 Prepare for Risk Management SP 1.1 Determine Risk Sources and Categories SP 1.2 Define Risk Parameters SP 1.3 Establish a Risk Management Strategy SG 2 Identify and Analyze Risks SP 2.1 Identify Risks SP 2.2 Evaluate, Categorize, and Prioritize Risks SG 3 Mitigate Risks SP 3.1 Develop Risk Mitigation Plans SP 3.2 Implement Risk Mitigation Plans Process Areas Process Management Organizational process focus Organizational process definition Organizational training Organizational process performance Organizational innovation and development Engineering Requirements management Requirements development Technical solution Product integration Verification Validation Project Management Project planning Project monitoring and control Supplier agreement management Risk management Integrated teaming Quantitative project management Support Configuration management Process and product quality assurance Measurement and analysis Decision analysis and resolution Causal analysis and resolution Organizational environment for integr. Component 2: generic components Level 2 Institutionalize a Managed Process - Establish an Organizational Policy - Plan the Process - Provide Resources - Assign responsibility - Train People - Management Configurations - Monitor and Control the Process - Objectively Evaluate Adherence - Review Status with Higher Level Management Component 2: generic components Level 3 – Institutionalize a defined process – Establish a Defined Process – Collect Improvement Information Level 4 – Institutionalize a quantitavely managed process – Establish Quatitative Objectives for the Process – Stabilize Subprocess Performance Level 5 – Institutionalize a Optimizing Process – Ensure Continuous Process Improvement – Correct Root Causes for Problems CMMI – Staged Maturity levels Optimizing Organizational Innovation and Deployment Causal Analysis and Resolution Continuous improvement Quantitatively managed Predictable process Defined Standard process Managed Disciplined process Initial Organizational Process Performance Quantitative Project Management Requirements development Technical Solution Product Integration Verification Validation Org. Process Focus Org. Process Definition Organizational Training Integrated Project Management Risk Management Integrated Teaming Integrated Supplier Management Decision Analysis and Resolution Org. Environment for Integration Requirements management Measurement and Analysis Project Planning Process and Product Quality Assurance Project Monitoring and Control Supplier Agreement Management Configuration Management CMMI: Continuous 5 4 3 2 1 0 RM PP PM&C SAM M&A QA CM … CMMI Continuous GD/GP N5 GD/GP N5 GD/GP N5 GD/GP N4 GD/GP N4 GD/GP N4 GD/GP N3 GD/GP N3 GD/GP N3 GD/GP N2 GD/GP N2 GD/GP N2 SD/SP SD/SP SD/SP Procesgebied x Procesgebied y Procesgebied z Staged versus continuous Staged: maturity levels Process area 1 Process area 2 Specific goals Specific practices Process area n Generic goals Continuous: capability levels Generic practices The difference shown in an other way Process area Measurement and analysis You can’t control what you can’t measure Common questions: 1. What is the size of your system? 2. How long do you need to properly develop a feature of a certain size? 3. How long will a change request take to be implemented? 4. What is the chance that your product fails? 5. Where do you need to improve most? 6. Will your end-user be happy? 7. How many defects do you (probably) release to your customer? Measurement & Analysis – PA - SG – SG 1 Align Measurement and Analysis Activities • • • • SP 1.1 Establish Measurement Objectives SP 1.2 Specify Measures SP 1.3 Specify Data Collection and Storage Procedures SP 1.4 Specify Analysis Procedures – SG 2 Provide Measurement Results • • • • SP 2.1 Collect Measurement Data SP 2.2 Analyze Measurement Data SP 2.3 Store Data and Results SP 2.4 Communicate Results Measurement & Analysis – PA - GG – GG 2 Institutionalise 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 & 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 0 Sep-95 Aug-95 Jun-95 Jul-95 May-95 Apr-95 Mar-95 Feb-95 Jan-95 Dec-94 Nov-94 Oct-94 140 Sep-94 Aug-94 Jun-94 Jul-94 May-94 Apr-94 Mar-94 Feb-94 Quality: Example from Practice Number of Defects detected per Month 120 100 80 60 40 20 Minimum data per project Planned and spend time Planned and spend throughput time Planned and actual size Defects, administered in moments of injection and detection Software Process Improvement Need for change Perform assessment Set objectives Develop plan Make preparations Implement Changing attitude towards quality Assure and measure Perform evaluation Critical success factors SPI / CMMI Management commitment Involvement of all stakeholders Need for improvement Prioritization of actions Planning and control of the CMMI-implementation Clear goals Use change management Assurance of the new processes Communication with all stakeholders Sensitivity for organizational context Availability of resources What is the value of CMMI for companies? Source of best practice Standard in the IT-business Proven technology Saving money Saving time extention Higher quality Satisfied customers What is the value of CMMI for you? Source of best practices Secret guideline Mature professional Structuring your projects Being ahead of technical oriented professional Managing a business is improving it CMMI: the facts Best-practice maturity model for process improvement Category Average Low High Costs 20% 3% 87% Time 37% 2% 90% Productivity 62% 9% 255% Quality 50% 7% 132% Customer satisfaction 14% -4% 55% 4.7 : 1 2:01 27.7 : 1 ROI Investment: 2.500 per employee per year Change of failure: 58% More information http://www.sei.cmu.edu (official cmmi pages) http://cmmi.pagina.nl/ http://www.kleinecmmi.nl De kleine CMMI voor ontwikkeling - 978012117739 Software Process Improvement – 90 440 0698 3 Kwaliteitszorg in ICT-projecten – 90 440 0369 0 CMMI Guidelines of process integration and product improvement - 0321154967 CMMI® Distilled - 0201735008 Practical Insight into the CMMI - 1580536255 Software Process Improvement – 020117782x