Comparing Scrum And CMMI



Similar documents
Truly Managing a Project and Keeping Sane While Wrestling Elegantly With PMBOK, Scrum and CMMI (Together or Any Combination)

You Want to Use Scrum, You are Told to Use CMMI

CMMI KEY PROCESS AREAS

Agile Project Management with Scrum

CMMI: Specific Goals and Practices

Agile Project Management By Mark C. Layton

A Viable Systems Engineering Approach. Presented by: Dick Carlson

26 May 2010 CQAA Lunch & Learn Paul I. Pazderski (CSM/CSP, OD-CM, CSQA) spcinc13@yahoo.com Cell: AGILE THROUGH SCRUM

MKS Integrity & CMMI. July, 2007

Agile Overview. 30,000 perspective. Juha Salenius CSPO CSM PMI-ACP PMP SCGMIS Workshop January 23 rd, 2013

Manifesto for Agile Software Development

Distributed and Outsourced Software Engineering. The CMMI Model. Peter Kolb. Software Engineering

Agile Beyond The Team 1

Agile Development Overview

Towards a new approach of continuous process improvement based on CMMI and PMBOK

Software Quality Management II

CMMI for Development Introduction & Implementation Roadmap

werteorientierte Unternehmenskultur

Software Processes. Agile Methods

How to use CMMI to bring your project management process to the next level A CMMI Implementation Case Study

Agile Project Management: Adapting project behaviors to the software development environment

History of Agile Methods

Interpreting Capability Maturity Model Integration (CMMI ) for Service Organizations a Systems Engineering and Integration Services Example

Software Quality Standards and. from Ontological Point of View SMEF. Konstantina Georgieva

CMMI and Agile our experience revealed

Digital Transformation of the Enterprise for SMAC: Can Scrum help?

Scrum and CMMI Level 5: The Magic Potion for Code Warriors

Mature Agile with a twist of CMMI

Agile & the Declaration of Interdependence: A new approach to Process Improvement

Introduction to Agile Software Development. EECS 690 Agile Software Development

Agile Projects 7. Agile Project Management 21

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Agile QA s Revolutionary Impact on Project Management

Agile on huge banking mainframe legacy systems. Is it possible?

Capability Maturity Model Integration (CMMI SM ) Fundamentals

USCIS/SPAS: Product Backlog Items and User Stories 4/16/2015. Dr. Patrick McConnell

Project Management. 06 Requirements Management. IT M a t u r i t y. S e r v i c e s

What does it mean to be Agile. Marek Majchrzak, Andrzej Bednarz Wrocław,

CAPABILITY MATURITY MODEL INTEGRATION

ISO 9001/TL 9000 and CMMI Comparison

Custom Development Management and Resource Planning. Eric Halbur, Application Development Manager

Scrum and CMMI Level 5: The Magic Potion for Code Warriors

How CMMI contributes to Software Testing

Agile Project Management

CMMI and IBM Rational Unified Process

Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008

Capability Maturity Model Integrated (CMMI)

Software Process Improvement Software Business. Casper Lassenius

Neglecting Agile Principles and Practices: A Case Study

Agile Processes and Distributed Projects: Dream or Nightmare?

How To Understand The Limitations Of An Agile Software Development

Agile-Waterfall Hybrid Jessica LaGoy, MS, PMP

Agenda. CMMI, ITIL & ISO A Mutually Supportive Relationship

Software Engineering. Standardization of Software Processes. Lecturer: Giuseppe Santucci

Using Business Process Management Technology to Implement a CMMI-compliant Agile Software Development Approach

Agile Software Development

The Compelling Case For CMMI-SVC: CMMI-SVC, ITIL & ISO20000 demystified

An Integrated Model of ISO 9001:2000 and CMMI for ISO Registered Organizations

This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

Gothenburg 2015 Jan Marek com CA Technologies Introducing Agile development methodologies to Session S601 mainframe development teams

Scaling Scrum. Colin Bird & Rachel Davies Scrum Gathering London conchango

LEAN AGILE POCKET GUIDE

Realizing CMMI using Enterprise Architect and UML for Process Improvement

Processes in Software Development. Presented by Lars Yde, M.Sc., at Selected Topics in Software Development, DIKU spring semester 2008

A SURVEY OF ARTIFICIAL INTELLIGENCE TECHNIQUES FOR CAPABILITY MATURITY MODEL INTEGRATION (CMMI)

Case Study on Critical Success Factors of Running Scrum *

How can I be agile and still satisfy the auditors?

Agile Execution for and Beyond IT

Role of Agile Methodology in Software Development

How To Map Between Cmmi And Scrum

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson Jyväskylä

CMMI Asset Library: Maturity Level 2

STATE OF MICHIGAN SUITE

PMBOK? You Can Have Both! June 10, Presented by:

Capability Maturity Model Integration (CMMI)

Introduction to Agile Software Development

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

Integrating CMMI with COBIT and ITIL

Agile Project Management. What it is and what it isn t

MM Agile: SCRUM + Automotive SPICE. Electronics Infotainment & Telematics

Using Lean Six Sigma to Accelerate

Agile Development with C#

AGILE - QUICK GUIDE AGILE - PRIMER

wibas Team CMMI-ITIL IT Maturity S e r v i c e s

Development. Lecture 3

Is the CMMI¹ of Value for Flight Software? Dr. Gary M. Heiligman Space Department The Johns Hopkins University Applied Physics Laboratory

Software Development with Agile Methods

Agile Project Management

Scrum and CMMI Level 5: The Magic Potion for Code Warriors

The Design and Improvement of a Software Project Management System Based on CMMI

CMMI meets ITIL. Dr. Ute Streubel

Exploring CMMI-ISO ISO 9001:2000 Synergy when Developing a Process Improvement Strategy

An OWL Ontology for Representing the CMMI-SW Model

Software Requirements and Specification

Synergism of the CMMI Development and Services Constellations in a Hybrid Organization

Agile and ITIL And how they integrate. enterprise.bcs.org

Agile Software Development. Mohsen Afsharchi

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

Risikominimering I IKT-prosjekter - experiences from the Danish Government

Transcription:

Comparing Scrum And CMMI How Can They Work Together Neil Potter The Process Group help@processgroup.com 1

Agenda Definition of Scrum Agile Principles Definition of CMMI Similarities and Differences CMMI and Scrum Mapping How About Other Components of Level 2? How About Level 3? Summary Full comparison at: http:///pgpostmar09.pdf 2

Definition of Scrum Scrum is a pre-defined development lifecycle based on Agile principles. Team defined phases Potentially Deliver Potentially Deliver 1 day 1 day Product Backlog Release Planning Sprint Planning Analysis Design Code Test Sprint Review Sprint Retrospective Review Backlog Sprint Planning Analysis Design Code Test Sprint Review Sprint Retrospective Review Backlog Sprint Planning Analysis 2-4 week Sprint 2-4 week Sprint 3

Agile Principles - 1 Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. CMMI compatible Source: http://agilemanifesto.org/ 4

Agile Principles - 2 The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Continuous attention to technical excellence and good design enhances agility. Simplicity -- the art of maximizing the amount of work not done--is essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. 5

Model Source: http://www.sei.cmu.edu/cmmi/tools/ Definition of CMMI v1.2 CMMI is a collection of practices that an organization (software, hardware and IT) can adopt to improve its performance. Maturity Level 2 Process Areas focus on change and project management. Maturity Level 3 focuses on engineering skills, advanced project management and organizational learning. 6

Visibility Into the Process Level 1 IN OUT Process is an amorphous entity Visibility into the project s process is limited Difficult to establish the status of the project s progress and activities 7

Visibility Into the Process Level 2 Major process phases IN OUT Customer requirements and work products are controlled Basic project management practices have been established Management controls allow visibility into the project on defined occasions Management reacts to problems as they occur 8

Visibility Into the Process Level 3 IN OUT Tasks in the project s defined process are visible Accurate and rapid status updates are available Management proactively prepares for risks that may arise 9

Similarities and Differences No In Scrum? Some requirements Some design Coding Some test Some lessons learned Level 3 coverage - very dependent on how YOU define the phases Approx. 47% coverage of Level 2 Most Requirements Management Most Project Planning Most Project Monitoring/Control Most Measurement Analysis (effort and progress) 10

CMMI and Scrum Mapping 11

Requirements Management REQM CMMI Practice Scrum Practice SP 1.1 Develop an understanding with the requirements providers on the meaning of the requirements. SP 1.2 Obtain commitment to the requirements from the project participants. SP 1.3 Manage changes to the requirements as they evolve during the project. SP 1.5 Identify inconsistencies between the project plans and work products and the requirements. Review of Product Backlog (requirements) with Product Owner and team. Release Planning and Sprint Planning sessions that seek team member commitment. Add requirements changes to the Product Backlog. Manage changes in the next Sprint Planning meeting. Daily Standup Meeting to identify issues. Release planning and Sprint Planning sessions to address inconsistencies. Sprint Burndown chart that tracks effort remaining. Release Burndown chart that tracks story points that have been completed. This shows how much of the product functionality is left to complete. No traceability in Scrum [SP 1.4 Maintain bidirectional traceability among the requirements and work products] 12

Project Planning PP CMMI Practice Scrum Practice SP 1.1 Establish a top-level work breakdown structure (WBS) to estimate the scope of the project. Backlog). SP 1.2 Establish and maintain estimates of the attributes of the work products and tasks. SP 1.3 Define the project life-cycle phases upon which to scope the planning effort. SP 1.4 Estimate the project effort and cost for the work products and tasks based on estimation rationale. SP 2.1 Establish and maintain the project s budget and schedule. SP 2.4 Plan for necessary resources to perform the project. SP 2.6 Plan the involvement of identified stakeholders. SP 3.2 Reconcile the project plan to reflect available and estimated resources. The standard tasks used in a Scrum process combined with specific project tasks (Scrum Story Points, used to estimate the difficulty (or relative size) of a Story (requirement). The Scrum process. Scrum Ideal Time estimate (similar to billable hours or Full-time Equivalents). Scrum estimates (in Ideal Time). Estimates of what work will be in each release. Sprint Backlog. Project Taskboard. Scrum estimates in Ideal Time Release Plan, Sprint Backlog and assignments. Scrum process roles (including team, Scrum Master, Product Owner). [Note: The stakeholders listed in Scrum might not be the complete list of stakeholders for the project, e.g., customers, other impacted teams.] Sprint Planning meeting. Daily Scrum meeting. 13

Project Monitoring and Control PMC CMMI Practice Scrum Practice SP 1.1 Monitor the actual values of the project planning parameters against the project plan. Sprint Burndown chart that tracks effort remaining. Release Burndown chart that tracks completed story points. This shows how much of the product functionality is left to complete. Project Task Board used to track stories (requirements) that are done, in progress, or ones SP 1.2 Monitor commitments against those identified in the project plan. SP 1.6 Periodically review the project's progress, performance, and issues. SP 2.3 Manage corrective actions to closure. No risk assessment / tracking in Scrum [SP 1.3 Monitor risks against those identified in the project plan] that need verification. Discussions on team commitments at the: Daily Scrum meeting. Sprint Review meeting. Sprint Burndown chart that tracks effort remaining. Release Burndown chart that tracks Story Points that have been completed. This shows how much of the product functionality is left to complete. Daily Scrum meeting. Sprint Review meeting. Retrospectives. Tracking of actions from: Daily Scrum meeting. Sprint Review meeting. [Note: This assumes that teams will track (and not lose) actions.] 14

Burndown Charts Implements PMC sp1.1 Monitor the actual values of the project planning parameters against the project plan. 15

Measurement and Analysis SP 1.2 Specify measures to address the measurement objectives. SP 1.4 Specify how measurement data will be analyzed and reported. SP 2.1 Obtain specified measurement data. SP 2.2 Analyze and interpret measurement data. SP 2.4 Report results of measurement and analysis activities to all relevant stakeholders. Sprint Burndown chart that tracks effort remaining. Release Burndown chart that tracks story points that have been completed. This shows how much of the product functionality is left to complete. [Note: These two measures could be used to track the progress of declared project objectives, such as On time, and On budget. ] The Scrum process does describe the purpose and use the Sprint and Release Burndown charts. [Note: CMMI expects clearly defined analysis]. Daily Scrum meeting where Sprint and Release Burndown data are collected. Daily Scrum meeting where Sprint and Release Burndown data are analyzed. Daily Scrum meeting where Sprint and Release Burndown charts are reviewed. [Note: Not all interested stakeholders will necessarily be at the Scrum meeting.] 16

How About the Other Components of Level 2? Configuration Management (CM): CM is not specifically called out in Scrum. However, in an Agile environment it is pretty easy to add a layer of CM to protect your work. Product and Process Quality Assurance (PPQA): Some basic PPQA activities are being done naturally when the Scrum Master checks that the Scrum process is being followed. Scrum does not specifically call out a level of objective process and product check, nor does it state that particular standards or processes should be defined and used. Supplier Agreement Management (SAM): Not included in Scrum. 17

Generic Practices? Approximately half of the Level 2 GPs of REQM, PP, PMC and MA are implemented by Scrum. GP 2.2 GP 2.3 GP 2.4 GP 2.6 GP 2.8 Establish and maintain the plan for performing the REQM/PP/PMC/MA process. Provide adequate resources for performing the REQM/PP/PMC/MA process, developing the work products, and providing the services of the process. Assign responsibility and authority for performing the process, developing the work products, and providing the services of the REQM/PP/PMC/MA process. Place designated work products of the REQM/PP/PMC/MA process under appropriate levels of control. Monitor and control the REQM/PP/PMC/MA process against the plan for performing the process and take appropriate corrective action. The Scrum lifecycle definition and the milestones to perform Scrum. The resources and schedule time allocated to perform Scrum planning, monitoring and requirements activities. The resource assignments allocated to perform Scrum planning, monitoring and requirements activities. [Note: Scrum does not explicitly require CM to be done. However, this can be performed using a digital camera, backed up drive, or share drive with versioning and controls turned on.] Scrum Master monitoring that the steps of Scrum are followed. 18

How About Level 3? The following Level 3 components are not readily implemented by Scrum without additional work: Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management Decision Analysis and Resolution Engineering PAs (e.g., RD, TS, PI, VER, VAL) Generic Goal 3 (i.e., using an organization-wide and tailored process with measurements and lessons-learned) 19

Scrum + - s + 2-4 week cycles creates team momentum, and early feedback on progress and technical solutions. + Scrum process can be learned and used in less than 2 days. Speed can be mistaken for progress: There is no Get good requirements phase, only Get a list of 1-liners and prioritize. (Although some teams do more than that.) There is no architecture / analysis phase, so you could implement yourself into a corner. This is fixable by making the focus of each Sprint different. Applying Scrum to large teams and systems takes extra work. e.g., System definition, integration and coordination. 90% Analysis, 10% Code 80% Analysis, 20% Code 70% Analysis, 30% Code 60% Analysis, 40% Code 50% Analysis, 50% Code 20

Summary Scrum is a good implementation for many of the practices in Level 2. A group can easily use Scrum and CMMI together. All the remaining practices in Levels 2 and 3 can be implemented while using Scrum. An organization at Level 2 or 3 could adopt Scrum as an additional lifecycle choice. 21

References 1. Implementing Scrum (Agile) and CMMI Together. Process Group Post newsletter, March 2009. http:///pgpostmar09.pdf 2. Scrum definition: http://www.scrumalliance.org/ 3. SEI / CMU. CMMI: Guidelines for Process Integration and Product Improvement. Boston: Addison-Wesley, 2003. 4. Scrum and CMMI Level 5: The Magic Potion for Code Warriors, by Jeff Sutherland, Carsten Ruseng Jakobsen, and Kent Johnson. http://jeffsutherland.com/scrum/sutherlandscrumcmmihicss2008.pdf 5. Potter, N., Sakry, M., Making Process Improvement Work - A Concise Action Guide for Software Managers and Practitioners, Addison-Wesley, 2002. 22