Post on 15-Jan-2015
description
CMMICMMI
Arnon Rotem-Gal-OzArnon Rotem-Gal-Oz
The king’s Ship Wasa - 1628The king’s Ship Wasa - 1628 No SpecificationNo Specification No Architecture descriptionNo Architecture description Changes done on the fly, Changes done on the fly,
often under often under market/customer pressuremarket/customer pressure
Testing ignoredTesting ignored Didn’t know how to tell the Didn’t know how to tell the
clients Noclients No The system last longer than The system last longer than
was ever imaginedwas ever imagined Maintenance costs far Maintenance costs far
exceed ordinary exceed ordinary developmentdevelopment
PEOPLE
PROCESSTECHNOLOGY
Underlying Premise of Process Underlying Premise of Process ImprovementImprovement
“The quality of a product is largely determined by the
quality of the process that is used to develop and
maintain it.”
Based on TQM principles as taught by Shewhart, Juran, Deming and Humphrey.
The Software Development The Software Development ParadoxParadox
High-Quality but Slow to Market Not a LeaderHigh-Quality but Slow to Market Not a Leader
SpeedSpeed
QualityQualityFast to Market but Low Quality
Low CustomerSatisfaction
Fast to Market but Low QualityLow Customer
Satisfaction
[1]Booch[1]Booch
What is CMMI?What is CMMI?
CConsultantonsultant
MMoneyoney
MMakingaking
IInitiative nitiative
What is CMMI?What is CMMI?
ModelModel
PracticesPractices
Process ImprovementProcess Improvement
MModelodel
Say what you doSay what you do
Do what you sayDo what you say
Prove ItProve It
CMMI Maturity LevelsCMMI Maturity Levels
[4]Buchholtz & Cordes[4]Buchholtz & Cordes
CMMI Process AreasCMMI Process AreasProject Management
: Quantitative Project Management
QPMIPM: Integrated Project Management
RSKM: Risk Management
IT*: Integrated Teaming
ISM**: Integrated Supplier Management
PP: Project Planning
PMC: Project Monitoring and Control
SAM: Supplier Agreement Management
Engineering
RD: Requirements Development
TS: Technical Solution
PI: Product Integration
VER: Verification
VAL: ValidationREQM: Requirements Management
Support
CAR: Causal Analysis and Resolution
DAR: Decision Analysis and Resolution
OEI*: Organizational Environment for Integration
MA: Measurement and Analysis
PPQA: Process & Product Quality Assurance
CM: Configuration Management
Process Management
OID: Organizational Innovation &DeploymentOPP: Organizational Process Performance
OPF: Organizational Process Focus
OPD: Organizational Process Definition
OT: Organizational Training
Level
5 Optimizing
4 Quantitati-vely Managed
3 Defined
2 Managed
1 Initial
CMMI Options: * with Integrated Product & Process Development (IPPD)
** with Supplier Sourcing (SS)
[6]Rudge[6]Rudge
Software CMMSoftware CMM software software developmentdevelopment
System Engineering CMMSystem Engineering CMM system system engineeringengineering
Software Acquisition CMMSoftware Acquisition CMM software software acquisitionacquisition
System Security Engineering CMMSystem Security Engineering CMM security security engineeringengineering
FAA-iCMMFAA-iCMM software software engineering, systems engineering, and engineering, systems engineering, and acquisitionacquisition
IPD-CMMIPD-CMMintegrated product developmentintegrated product development
People CMMPeople CMMworkforce workforce
SPICE ModelSPICE Model software software developmentdevelopment
CMMI ReplacesCMMI Replaces
[4]Buchholtz & Cordes[4]Buchholtz & Cordes
History of the CMMIHistory of the CMMI1987 1991 1995 1997 2000 2002
First CMMPublished
Model Refinedand Published as
SW-CMM v1.0
SW-CMM v1.1 Published
1993
Software Acquisition (SA-CMM),Systems Engineering (SE-CMM),
Integrated Product Development (IPD-CMM),Organizational Workforce Capability Development (People CMM)
Developed
CMMI InitiativeLaunched
CMMI-SE/SWVersion 1.0Published
CMMI-SE/SW/IPPD/AVersion 1.1Published
[4]Buchholtz & Cordes[4]Buchholtz & Cordes
Critique of CMMICritique of CMMI
““The projects most worth doing are the The projects most worth doing are the ones that will move you DOWN one full ones that will move you DOWN one full level on your process scale” level on your process scale” (Peopleware) [3](Peopleware) [3]
[3]Demarco & Lister[3]Demarco & Lister
CMMI vs. AgileCMMI vs. Agile
PEOPLE
TECHNOLOGYProcess
The Agile Software ManifestoThe Agile Software Manifesto
•Individuals and interactionsIndividuals and interactions over processes and toolsover processes and tools
•Working softwareWorking software over comprehensive documentationover comprehensive documentation
•Customer collaborationCustomer collaboration over contract negotiationover contract negotiation
•Responding to changeResponding to change over following a planover following a plan
[7]Agile[7]Agile
CMMI Practices vis-à-vis AgilityCMMI Practices vis-à-vis Agility
““LEVEL 1”LEVEL 1” Identify scope of workIdentify scope of work Perform the workPerform the work
““LEVEL 2”LEVEL 2” Organizational policy for plan, performOrganizational policy for plan, perform Requirements, objectives and plansRequirements, objectives and plans Adequate resourcesAdequate resources Train the peopleTrain the people Assign responsibility and authorityAssign responsibility and authority CM for designated work productsCM for designated work products Identify and involve stakeholdersIdentify and involve stakeholders Monitor and control to plan and take action if neededMonitor and control to plan and take action if needed Objectively monitor adherence to process and QA products/servicesObjectively monitor adherence to process and QA products/services Review with upper management and resolve issuesReview with upper management and resolve issues
KEY {KEY {GREEN : SupportiveGREEN : Supportive, White: Neutral, , White: Neutral, RED: Rough EdgesRED: Rough Edges}}
[5]Jain[5]Jain
CMMI Practices vis-à-vis AgilityCMMI Practices vis-à-vis Agility
““LEVEL 3”LEVEL 3” Maintain as a defined processMaintain as a defined process Measure the process performance to support environmentMeasure the process performance to support environment
““LEVEL 4”LEVEL 4” Establish and maintain quantitative objectives for the processEstablish and maintain quantitative objectives for the process Stabilize the performance of one or more sub-processes to determine its Stabilize the performance of one or more sub-processes to determine its
ability to achieveability to achieve
““LEVEL 5”LEVEL 5” Ensure continuous improvement to support business goalsEnsure continuous improvement to support business goals Identify and correct root causes of defectsIdentify and correct root causes of defects
KEY {KEY {GREEN : SupportiveGREEN : Supportive, White: Neutral, , White: Neutral, RED: Rough EdgesRED: Rough Edges}}[5]Jain[5]Jain
Agile vs. Plan DrivenAgile vs. Plan Driven
[2]Bohem, Turner[2]Bohem, Turner
Why Bother with both?Why Bother with both?
Introduce Agility to a Introduce Agility to a CMMI organizationCMMI organization
““Best of Breed” Best of Breed”
ReferencesReferences1.1. Software Architecture - A Rational Perspective – G. Software Architecture - A Rational Perspective – G.
Booch (ppt)Booch (ppt)
2. People Factors in Software Management: Lessons From Comparing Agile and Plan-Driven Methods – B. Bohem, R. Turner Crosstalk, Dec 2003
3. Peopleware 2nd edition, T. Demarco, T. Lister Dorset House 1999, ISBN 0-932633-43-9
4. Introduction to CMMI, E. Buchholtz, A. Cordes, RTP SPIN Meeting, 2003 (ppt)
5. CSE Annual Review and Excutive Workshop 2002, Apurva Jain (ppt)
6.6. CMMICMMI®® : St George or the Dragon?, T. Rudge, : St George or the Dragon?, T. Rudge, Thales (ppt)Thales (ppt)
7. www.agilemanifesto.org