Copyright © 2008 Broadsword Solutions Corporation
of CMMI® v1.2 for Supercharging
Agile Organizations Copyright © 2008 Broadsword Solutions Corporation
Jeff Dalton, President Broadsword, an SEI Partner SCAMPI Lead Appraiser CMMI Instructor
CMMI and SCAMPI are registered trademarks of Carnegie Mellon University
Predict the outcome of projects so often that you’re perceived as
the wisest, most experienced practitioner in your company . . .
Is that something that would interest you?
If I told you that you could . . .
If I told you that you could . . .
Eliminate enough “busy-work” so we could all work
just 40 hours per week (and go home early on Friday) . . .
Is that something that would interest you?
Avoid the stupid bugs before they happen
(and stop looking like an idiot) . . .
Is that something that would interest you?
If I told you that you could . . .
Avoid having the same meeting over and over again,
revisiting the same decisions, (and having your head explode) . . .
Is that something that would interest you?
If I told you that you could . . .
If you could have all this and more while remaining Agile (and not be burdened by
useless process overhead) . . .
Is that something that would interest you?
If I told you that you could . . .
Visit Jeff’s Agile CMMI Blog at:
http://asktheCMMIAppraiser.com
Got Agile CMMI Questions?
The equation for success =
secret #1 Reference
Model
+
Evaluation Method
Executable Process
+ Guidelines for
scoping process improvement
A suite of tests to validate and verify progress
An empowering philosophy and toolkit for action
and success
CMMI – Nice picture, but misses the point
Quantitatively Managed
Performed
Managed
Optimizing
Defined
Focus on process improvement 5
Process measured and controlled 4
Process characterized for the organization and is proactive
3
Process characterized for projects and is often reactive
2
Process unpredictable, poorly controlled and reactive
1
Process Improvement can produce measured, proven success
Performance Category Median Improvement
Cost 34%
Schedule 50%
Productivity 61%
Quality 48%
Customer Satisfaction 14%
Return on Investment 4:1
Are methodologies important?
Information Engineering (1991), Traditional approach SDLC
Agile Methods, examples: • XP (1999) • Scrum (2001) • Crystal (2001) • FDD (2001)
Waterfall methodology
“House Blends” of Agile methodologies
Drivers, Constraints: • Deregulation initiatives • Corporate mergers • Process / Customer Mandates
What components do you need?
Engineering Process
Essences & Core
Principles
Roles & Responsibilities
Glossary of Terms
Process Flows
(Swimlanes)
Process Definitions
Standard Work
Instructions
Templates &
Examples Communication
Materials
Training Materials
Standards &
Guidelines
All need representation, not all need to be complex…
Development/Life-Cycles : Conventional Wisdom
Mainline
Requirements Development
Project Planning
Technical Solution Validation
Verification
Guiding
Organizational Process
Measurement & Analysis
Process & Product Quality Assurance
Supporting
Project Monitoring & Control
Risk Management
Configuration Management
Requirements Management
Approved Business Case/SOW
Assigned PM
Approved Appropriations (Tracking)
Approved Funding
Inputs
Application Solution
Outputs
Prioritized Documentation
Process Improvements
Business Value
“In theory, there is no difference between
theory & practice, but in practice,
there is.”
Engineering is not the same as Academia …
~Yogi Berra
Encapsulated Process Objects™: OOD Approach
Organizational Process
Measurement & Analysis
Process & Product Quality
Assurance
Project Monitoring &
Control Risk
Management Configuration Management
Requirements Management
object object object
Project Monitoring &
Control Project
Monitoring & Control
Configuration Management Configuration
Management
Requirements Management Requirements
Management
Encapsulated Process Objects is a registered trademark for Broadsword Solutions Corporation
Projects run “as-is” and new EPO’s are implemented as they become valuable
p_Class: Feature Validation Criteria for selection Description (swim-meet) Use Policy Procedures Who leads it? Training Versioning Whose affected How is it working? Is one being used What are the results?
Use Cases
Simulations
Prototypes
I n s t a n t i a t e
or
or
Encapsulated Process Objects™: Validation
Use Cases
Simulations
Prototypes
or
or
How is each EPO performing?
Baseline of Feature Defect “Saves”
Organizational: Encapsulated Process Objectstm
Engineering Process Group (xEPG)
The xEPG is the OWNER of standard
processes
The SIGS inherit methods &
attributes from xEPG and contains a PROCESS
LEADER and the VOICE of the COMMUNITY
PERSISTANT CONTAINER hosting multiple, permanent sub-processes working groups
The xEPG is a SUSTAINABLE body that charters SIGs to design, rollout, & maintain sub-processes; membership in the xEPG or SIGs may rotate but the bodies are PERSISTANT
Process Test Team
(SCAMPI)
Process Management
OPD, OPF
Configuration Management
CM Metrics
MA
Requirements RM, RD,
Traceability
Project Management
PM, PMC
“One-Dimensional” (1D) Deployment
Process implementation fails because it is NOT scaleable
Internal “Re-engineering team”
or Consulting Firm “Ivory Tower”
IT & Engineering
“Helpful” Processes
“Three Dimensional” (3D) Deployment
The US Military’s doctrine for waging and winning battles is effective because it is scaleable.
Logistics
Artillery
Infantry
3D Process Deployment
PROCESS DESIGN
• Assess current initiatives • Design compliant
process: • Process Flow • Templates • Integration Points • Audit Process • Escalation Process • Exception Process
• Metrics to measure success
• Document and integrate into process release schedule
Iter
atio
n 1
• Clear statement of mission
• Communication of goals:
• Output • Deliverables • Business Results
• Communicate progress • Organizational Notice of
Decision (NOD) • Personalized
communication • Distribution of metrics
COMMUNICATIONS
Iter
atio
n 2
TRAINING
• Develop training plans • Develop standard
training materials: • Slides • Templates • Job-Aids • Hand-outs
• Metrics to measure success
• Conduct Training • Document and track
training participation
Iter
atio
n 3
Special Interest Group (SIG)
Process/Product Release Approach
Our Engineering Process is an Agile methodology for delivering and supporting systems
based business solutions It is a Product… It is a Process…
…consisting of a suite of work products including process flows, process descriptions, templates, standards and guidelines, which are delivered and maintained by a project team
… used by all IT & Engineering professionals involved in the delivery and support of software applications; the process provides the tools and clarity we need to do our jobs
So what? Is it useful?
Process Performance
Process Deployment
Index
• Systems Engineering Process Group (SEPG) • SIGs
Process Results Index
• Process Owners • Practice Areas
• Projects
• Projects
Process Compliance Index
• Process Owners • Project Leaders
• Project & Process Audit
• SDP Process Audit
Are we successful at designing, building,
deploying, and maintaining the Process?
Do the results from each Process Area show improved project
performance?
Is our process appropriate, are we complying with it, and are we continuously
improving it?
How are we doing?
Just enough, not too much …
Benefit
Effo
rt &
Cos
t Scope = Cost
Agile methods are well suited to control process scope
JENTMsm = courage to stop
Iteration 1
Spike
Iteration 2
Verify
Iteration 3
Lock
Iteration 4
Educate & Communicate
4 weeks 2 weeks 4 weeks 2 weeks
OUTPUTS: ▪ Swim lanes
▪ Process description ▪ Policies ▪ Metrics
▪ Tailoring guidelines ▪ CRs to other SIGs
OUTPUTS: ▪ Defects
▪ Change Requests Refectoring Reqsts
OUTPUTS: ▪ Process revisions
▪ Artifacts ▪ Pilots
▪ Defect Fixes
OUTPUTS: ▪ Training Materials ▪ xEPG CMMI
Interpretation ▪ Templates for Process
Creation • Project Monitoring Aids ▪ SIG Training ▪ Process Area (PA)
Training
INPUTS: INPUTS: INPUTS: INPUTS:
RELEA
SE 90 Day Release Cycle
Agile Process Deployment – 5% Redirect
Agile Process Deployment in 3 Releases
Q2
Launch SIGs:
Q3 Q3 Q1 Q2 Q4 Q4
2008 2009
• Process Management
SCAMPI Class C
Train & mentor teams
SCAMPI Class B
SCAMPI Class A
• Configuration Management
• Process Quality
• Metrics & Measurement
• Requirements
• Supplier Management
CELEBRATE!
R1
R2
R3
Example: CMMI Alignment, Q1
• 200 Software Developers • 22 Project Managers • 18 Business Analysis • IT Organization
Example: CMMI Alignment, Q4
CMMI and Agile can coexist in an organization…
secret #2
…harmoniously
Agile & CMMI; Diametrically Opposed?
AGILE CMMI Iterative
Incremental
Action based Team agreements
Rapid change Scope shrinks to meet
deadlines
Document-lite
Assume a low level of constant re-work
Trust
Procedural
Extensive planning
Deliverable based Hierarchical governance
Careful change
Budget grows to meet Scope
Document-heavy
Avoid re-work through planning and monitoring Governance Layers
“Pre-ceptions”
A Few Myths About Agile & CMMI
• No documentation is required --“Pass me a Red Bull!”
• We can only “do CMMI” if we focus on developing documents, and reports, and if we hire an expensive consultant
AGILE CMMI
• “Design on the fly” results in a better product
• Appraisals or audits are not valuable
• Customers are at every meeting making decisions with the team
• No need to record decisions-- we just have a meeting
• CMMI is incompatible with Agile
• It’s designed to work with “waterfall” projects so it doesn’t apply to smaller, agile projects
• CMMI is something that we “implement”
• CMMI only applies to large, monolithic companies
• CMMI (and all process) will double our workload and slow us down
The Agile Manifesto*… we know it well
We are uncovering better ways of developing software by doing it and helping others do it.
Individuals & Interactions
Working Software
Processes & Tools
Comprehensive Documentation
Customer Collaboration
Responding to Change Following a Plan
Contract Negotiation
Through this work we have come to value:
OVER
OVER
OVER
OVER
* Manifesto for Agile Development copyright © 2001 Ron Jeffries, Jeff Sutherland, Ken Schwaber, Alistair Cockburn, and others
The Agile Process Manifesto… We are discovering new and better ways of developing processes through iteration and the teaching others.
Innovation
Useful Processes
Process Mandates
Certifications & Audits
Collaboration
Flexibility & Agility Ridged Compliance
Coercion & Punishment
Through this work we have come to observe that:
Outweighs
Manifesto for Agile Development copyright © 2001 Ron Jeffries, Jeff Sutherland, and others
Outweigh
Outweighs
Outweigh
CMMI & Agile; Friends or Foes?
People that advocate Agile tend to disdain structure…
We don’t have to choose!
People who support CMMI tend to want to avoid chaos and risk…
…most advocates of CMMI focus on
planning
…most advocates of Agile focus on iterations and
failing fast
…so, it follows that… …so, it follows that…
Paradigm Shifts… • The average CMMI Level 3 SCAMPI Appraisal examines over
400 document types and over 1000 artifacts
• We can reduce and consolidate “objective evidence” and average ± 70 document types for CMMI
• A template, form, or document is always the obvious answer, but there are other options…
White-board Cameras/Printouts
Code Comments Digital Photos Databases/Tools
Videos Scanned Drawings, Napkins
For Instance . . .
• Iterations (or “sprints”) & Releases themselves replace the need for frequent monitoring
In an Agile environment, some core behaviors can become Alternative Practices for CMMI…
• Code Reviews can be evidenced right in the code and test libraries (Peer Programming)
• Configuration Planning can be consolidated with Tailoring Guidelines, Configuration Audit Checklists, and Sizing & Estimating (Project Planning, Configuration Mgmt, IPM all at once!)
• Iteration & Release frequency eliminates the need for frequent Plan Review & Process Quality audits
• Agile methods themselves can serve as policies around planning, estimating, budgeting, and staffing--eliminating the need for separate “evidence”
Ex: Reducing Artifacts by ~ 75%
Perceived for CMMI* Possible Substitute
Meeting Minutes
Meeting Log
Notice of Decision
Stakeholder Involvement Report
Status Reports
Stakeholder Communications
Change Request Log
Requirements Log Change Request Approval Form
Detailed Requirement Specification
Bi-directional Traceability Matrix
COCOMO, SLOC, Top Down, Function Points Planning Poker, Ideal Days, Feature Value
* Notice “perceived.” Nothing in the model requires this.
What really goes on in a SCAMPI Appraisal is …
secret #3
… just a user acceptance test
Standard
Process
CMMI
Appraisal
Method for
Improvement
Findings, Recom
mendations
Actual Practice
Appraisal Requirements
Organizational Process Suite
Appraisal Team
Organization/Projects
What is a SCAMPI? A formal test plan
Staged Representation – Modules to test
Quality Productivity
Level Focus Process Area
5 Optimizing Continuous Process Improvement
• Organizational Innovation & Deployment • Casual Analysis & Resolution
4 Quantitatively Managed
Quantitative Management
• Organizational Process Performance
• Quantitative Project Management
3 Defined Process Standardization
• Requirements Development • Technical Solutions • Product Integration • Verification • Validation • Organizational Process Focus
• Organizational Process Definition + IPPD • Organizational Training • Integrated Project Management + IPPD • Risk Management • Decision Analysis & Resolution
2 Managed Basic Project Management
• Requirements Management • Project Planning • Project Monitoring & Control • Supplier Agreement Management
• Measurement & Analysis • Process & Product Quality Assurance • Configuration Management
1 Initial
SCAMPI Classes – levels of testing
Characteristics Class A Class B Class C
Amount of objective evidence gathered
(relative) High Medium Low
Ratings generated Yes No No
Resource needs (relative)
High Medium Low
Team size (relative)
Large Medium Small
Appraisal Team Leader Requirements
Lead Appraiser
Lead Appraiser
(or other trained and
experienced)
Person trained and experienced
The “code” we are testing is the process
PP SP1.1-1: (test case ID)
Direct artifacts: • Release Plan • Feature back-log
Affirmations: • “I built a story board for all of the features”
Indirect artifacts: • Call-phone photo of white board
to estimate the scope of the project. Establish a top-level work breakdown structure (WBS)
Characterizing Test results
Implementation Characterization
Description
Fully Implemented (FI)
• Direct artifacts present and appropriate
• Supported by indirect artifact and/or affirmation
• No weaknesses noted
Largely Implemented (LI)
• Direct artifacts present and appropriate
• Supported by indirect artifact and/or affirmation
• One or more weaknesses noted
Partially Implemented (PI)
• Direct artifacts absent or judged inadequate
• Artifacts or affirmations indicate some aspects of the practice are implemented
• One or more weaknesses noted
Not Implemented (NI) • Any situation not covered by above
CMMI Level 3 – “bug report”
The real test for sustainable process improvement is rating consistency
A Quick Review… secret #1
The equation for success=
+ + Reference
Model
CMMI
Evaluation Method
SCAMPI
Executable Process
Agile CMMI
secret #2 CMMI and Agile can coexist in an organization…
…harmoniously
secret #3 What really goes on inside a SCAMPI Appraisal…
…is a user acceptance test
If you only remember one slide …
• CMMI and Agile are complementary – perceived differences are often in approach, NOT substance.
• There are many alternatives to the expected practices and example artifacts found in CMMI--think Agility (and help your Lead Appraiser learn)!
• Agile
• CMMI
• You can implement a CMMI compliant engineering process that is Agile and brings you the repeatability and predictability offered by CMMI . . . however, it requires discipline.
Lazy
Heavy