Agile and CMMI : Disciplined Agile with Process Optimization

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

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

Quest 2015 Webinar Series:

Measurement within the CMMI

Two Branches of Software Engineering

SCRUM and the CMMI. The Wolf and the Lamb shall Feed Together

CMMI SM Model Measurement and Analysis

Boldly Going Where Few Have Gone Before SCAMPI SM C Appraisal Using the CMMI for Acquisition

How to Develop Highly Useable CMMI Documentation

CAPABILITY MATURITY MODEL INTEGRATION - CMMI. Software Engineering Competence Center

AGILE FOR NON-IT PRACTITIONERS

The Agile Performance Holarchy

Agile Beyond Software

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

AGILE FOR NON-IT PRACTITIONERS

Certified Scrum Master

TSP SM as the Next Step for Scrum Teams

This resource is associated with the following paper: Assessing the maturity of software testing services using CMMI-SVC: an industrial case study

Software Development*

CMMI A-Specification. Version 1.7. November, For CMMI Version 1.2. This document is controlled by the CMMI Steering Group.

An Introduction to Scrum. Mountain Goat Software, LLC

An Overview of Software Process

Scrum Testing: A Beginner s Guide

SCRUM - LESSONS FROM THE TRENCHES

Gary Natwick Harris Corporation

An Agile Projects Introduction Course #PMCurrent-1

CMMI for Technical Staff

Best Practices for Enterprise Agile Transformation

Agile Essentials Track: Business Services

Metodologías Agiles en E///

Course Title: Planning and Managing Agile Projects

We use Agile. What does that mean?

Software Engineering. Lecture 7: CMMI

Update Observations of the Relationships between CMMI and ISO 9001:2000

This course will explore how your projects can easily and successfully make the transition to an effective Agile environment.

Changes to the SCAMPI Methodology and How to Prepare for a SCAMPI Appraisal

Driving Business Results With Scrum

Understanding Model Representations and Levels: What Do They Mean?

Management by Consensus

Comparing Scrum And CMMI

Systems Modernization Strategies August 2017

The CMMI Value Proposition

How to Prepare for and Implement a Project Using Scrum

13. Team evolutionary developement

Nitty Gritty of QA Project Management. 11-Feb-09 Carol Perletz

Managing Projects of Chaotic and Unpredictable Behavior

A Practical Approach to Project Management in a Very Small Company

CMMI Version 1.2. Model Changes

Scrum, Creating Great Products & Critical Systems

What s New in V1.3. Judah Mogilensky Process Enhancement Partners, Inc.

Agile Methods. Introduction to Agile Methods by Pietari Kettunen

CMMI-DEV v1.3 Good? Bad? Ugly?

An Introduction to Scrum

Streamlining Processes and Appraisals

An Introduction to Scrum

agilesem an agile System Development Method at Siemens in CEE Eva Kišoňová, Ralph Miarka SW Quality Days Vienna January 2012

Dissatisfaction with the overheads involved in software design methods of the 1980s and 1990s led to the creation of agile methods.

CTC/ITC 310 Program Management California State University Dominguez Hills First Exam Answer Key November 20, 2018 Instructor: Howard Rosenthal

CSE Tue 11/06. Nadir Weibel

CSE Tue 11/06. Nadir Weibel

Agile Software Development. Stefan Balbo / Patrick Dolemieux

CMMI-DEV V1.3 CMMI for Development Version 1.3 Quick Reference Guide

SAFe in a Nutshell SCALED AGILE FRAMEWORK

Agile In Practice. Benjamin Booth Spring 2009

BA25-Managing the Agile Product Development Life Cycle

A Practical Guide to Implementing Levels 4 and 5

Debunking Agile Myths

KANBAN and TEAMWORK. Natural User Interface Technology to Business Erasmus Intensive Programme LAHTI

Vendor: GAQM. Exam Code: CSM-001. Exam Name: Certified Scrum Master (CSM) Version: Demo

Transforming Business Needs into Business Value. Path to Agility May 2013

Integrated Measurements for CMMI

AGILE Realities. Presenters: Chris Koo (Edward Jones) Blake Moyer (Edward Jones) Joan Romine (Boeing)

Criteria. Kanban. Scrum. Acceptance. Acceptance Criteria. Kanban. Scrum. Refinement. Agile Manifesto. Acceptance Test. Product Backlog.

Let's (Re)Learn about Agile and Scrum in One Hour!

Agile Methodologies. Introduction ISSSR 2013/2014

Chapter 01 - The Process The Process Application Process ACP Qualifications Scheduling Your Exam Rescheduling/Cancelling Fees

Leveraging Agile with audits. SF IIA Fall Seminar November 30, 2018

Lean IT Opex in the Clouds August 16, 2017 Sudhagar Raghavan

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

"Charting the Course to Your Success!" Planning and Managing Agile Projects Course Summary

Software Life Cycles and Configuration Management

Agile Program Management in Action

Scrum er ikke en religion

Get to CMMI ML3 Using Agile Development Processes for Large Projects. Catherine Clark, Business Solutions Architect

TSP*-Agile Blend: The Gun Smoke Clears

CMMI Today The Current State

AGILE EXECUTIVE OVERVIEW

Microsoft Exam Delivering Continuous Value with Visual Studio 2012 Application Lifecycle Management Version: 9.0

Get to CMMI ML3 Using Agile Development Processes for Large Projects. Catherine Clark, Business Solutions Architect

Bruce Boyd Associate Technical Boeing Company. Louis, Missouri. Judy Naclerio Systems Engineering

Shrinking the Elephant: If Implementing CMMI Practices Looks Like More Effort than it s Worth, Let s Look Again. Sam Fogle ACE Guides, LLC

Presented by Kiefer Consulting, Inc. 10/31/2016 1

Russell Pannone February 10, 2009

FULLY DISTRIBUTED SCRUM: REPLICATING LOCAL PRODUCTIVITY AND QUALITY WITH OFFSHORE TEAMS

Can Your Proposal Process Be More Agile?

CMMI for Services (CMMI -SVC) Process Areas

ignoring agile, size and frequency, sales, , 280

Requirements. Mountain Goat Software, LLC. Scrum in 100 words. Mountain Goat Software, LLC

EXIN Agile Scrum Product Owner

Top 10 Signs You're Ready (or Not)

Transcription:

www.agiledigm.com Agile and CMMI : Disciplined Agile with Process Optimization Kent Aaron Johnson 02 April 2014 Long Beach, California, USA CMMI is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University. 1

Copyright Notices The material in this presentation is copyrighted by AgileDigm, Incorporated. For further information, please contact: AgileDigm, Inc. 11 Twelve Oaks Trail Ormond Beach, Florida 32174 U.S.A. Phone: +1.386.673.1384 Email: info@agiledigm.com Terms like these are often used in the following material: CMMI SCAMPI sm and SCAMPI Lead Appraiser sm The definition of Scrum and related text comes from The Scrum Guide by Jeff Sutherland and Ken Schwaber. References to other sources are shown on the slides. CMMI is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University. SM SCAMPI and SCAMPI Lead Appraiser are service marks of Carnegie Mellon University. 2

Kent A. Johnson Chief Technical Officer of AgileDigm, Incorporated AgileDigm is an international consulting company that was formed in 2001 to support an agile paradigm for process improvement uniquely partnering with Scrum Inc. and CMMI/Software Engineering Institute. Certified ScrumMaster, Professional Scrum Master I, CMMI Institute-certified SCAMPI High Maturity Lead Appraiser and certified CMMI instructor. Has helped clients in over 25 countries to improve their ability to develop products - including one of the world s only Agile Organizations to achieve CMMI Maturity Level 5. Co-author of Interpreting the CMMI: A Process Improvement Approach, Second Edition, Auerbach (2008) and numerous peer reviewed papers on Agile and CMMI. kent.johnson@agiledigm.com 3

Basis of this Presentation Our work with over 20 Agile CMMI organizations. Our experience with a full set of Agile Methods Our years of experience with CMMI 4

Agile Manifesto www.agilemanifesto.org We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. Don't misread as there is no value to the things on the right. 5 5 5 CSM v10.21 Jeff Sutherland 1993-2009

Agile Methods Agile Methods include: Scrum Kanban extreme Programming Lean Software Development Feature-Driven Development Test-Driven Development Some of the sources 6

Lean as an Example The seven principles of Lean Software Development are: 1. Eliminate Waste 2. Build Quality In 3. Create Knowledge 4. Defer Commitment 5. Deliver Fast 6. Respect People 7. Optimize the Whole Implementing Lean Software Development, Mary and Tom Poppendieck, Addison Wesley, 2007 7

CMMI for Development, v1.3 CMMI has three constellations Development Acquisition Services The concepts are the same in all constellations In this seminar, we will focus on CMMI for Development. CMMI for Development covers development & maintenance of products & services 8

Process Areas by Maturity Level Maturity Level (ML) Process Area (PA) 5 Optimizing Organizational Performance Management Causal Analysis and Resolution 4 Quantitatively Managed Organizational Process Performance Quantitative Project Management 3 Defined Requirements Development Technical Solution Product Integration Verification Decision Analysis and Resolution Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management 2 Managed Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management 1 Initial Reference Slide CMMI for Development, v1.3 9

Simple Comparison CMMI A structured collection of best practices What you should do Focus is on improving product quality through process performance Agile Methods A set of methods that contain detailed steps How you should do it Focus is on increasing customer satisfaction 10

Planning Misconceptions Agile Methods Planning is not required (misconception) Planning is done incrementally (reality) CMMI Everything must be planned to the smallest detail (misconception) Some examples in CMMI discuss overall planning, however incremental planning and replanning are both recognized (reality) 11

Requirements Misconceptions Agile Methods Requirements can be changed at any time and changes are not controlled (misconception) Requirements are constrained within an increment (reality) CMMI Requirements must be completely defined and put into a matrix before you start and cannot change without missed schedules and cost overruns (misconception) Processes exist for managing requirements changes. (reality) 12

Culture Misconceptions CMMI organizations are bureaucratic and inflexible. (misconception) CMMI organizations are as flexible as the people in the organization. CMMI supports organizational change and improvement (reality) Agile organizations are extremely flexible because they have no real rules. (misconception) Agile organizations are as flexible as the people in the organization. Agile methods support change particularly within the team. (reality) 13

Experience A: Initial Agile & CMMI Organizations that introduce Agile and CMMI together. Examples include US defense, Healthcare contractors, commercial consulting companies, and product companies. They had either a corporate directive, client directive, or government directive to embrace CMMI. Initial goal: CMMI Level Two or Three Used Agile to focus on the Common Failures with CMMI (next slide). 14

Common Failures with CMMI 1. Too heavy a process definition 2. Lack of management support 3. Different understandings of mission and goals 4. Process adoption not well planned 5. Process and procedure definition forced on staff 6. Pilots of process too limited Jeff Sutherland and Kent Johnson 2010 15

Agile Helps CMMI with Clear customer focus Lightweight process definition Explicit team roles Support from developers 16

Scrum as an Example Example The Sprint 17

Roles in Scrum Example Defines the features, decides on release date and content Prioritizes features according to market value Can change features and priority every Sprint Accepts or rejects work results Ensures that the team is fully functional and productive Enables close cooperation across team & removes barriers Shields the team from external interferences Ensures that the process is followed. Invited to daily scrum, iteration review and planning meetings Cross-functional, seven plus/minus two members Selects the iteration goal and specifies work results Has the right to do everything within the boundaries of the project guidelines to reach the iteration goal Organizes itself and its work Demos work results to the Product Owner Scrum and CMMI Level 5: the magic potion for Code Warriors, Kent Johnson & Carsten Ruseng Jakobsen, Presentation at ESEPG Conference Amsterdam June 2007 18

Example Scrum in a Project s Lifecycle CMMI: Project Planning SG1: Establish Estimates SG2: Develop a Project Plan SG3: Obtain Commitment to the Plan CMMI: Project Monitor and Control SG1: Monitor Project Against Plan SG2: Manage Corrective Actions to Closure Definition & Planning Implementation Launch & Closeout Sprints Scrum: Create Product Backlog Define backlog items Establish Estimates Prioritize backlog items Identify dependencies Scrum: Create Sprint Backlog Monitor progress against sprint plan Remove impediments Scrum and CMMI Level 5: the magic potion for Code Warriors, Kent Johnson & Carsten Ruseng Jakobsen, Presentation at ESEPG Conference Amsterdam June 2007 19

Experience B: Failed Scrum Back to Life This experience comes from organizations that introduced Scrum across their projects. They considered it a failure because: Projects did not get the great benefits that they had heard about. Many of the projects reverted to doing ScrumBut. (We are doing Scrum but <pick from the list> no daily meetings, no product owner, no burndown, etc.> Initial goal: Use Real Scrum Used CMMI principles to focus on the Common Failures with Scrum. 20

Common Failures with Scrum 1. Misunderstanding what Scrum is (and is not) 2. Software not tested at end of sprint (definition of Done) 3. Backlog not ready at beginning of sprint (definition of Ready) 4. Lack of facilitation or bad facilitation 5. Lack of management support 6. Lack of client, customer, or end user support Jeff Sutherland and Kent Johnson 2010 21

CMMI Helps Agile with Disciplined consistent performance Defined organizational processes Project tailoring guidelines Staff training 22

Scrum Checklist Examples Right Level of Process (1/2) Practical processes and work aids contain enough information to be useful. 23

Scrum Status Report Example Right Level of Process (2/2) Anvil Project Weekly Status Report User Stories Completed As a User, I want to be able to use my anvil 24/7 As a User (all personas), I want to be able to carry my anvil Lessons Learned during the sprint Breaking down stories into 20 points or less is a big help Impediments (not closed during week) Testers assigned to multiple projects Risks User environment may not be ready on time for final acceptance testing. 24 24

Scrum Board To do Ongoing Done Scrum Board provides visibility of workflow meeting point for team prioritized list of all work-items Used to generate burndown chart Supported by good definitions of Ready and Done Colors may indicate stories, features, tasks, bugs, etc. Can be customized to match the team s workflow 25

Kanban no limit 6 4 10 no limit Backlog Ready Coding Testing Approval Done WIP Limit Work Flow State Three principles 1. Visualize the Workflow 2. Limit Work in Progress (WIP) 3. Measure the Cycle Time 26

Experience C: CMMI Maturity Level 5 Scrum This experience comes from organization that was CMMI Maturity Level 5. The organization determined that their processes were too heavy weight. They embraced Lean Principles and determined that Scrum was the best approach for them. Goal: Become lean while maintaining a high maturity CMMI rating They introduced Scrum across all their projects in a disciplined way. 27

Success Story Systematic A/S is a success story using Agile Methods in a CMMI Implementation. Addresses their business objectives doubled productivity cut defects by 40% on top of years of other CMM and CMMI improvements. Reappraised at CMMI Maturity Level 5 in May 2012 third time at Level 5! Scrum and CMMI Going from Good to Great, Carsten Ruseng Jakobsen and Jeff Sutherland, Agile 2009 Conference Chicago, USA August 2009 28

Flowdown of Business Objectives (1 of 2) Business Objective Shorten Time to Market Quality and Process Performance Objective (QPPO) Statistically Managed Process Decrease final integration time by 27% Continuous Integration High Maturity (HM) Example 29

HM Example Flowdown of Business Objectives (2 of 2) Measure related to Continuous Integration Source: Mature Agile with a Twist of CMMI, Carsten Ruseng Jakobsen and Kent Aaron Johnson, Agile 2008 Conference Toronto, Canada, August 2008. 30

Summary Our Agile CMMI Presentation is based on What we have learned from working with over 20+ organizations in combining Agile and CMMI Successful organizations have combined Agile and CMMI to obtain measurable business objectives Time for Questions? 31

Contact Information and Acronyms The presentation material in this seminar is copyrighted by AgileDigm, Incorporated. For further information, please contact: Kent A. Johnson Chief Technical Officer AgileDigm, Inc. 11 Twelve Oaks Trail Ormond Beach, FL 32174 USA kent.johnson@agiledigm.com www.agiledigm.com Acronyms: CMM Capability Maturity Model CMMI Capability Maturity Model Integration HM High Maturity WIP Work in Progress 32