You are on page 1of 29

2010

Empowering People through Process

Agile/Scrum Development
Using the CMMI Framework

NASA IT Summit
18 Aug 2010
Kent Aaron Johnson
CTO of AgileDigm, Inc.
CMMI is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University.

1
Copyright Notices
The presentation material in this seminar is copyrighted by
AgileDigm, Incorporated, 2010. 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
SCAMPIsm and SCAMPI Lead Appraisersm

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.

2010 2
Agile/Scrum Development Using the CMMI Framework
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.
Certified ScrumMaster, SEI-certified SCAMPI High Maturity
Lead Appraiser, and an SEI-authorized CMMI instructor.
Has helped clients in over 25 countries to improve their ability
to develop products - including one of the worlds 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.

2010 33
kent.johnson@agiledigm.com
Agile/Scrum Development Using the CMMI Framework
Agile/Scrum + CMMI
What is in it for me?
Getting to Hyperproductive Scrum
Hyperproductive Scrum is really fun!!
More time to surf
What is in it for my enterprise?
Getting to Hyperproductive Scrum
Money for nothing
Change for free
Leads to developing products quickly
Leads to developing the right products
Obtaining a CMMI level rating for organizational
recognition Jeff Sutherland and Kent Johnson 2010

2010 4
Agile/Scrum Development Using the CMMI Framework
One Comparison
Scrum Primer
22 pages double side 8 by 11

CMMI 2nd Edition


676 page hardback book

Interpreting the CMMI


404 page hardback book

2010 5
Agile/Scrum Development Using the CMMI Framework
CMMI Does Not Require Waterfall
What the CMMI is not:
CMMI is not Waterfall.
CMMI does not require any particular lifecycle.

2010 6
Agile/Scrum Development Using the CMMI Framework
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.


2010 77 CSM v10.21 Jeff Sutherland 1993-2009
Agile/Scrum Development Using the CMMI Framework
Agile Methods
Agile Methods includes:
Scrum
eXtreme Programming
Lean Software Development
Feature-Driven Development
Test-Driven Development
and many others
Lots of available books

2010 8
Agile/Scrum Development Using the CMMI Framework
What is Scrum? (1/2)
Scrum is an iterative incremental process of
software development commonly used with
agile software development.
Despite the fact that "Scrum" is not an
acronym, some companies implementing the
process have been known to adhere to an all
capital letter expression of the word, i.e.
SCRUM. This may be due to one of Ken
Schwaber's early papers capitalizing SCRUM
in the title.

2010 9
Agile/Scrum Development Using the CMMI Framework
What is Scrum? (2/2)
Sprint
backlog
Product Backlog Backlog
items selected
for release S3 backlog

S2 backlog
Product
S1 backlog
Backlog
Sprints in this release
Sprint Sprint
1 Sprint
2 3
Product Daily
Owner Scrum
Team Retrospective

Review
Scrum Agenda
Master Agenda
Burndown
Agenda
Sprint Product
backlog (increment)
Ready Done
http://demo.callis.dk/scrum 2010
Agile/Scrum Development Using the CMMI Framework
checklist 10 checklist
Realized Benefits from Scrum
In Jeff Sutherlands, Hyperproductive Distributed Scrum
Teams presentation Google TechTalk, July 2008 he
documented:
Excellent Scrum annual revenue up 400%
Patient Keeper
Others in Scandinavia, I cannot name
Good Scrum revenues up 300%
Companies in Scandinavia, I cannot name
Pretty Good Scrum revenues up 150-200%
Google 160%
Systematic Software Engineering 200% (pre 2008)
ScrumBut revenues up 0-35%
Yahoo, most companies

2010 11
Agile/Scrum Development Using the CMMI Framework
Scrum and XP
The first Scrum used all the XP engineering
practices, set-based concurrent engineering,
and viewed software development as
maintenance, not manufacturing.
Most high performance teams use Scrum
and XP together.
It is hard to get a Scrum with extreme
velocity without XP engineering practices.
You cannot scale XP without Scrum.
Jeff Sutherland and Kent Johnson 2010

2010 12
Agile/Scrum Development Using the CMMI Framework
XP as an Example
eXtreme Programming covers
Programming (test-first programming, automated
unit tests, Simple Design (YAGNI), Refactoring)
Planning (Planning game, frequent/small Releases,
short iterations, flexible plans, 40 hour week)
Customer (Dedicated, Onsite, Automated
Acceptance Tests, Customer Steers)
Pair (Pair Programming, Open Workspace, Collective
Ownership, Integration Machine)
Team (Continuous Integration, Coding Standard,

XP
Metaphor)

2010 13
Agile/Scrum Development Using the CMMI Framework
Simple Comparison
CMMI Agile/Scrum
A structured collection of A set of rules that
best practices constrains behavior
What you should do How you should do it
Focus is on improving Focus is on increasing
product quality through customer satisfaction
process performance

2010 14
Agile/Scrum Development Using the CMMI Framework
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

2010 15
Agile/Scrum Development Using the CMMI Framework
Key CMMI Attributes
1. Overall Planning and Tracking
2. Training
3. Risk Management
4. Organizational Learning
5. Organizational Visibility
6. Measurement
7. Institutionalization

2010 16
Agile/Scrum Development Using the CMMI Framework
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
2010 17
Agile/Scrum Development Using the CMMI Framework
Scrum Checklist Examples

Right Level of Process (1/2)


Practical processes and work aids contain
enough information to be useful.

2010 18
Agile/Scrum Development Using the CMMI Framework
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
.
2010 19
Agile/Scrum Development Using the CMMI Framework
Scrum support for ML 3
Scrum (and XP)
CMMI ML 3
simple set of rules
defined process
product backlog
managed requirements
defined roles
project management
self organizing team
XP engineering
practices technical solution
continuous integration
product integration

2010 20
Agile/Scrum Development Using the CMMI Framework
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 2009
Scrum and CMMI Going from Good to Great, Carsten Ruseng Jakobsen and Jeff Sutherland, Agile
2009 Conference Chicago, USA August 2009

2010 21
Agile/Scrum Development Using the CMMI Framework
Systematic A/S Papers
Systematic A/S is a Danish company
There improvement story is covered in detail in
three published papers:
Scrum and CMMI Level 5: the magic potion for Code
Warriors
Jeff Sutherland, Kent Johnson, & Carsten Jakobsen
Mature Agile with a Twist of CMMI
Carsten Jakobsen and Kent Johnson
Scrum and CMMI: Going from Good to Great
Carsten Jakobsen and Jeff Sutherland

2010 22
Agile/Scrum Development Using the CMMI Framework
Conclusion
Agile/Scrum + CMMI
provide synergy
support going from Good Scrum to Great
Scrum (Hyperproductive)
ensure no Scrumbutts
lead to organizational improvement
An agile implementation of CMMI can help
institutionalize Scrum in an organization

2010 23
Agile/Scrum Development Using the CMMI Framework
Questions?
Time for some questions?

2010 24
Agile/Scrum Development Using the CMMI Framework
Contact Information
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
+1 386 673 1384
kent.johnson@agiledigm.com
www.agiledigm.com

2010 25
Agile/Scrum Development Using the CMMI Framework
More Detailed Information on the Subject
Features includes
Guides you through a proven
approach for designing the process
improvement effort, for monitoring
and controlling the effort, and
measuring its success
Presents the pros and cons of
attempting process improvement and
implementing CMMI
Offers advice for implementing
several process improvement projects
simultaneously to avoid added costs
and missteps
Discusses older methods of
assessing organizations and
compares them to the new SCAMPI
method
Available from Auerbach / CRC Press
Publications and Amazon.com

2010 26
Agile/Scrum Development Using the CMMI Framework
Backup Slide

Agile CMMI Performance Analysis


Project effort
100 % Rework
100%
CMMI Work
90%
Process focus
80%
50 % 69 %
70%
9%
60% Adding
50% SCRUM
40% 35 %
4%
30%
50 % 50 %
20% 25 %
10%
10 % 6%
CMMI 1 CMMI 5 CMMI 5
SCRUM
Source: Systematic A/S

2010 27
Agile/Scrum Development Using the CMMI Framework
Backup Slide

Impediments
Data driven removal of impediments using
control charts
Examples on causes:
Special competences
Disk full
Setup misunderstood
COTS failed
$ $

Source: Systematic A/S


: :
$Revision

Root cause analysis of time to fix automatically generates


$Revision

ScrumMasters impediment list.


2010 28
Agile/Scrum Development Using the CMMI Framework
PagePage
Backup Slide

Story Process Efficiency


When work allocated to sprint is READY, flow and
stability are achieved
$
$Revision:

Objective: 60% Objective: 50h


Source: Systematic A/S 2010 29
Agile/Scrum Development Using the CMMI Framework
Page

You might also like