Topics coveredCMMI-- Continuous model- Staged modelPROCESS PATTERNS-
- Generic Process pattern elements
The Capability Maturity Model IntegrationSEI has developed a process meta-model on a set of
system & software engg. capabilities that should be present as organization reaches diff. levels of process capability and maturity.
“The quality of a product is largely determined by the quality of the process that is used to develop and maintain it.”
The CMMI frameworkThe CMMI framework is the current stage of
work on process assessment and improvement that started at the Software Engineering Institute in the 1980s.
The SEI’s mission is to promote software technology transfer particularly to US defence contractors.
It has had a profound influence on process improvementCapability Maturity Model introduced in the early 1990s.Revised maturity framework (CMMI) introduced in 2001.
Process capability assessmentIntended as a means to assess the extent to
which an organisation’s processes follow best practice.
My providing a means for assessment, it is possible to identify areas of weakness for process improvement.
There have been various process assessment and improvement models but the SEI work has been most influential.
InitialEssentially uncontrolled
RepeatableProduct management procedures defined and used
DefinedProcess management procedures and strategies defined
and usedManaged
Quality management strategies defined and usedOptimising
Process improvement strategies defined and used
The SEI capability maturity model
Problems with the CMMPractices associated with model levels
Companies could be using practices from different levels at the same time but if all practices from a lower level were not used, it was not possible to move beyond that level
Discrete rather than continuousDid not recognise distinctions between the top and the
bottom of levelsPractice-oriented
Concerned with how things were done (the practices) rather than the goals to be achieved.
The CMMI modelAn integrated capability model that includes
software and systems engineering capability assessment.
The model has two instantiationsStaged where the model is expressed in terms
of capability levels;Continuous where a capability rating is
computed.
CMMI model componentsProcess areas
24 process areas that are relevant to process capability and improvement are identified. These are organised into 4 groups.
GoalsGoals are descriptions of desirable organisational states.
Each process area has associated goals.Practices
Practices are ways of achieving a goal - however, they are advisory and other approaches to achieve the goal may be used.
CMMI process areas 1Process management Organisational process definition
Organisational process focusOrganisational trainingOrganisational process performanceOrganisational innovation and deployment
Project management Project planningProject monitoring and controlSupplier agreement managementIntegrated project managementRisk managementIntegrated teamingQuantitative project management
CMMI process areas 2Engineering Requirements management
Requirements developmentTechnical solutionProduct integrationVerificationValidation
Support Configuration managementProcess and product quality managementMeasurement and analysisDecision analysis and resolutionOrganisational environment for integrationCausal analysis and resolution
CMMI goalsGoal Process area
Corrective actions are managed toclosure when the projectÕs performanceor results deviate significantly from theplan.
Specific goal in ProjectMonitoring and Control
Actual performance and progress of theproject is monitored against the projectplan.
Specific goal in projectmonitoring and control
The requirements are analysed andvalidated and a definition of the requiredfunctionality is developed.
Specific goal inrequirementsdevelopment.
Root causes of defects and otherproblems are systematically determined.
Specific goal in causalanalysis and resolution.
The process is institutionalised as adefined process.
Generic goal
CMMI practicesPractice Associated goal
Analyse derived requirements to ensure that they arenecessary and sufficient
Validate requirements to ensure that the resultingproduct will perform as intended in the userÕsenvironment using multiple techniques asappropriate.
The requirements are analysed andvalidated and a definition of therequired functionality is developed.
Select the defects and other problems for analysis.
Perform causal analysis of selected defects and otherproblems and propose actions to address them.
Root causes of defects and otherproblems are systematically determined.
Establish and maintain an organisational policy forplanning and performing the requirementsdevelopment process.
Assign responsibility and authority for performingthe process, developing the work products andproviding the services of the requirementsdevelopment process.
The process is institutionalised as adefined process.
CMMI assessmentExamines the processes used in an organisation
and assesses their maturity in each process area.Based on a 6-point scale:
Not performed;Performed;Managed;Defined;Quantitatively managed;Optimizing.
Continuous CMMI meta model It describes a process in 2 dimensions as
shown in fig.capability level & process area
PP REQM MA CM PPQA0
1
2
3
4
5
Process area
capability level
Continuous model ..PROCESS AREAS :PP- project planningREQM- requirement managementMA- measurement & analysisCM- configuration managementPPQA- process & product quality assurance
Each process area is formally assessed against specific goals & practices and rated according to following capability levels
Capability LevelsLevel 0 - Incomplete
Process area is not performed or does not achieve all goals of level 1
Level 1 – Performedachieved all goals of level 1Work tasks conducted or performed
Level 2 – ManagedAll level 1 criteria satisfiedIn addition tasks & work products are monitored, controlled, reviewed & evaluated
Capability LevelsLevel 3 – Defined
All level 2 criteria satisfiedIn addition process is tailored from organizational standards of process to organizational process assets
Level 4 – Quantitatively managedAll level 3 criteria satisfiedIn addition process is improved & controlled using measurements & quantitative assessment
Level 5 – OptimizedAll capability 4 criteria have been achievedIn addition process area is adapted & optimized to meet changing customers need
CMMI staged ModelThe CMMI defines each process area in terms of
specific goals & specific practices required to achieve those goals
Specific Goals – establish the characteristics that must exist if the activities implied by a process area are to be effective
Specific practices- refine goal into a set of process related activities
Process PatternsSoftware process can be defined as a
collection of patterns
Templates or methods for describing important characteristics of software processes
Software teams can combine software patterns to construct processes that best meet the needs of specific projects
21
Process Patterns..Process patterns define a set of activities,
actions, work tasks, work products and/or related behaviors
A template is used to define a patternTypical examples:
Customer communication (a process activity)Analysis (an action)Requirements gathering (a process task)Reviewing a work product (a process task)Design model (a work product)
22
Generic Process pattern elementsMeaningful pattern name Intent (objective of pattern) Type
Task pattern (defines engineering action or work task) Stage pattern (defines framework activity for the process) Phase pattern (defines sequence or flow of framework activities
that occur within process)Initial context (describes conditions that must be
present prior to using pattern) Problem (describes the problem to be solved by
process pattern)Solution (describes how to implement pattern
correctly) Resulting context (describes conditions that result
when pattern has been implemented successfully) Related patterns (links to patterns directly related
to this one) Known uses/examples (instances in which pattern
is applicable)