8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 1/42
Capability Maturity Modelfor Software (CMM), Version 1.1
Technical Overview
Raj KishoreSoftware Process Consultant
Candidate - Doctor of Professional Studies inComputing (PhD) at Pace University
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 2/42
Capability Maturity Model for Software 2
Capability Maturity Model
for Software (CMM)
Achieving functionality and qualityon schedule and within budget.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 3/42
Capability Maturity Model for Software 3
CMM Timeline
1986Software Engineering Institute at Carnegie MellonUniversity developed software process maturity
framework.1987Software Engineering Institute releases brief description of the maturity framework.
1991CMM, Version 1.0
1992CMM, Version 1.1
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 4/42
Capability Maturity Model for Software 4
Process Maturity Framework
In the area of software engineering, until the early 90s,there has been little improvement in productivity andquality gains.
Even undisciplined organisations sometimes produceexcellent results.
Capability Maturity Framework describes anevolutionary path from ad hoc, chaotic processes tomature, disciplined software processes.
Capability Maturity Framework integrates the conceptsof software process, software process capability,software process performance, and software processmaturity.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 5/42
Capability Maturity Model for Software 5
Immature Software Organisations
Software processes are generally improvisedby practitioners and their management during
the course of the project.Schedules and budgets are routinelyexceeded.
Lack of objective basis for judging product
quality and for solving product or processproblems.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 6/42
Capability Maturity Model for Software 6
Mature Software Organisations
Possess an organisation-wide ability formanaging software development andmaintenance processes.
Software processes are accuratelycommunicated to existing and new staff.
Work activities are carried out according toplanned processes.
Roles and responsibilities within the definedprocesses are clear throughout the projectand across the organisation.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 7/42
Capability Maturity Model for Software 7
Mature Software Organisations
Managers constantly monitor software qualityand customer satisfaction.
Schedules and budgets are based onhistorical performance and therefore realistic.
Expected results for cost, schedule,functionality, and quality of the products are
usually achieved.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 8/42
Capability Maturity Model for Software 8
Concepts of Process Maturity
A software process is a set of activities,methods, practices, and transformations that
people use to develop and maintain softwareand the associated products (such as plans,design documents, code, test plans, manualsetc.).
As the organisation matures, the softwareprocess becomes better defined and moreconsistently implemented throughout theorganisation.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 9/42
Capability Maturity Model for Software 9
Software Process Capability
The range of expected results that can beachieved by following a mature software
process.The software process capability of anorganisation provides one means of predictingthe most likely outcomes to be expected fromthe next software project the organisationundertakes.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 10/42
Capability Maturity Model for Software 10
Software Process Performance
Represents the actual results achieved byfollowing a software process.
Actual performance of the project may notreflect the full process capability.
Software process performance focuses on theresults achieved while software process
capability focuses on results expected.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 11/42
Capability Maturity Model for Software 11
Software Process Maturity
Extent to which a specific process is explicitlydefined, managed, measured, controlled, and
effective.Software process is well-understoodthroughout a mature organisation.
Capability of a mature organisation is known
as it can be measured.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 12/42
Capability Maturity Model for Software 12
CMM Overview
Software engineers and managers often knowtheir problems, but disagree on which
improvements are most important.To achieve sustainable results from processimprovement efforts, an evolutionary pathmust be designed that increases anorganisationµs software process maturity instages.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 13/42
Capability Maturity Model for Software 13
The 5 Levels of
Software Process MaturityInitial
Repeatable
Defined
Managed
Optimised
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 14/42
Capability Maturity Model for Software 14
Level 1 ± The Initial Level
Software process capability of level 1organisations is unpredictable.
Organisation does not provide stableenvironment for developing and maintainingsoftware.
Projects abandon planned procedures during
crisis and revert to coding and testing.Success depends entirely on having anexceptional manager and a good team.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 15/42
Capability Maturity Model for Software 15
Understanding Level 1
Level 1 organisations do develop productsthat work.
Success solely depends on specificindividuals.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 16/42
Capability Maturity Model for Software 16
Level 2 ± The Repeatable Level
The software process capability of level 2organisations is disciplined.
Policies for managing a software project existand procedures to implement those policiesare established.
Effective management processes for software
projects are institutionalised.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 17/42
Capability Maturity Model for Software 17
Level 3 ± The Defined Level
The software process capability of level 3organisations is standard and consistent.
The standard engineering and managementprocess for developing and maintainingsoftware across the organisation is definedand documented.
Organisation-wide training program isimplemented to ensure that the staff andmanagers have the qualification required tofulfil their roles.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 18/42
Capability Maturity Model for Software 18
Understanding Levels 2 & 3
When projects grow, attention shifts fromtechnical issues to organisational and managerialissues²the focus of process maturity.
For level 2, management must focus on its ownprocesses to achieve a disciplined softwareprocess.
Level 2 must have policies that guide the projectsin establishing the appropriate managementprocesses.
Level 3 defines, integrates, and documents theentire software process.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 19/42
Capability Maturity Model for Software 19
Level 4 ± The Managed Level
The software process capability of level 4organisations is predictable.
Quantitative quality goals for both softwareproducts and processes are defined and set.Outcome is measured.
Software processes are instrumented with
well-defined and consistent measurements.Software products are of predictable highquality.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 20/42
Capability Maturity Model for Software 20
Level 5 ± The Optimising Level
The software process capability of Level 5organisations is continuously improving.
The entire organisation is focussed oncontinuous process improvements.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 21/42
Capability Maturity Model for Software 21
Understanding Levels 4 & 5
Many characteristics
of level 4 & 5 arebased on theconcepts of statisticalprocess control.
Juran Diagramme:Quality PlanningQuality ControlQuality Improvement
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 22/42
Capability Maturity Model for Software 22
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 23/42
Capability Maturity Model for Software 23
Visibility into the Software Process
Each succeedingmaturity level incre-mentally providesbetter visibility intothe software process.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 24/42
Capability Maturity Model for Software 24
Capability Maturity and Performance
PredictionThe maturity of anorganisationµssoftware processhelps to predict aprojectµs ability tomeet its goals.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 25/42
Capability Maturity Model for Software 25
Using CMM
Assessment teams use CMM to identify strengthsand weaknesses in the organisation.
Evaluation teams use CMM to identify the risks of selecting among different contractor and tomonitor contracts.
Managers and technical staff use CMM tounderstand the activities necessary to plan andimplement a software process improvement plan.
Process improvement groups use CMM as a guideto help them define and improve the softwareprocess in their organisation.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 26/42
Capability Maturity Model for Software 26
Internal Structure of Maturity Levels
Each maturity level iscomposed of severalkey process areas.
Each key process area isorganised into 5 sectionscalled common features.
Common features specifykey practices that, whencollectively addressed,accomplish the goals of the key process area.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 27/42
Capability Maturity Model for Software 27
Key Process Areas
Each maturity level is decomposed intoseveral key process areas.
The organisation must focus on these keyprocess areas to improve its softwareprocess.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 28/42
Capability Maturity Model for Software 28
Key Process Areas
All the goals of a key processarea must be achieved for theorganisation to satisfy that key
process area.When the goals of a keyprocess area are accom-plished on a continuingbasis across projects, the
organisation hasinstitutionalised theprocess capabilitycharacterised by thekey process area.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 29/42
Capability Maturity Model for Software 29
Level 2 Key Process Areas
Requirements management
Software project planning
Software project tracking and oversight
Software subcontract management
Software quality assurance
Software configuration management
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 30/42
Capability Maturity Model for Software 30
Level 3 Key Process Areas
Organisation process focus
Organisation process definition
Training programme
Integrated software management
Software product engineering
Intergroup co-ordination
Peer reviews
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 31/42
Capability Maturity Model for Software 31
Level 4 Key Process Areas
Quantitative process management
Software quality management
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 32/42
Capability Maturity Model for Software 32
Level 5 Key Process Areas
Defect prevention
Technology change management
Process change management
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 33/42
Capability Maturity Model for Software 33
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 34/42
Capability Maturity Model for Software 34
Common Features
Commitment to perform
Ability to perform
Activities performed
Measurement and analysis
Verifying implementation
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 35/42
Capability Maturity Model for Software 35
Key Practices
Each key process areais described in termsof the key practices
that contribute tosatisfying its goals.
Key practices describethe infrastructure andactivities that contributemost to the implementationand institutionalisation of the key process area.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 36/42
Capability Maturity Model for Software 36
Using CMM
Software Process Assessments
Software Capability Evaluations
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 37/42
Capability Maturity Model for Software 37
Software Process Assessment andSoftware Capability Evaluation Methods
SPA focus on identi-fying improvementpriorities within an
organisationµs ownsoftware process andplan an improvementstrategy.
SCE focus on identi-fying the risks asso-ciated with a particularproject or contract.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 38/42
Capability Maturity Model for Software 38
More Information
Software Engineering InstituteCarnegie Mellon UniversityPittsburgh, PA 15213-3890Tel: +1-412-2685800
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 39/42
PRojects IN Controlled Environments (PRINCE)
Project Management Method
Technical Overview
Raj Kishore
Software Process Consultant
Candidate - Doctor of Professional Studies inComputing (PhD) at Pace University
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 40/42
Capability Maturity Model for Software 40
PRojects IN Controlled Environments (PRINCE)Project Management Method
Benfits of using a project management method:
Method is repeatable.
Method is teachable.Method builds on experience.
Everyone knows what to expect.
If one takes over a project in the middle,status can be easily obtained.
Early warnings of problems.
Proactive, not reactive.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 41/42
Capability Maturity Model for Software 41
PRINCE ± Key Principles
Distinguishes between management of thedevelopment process and techniques involvedin the development process.
Project must be driven by its business case.
PRINCE is product based.
8/6/2019 Capability Maturity Model (CMM) - A Technical Overview
http://slidepdf.com/reader/full/capability-maturity-model-cmm-a-technical-overview 42/42
Capability Maturity Model for Software 42
PRINCE ± Structure
Processes
Components
Techniques