Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
CMMI Failure Modes and Solutions -- Paving the Path for Agile & CMMI Interoperability
Transcript of CMMI Failure Modes and Solutions -- Paving the Path for Agile & CMMI Interoperability
What is CMMI?
CMMI is a Framework
Not a standard
Not a prescription
IS a description
(and still work well)
Does not require purchase of software or tools
Meant for process improvement, not process definition or compliance.
Process Compliance =
Do the process this way.
Process Improvement =
Do things that will make a
difference to your company.
IF that’s All It *IS*, Then…
is it so complicated?
is it so confusing?
do people have so much trouble with it?
assumes use by subject-matter experts.
assumes users are “learning organizations”.
inadvertently “shorts” the learning of process improvement.
Chasing the Rabbit, Steven Spear
Going Lean Fieldguide, Stephen Ruffa
A life cycle
or a standard
or an operational handbook for developing products, delivering services, or acquiring goods & services.
What you actually do
to make stuff.
... Practices for improving how you do stuff.
Diagrams not to scale
CMMI Only Tells You Where To Look For Improvement Possibilities, Not What To Improve Or How.
You MUST First Know Your Own Business & Work Flow BEFORE CMMI Can Help You Improve Anything.
You MUST Have
Business Performance Objectives or CMMI Will Only Add Bureaucracy, Not Benefits.
“Sponsorship” Means Executives Are Willing to Allow Things to Change, And Will Stand Up for Seeing Things Change.
The model is not the process!
CMMI is full of practices to IMPROVE your processes, not to DEFINE your processes.
You likely have practices of your own in most/all process areas.
CMMI’s practices are meant to improve those activities.
Probably by other names.
Likely generating their own appropriate work products.
If you’re not doing an activity, it’s probably a good idea to do it, so you could do worse than consider it.
You need to know what you’re doing before CMMI can help.
How you manage projects, develop products, & define your standards are yours.
Not all projects or processes are good candidates for improvement with CMMI.
Pursuit of Maturity Levels is likely to cause non-value-added work to some of your projects and processes.
That’s why CMMI emphasizes the business value of the improvements.
PAs are called Process Areas and not processes because they are areas of process activities.
Regardless of where & when they might appear on a project.
How to interpret CMMI for specific contexts?
A: What is the point or purpose of the practice?
B: What risks, waste or problems are avoided or opportunities, created by the practice?
C: What do you do that does that?
Somehow we evolved to:
Insert “thou shalt” in-front of CMMI practice statements.
Try “How do we ___” instead.
Avoid Goodhart’s Law
Short-Cut to Operationalizing CMMI Practices
Ask the question(s) backwards:
How do we <practice statement>?
How does that show up?
Why does it happen?
If your efforts accomplish what CMMI expects you to accomplish, you're unlikely to be having issues in that area of your business.
What does the CMMI expect you to accomplish?If it’s not obvious, read the informative material!
You’re the PM.
What would be expected of you to manage the product/project?
Call it acculturation, “stickiness” …
What causes the process to happen?
"<name> just knows what to do"
is a pathetic answer, and hard to improve.
Appraisals are on
Operating your business
and being successful.
What's a "Weakness"?
If You Remember Nothing Else...
CMMI has no processes in it.
Process Areas *don’t* develop or deliver products or services.
Description vs. Prescription for health management.
Remember The Enterprise…
What does it mean to appraise against a “model” and how the appraisal works.
You must be doing *something* to achieve a goal, if you have no better ideas, start with CMMI’s practices.
Paving the Path for Agile & CMMI Interoperability
2. You must
know what your work flows are before using CMMI!
When viewed as how
to do your jobs.
What happens when an organization hasn't defined its processes and/or can't describe its processes?
Is the state of
not knowing what their current processes are
a phenomenon only among organizations pursuing CMMI?
What is the significance
of CMMI as a model?
Let's Start with....
Things that don't help:
Agile in name only.
CMMI in name only.
Appraisers who don't understand the contexts they're appraising, let alone agile.
Adopters of both Agile and/or CMMI w/out guidance.
The REAL Enemy:
Level ratings focuses attention on evidence, not results. This establishes a pattern of bad behavior that takes on a life of its own and once started if very hard to break out of.
What does it take for an organization to be considered "agile"?
Is an organization that only executes named agile practices "agile"?
However, this compliance-driven perspective leaves out critical information about:
how CMMI actually works,
how the appraisal is actually conducted, and
how to use CMMI for actual improvement rather than appraisal compliance.
CMMI is a model.
Models are tools.
Before using any tool, users need instructions -- or at least they need to know what the tool is for and whether or not they've got the right problem solved by the tool.
What sort of problems does CMMI for Development solve?
CMMI is made up of practices.
Each practice is a possible source
of performance issues.
If you're having performance issues,
which practices resonate to improve them?
Focusing on the evidence risks losing
all the benefits of the model.
Focusing on the benefits, causes the
evidence to show up.
An area of your business
where you're likely exposed.
you won't have
in which to interpret CMMI and therefore you will end-up
your processes using the practices in CMMI.
is always a recipe for
Know what they're doing.
Don't turn their HR inventory every 3-5 years.
Have happy customers.
Avoid self-feeding dysfunction.
Every practice in CMMI is a common source of performance issues.
If you don't have a performance issue covered by a particular practice either:
You have the desired evidence, or
You're exposed due to a DNA-dependent process.
Practices are meant to improve processes
whenever, wherever and however the
process actually occurs in your work.
You can follow every word in CMMI and still never build or deliver a thing.
How do you prevent
Understand what's asked of you in the first place?
Don't accept work into the queue that you don't want to do?
Encourage behavior that considers the entire team/project over one's own interest in "proving oneself"?
CYA to ensure you didn't leave anything out and didn't put anything in the customer is/isn't entitled to?
Make sure you'll be compensated or expectations reset consistent with the changes?
is a long-term
journey, not a
CMMI is not a quick fix.
A = B = C
A = C
A = C
You need to know how to be in business and how to operate your business before CMMI can do anything to help.
CMMI is like a living right.
It's a long-term commitment, not a short-term fix.
CMMI is just a *model* for
building process improvement systems.
No model is perfect.
All models are fakes.
Data & Data
Data & Data
How the Operation Works
CMMI's Support for
What Happens in an Appraisal?
Within Control & Spec Limits
Expecting too much from CMMI.
Using CMMI for what it's NOT.
Preventing CMMI from doing its job.
Putting CMMI where it doesn't belong.
This has several implications . . .
1. CMMI is like
Diet & Exercise
is CPR. CMMI is
What are the origins of CMMI?
What is Agile?
What are the origins of Agile?
Agile is fundamentally a set of values.
provides the "
CMMI provides structure, governance and institutionalization.
Agile provides team activities, culture, and workflow.