CMMI (personal) 1 / 38 ©Jozef De Man 2007-2009 Capability Maturity Model ® Integration (CMMI SM ) Personal Prof. Dr. ir J. De Man
Dec 26, 2015
CMMI (personal) 1 / 38©Jozef De Man 2007-2009
Capability Maturity Model®
Integration (CMMISM)Personal
Prof. Dr. ir J. De Man
CMMI (personal) 2 / 38©Jozef De Man 2007-2009
Personal CMMIIntroduction
In this lecture we explore the application of the CMMI to personal (software) processes
To clarify the practical interpretation of the CMMI To appreciate that the CMMI can be applied to small
organizations (if it applies to a single person) To discover the limitations and boundaries of the CMMI
CMMI (personal) 3 / 38©Jozef De Man 2007-2009
Personal CMMIIntroduction
CMMI models cover development, acquisition and maintenance of products and services
It should be possible to apply the CMMI to software development by an individual
And perhaps also to other creative processes as learning or research?
CMMI (personal) 4 / 38©Jozef De Man 2007-2009
Personal CMMIRationale
For an organization to operate at a certain level of maturity, the individuals in the organization must also have compatible personal processes
Examples: Project planning requires contribution to size and effort
estimation by project team members Monitoring an Control requires disciplined registration of
effort spent on assigned tasks and estimation of effort to complete
Formal configuration management of selected work products requires individuals to check-out/check in configuration items, create and track problem reports to closure
CMMI (personal) 5 / 38©Jozef De Man 2007-2009
Personal CMMI5 Maturity
Levels – an interpretation
11
55
3344
22
QuantitativelyManaged
Optimizing
Defined
Managed
Initial
Persons have a disciplined
Process
TeamStandardProcess?
Measured,Predictable
Process
ContinuouslyImprovingProcess
A maturity level is anevolutionary plateauin process maturity
Practices at a lower level must beestablished to enable practices at
a higher level to be efficient and effective
http://www.sei.cmu.edu
Ad hocChaotic
CMMI (personal) 6 / 38©Jozef De Man 2007-2009
Personal CMMILevels of maturity – an interpretation
Level 2 Managed Basic time management practices Estimating, planning, tracking of size and effort Taking corrective actions as required
Level 3 Defined Processes aligned within a team (if applicable) Collecting data for reuse and process improvement
Level 4 Quantitatively Managed Define measurement program focused on improvement
Level 5 Optimizing Identification of common causes of inefficiencies Measurable improvements of personal processes
CMMI (personal) 7 / 38©Jozef De Man 2007-2009
CMMIProcess Areas Definition
Specific goals/practices are specific for each PA define capability level 1 (performed)
Generic Goals/Practices are common to all Process Areas define capability levels 2 - 5
Process Area
Specific Goals Generic Goals
Specific Practices Generic Practices
CMMI (personal) 8 / 38©Jozef De Man 2007-2009
CMMIGoals
Specific Goals Unique characteristics of process areas that must be
implemented to satisfy the process area
Generic Goals Generic goals appear in all process areas
Goals are required model components Essential to achieving process improvement Used to determine organizational maturity
CMMI (personal) 9 / 38©Jozef De Man 2007-2009
CMMIPractices
Specific practices Activities that are considered important in achieving the
associated specific goal
Generic practices Generic practices provide institutionalization to ensure that
the processes associated with the process area will be effective, repeatable and lasting
Practices are expected components Explain what will typically be done to achieve a goal Do not specify how Guide model users and appraisers Alternatives are possible
CMMI (personal) 10 / 38©Jozef De Man 2007-2009
CMMIProcess Areas by Maturity Level (Staged)
Requirements ManagementProject PlanningProject Monitoring and ControlSupplier Agreement ManagementMeasurement and AnalysisProcess and Product Quality AssuranceConfiguration Management
2 Requirements DevelopmentTechnical SolutionProduct IntegrationVerificationValidationOrganizational Process FocusOrganizational Process Definition + IPPDOrganizational TrainingIntegrated Project Management + IPPDRisk ManagementDecision Analysis and Resolution
3
Organizational Process PerformanceQuantitative Project Management
4 Organizational Innovation and DeploymentCausal Analysis and Resolution
5
Process Areas at lower levelmust be addressed beforeProcess Areas at higher levels
IPPD = Integrated Product and Process Development
CMMI (personal) 11 / 38©Jozef De Man 2007-2009
Level 2: ManagedProject Planning
SG 1 Estimates of project planning parameters are established and maintained
Estimate the scope of your work Establish estimates of work products and task attributes Define project life cycle Determine estimates of effort and cost
In practice Establish a list of work product and tasks Estimate for each work product the size, and for each task
the effort Prioritize tasks
CMMI (personal) 12 / 38©Jozef De Man 2007-2009
Level 2: ManagedProject Planning (2)
SG 2 A project plan is established and maintained as the basis for managing the project
Establish budget and schedule Plan for data management, project resources, needed
knowledge and skills, plan stakeholder involvement Establish project plan
In practice Make a schedule (based on due dates, task dependencies) Identify personal efficiency tools: spreadsheet, diary, PDA,… Identify training you need to accomplish your tasks Identify people affecting your work, affected by your work Write down your plan (in a spreadsheet, your diary)
CMMI (personal) 13 / 38©Jozef De Man 2007-2009
Level 2: ManagedProject Planning (3)
SG 3 Commitments to the project plan are established and maintained
Review plans that affect the project Reconcile work and resource levels Obtain plan commitment
In practice Establish agreements with other people to perform work for
you Ensure you allocate enough time to accomplish your tasks Is this a realistic plan? Can you commit yourself to executing
this plan?
CMMI (personal) 14 / 38©Jozef De Man 2007-2009
Level 2: ManagedProject Monitoring and Control
SG 1 Monitoring actual performance and progress Monitor project planning parameters, commitments, project
risks, data management, stakeholder involvement Conduct progress reviews, milestone reviews
In practice Log time and effort spent on tasks (in the planning table) Also log estimated time to complete Log unexpected, interrupting tasks as well! Keep a “to-do” list and mark status of actions Review status of your actual work against your plan
periodically (weekly) Review status of your work at the end/beginning of each
major work package (e.g. delivery of software module)
CMMI (personal) 15 / 38©Jozef De Man 2007-2009
Level 2: ManagedProject Monitoring and Control (2)
SG 2 Corrective actions are managed to closure when the project’s performance or results deviate significantly from the plan
Analyze issues Take corrective action Manage Corrective action
In practice Adjust the plan if tasks were not finished on time, you
spent/need more effort than anticipated, had to perform unplanned tasks
Notify affected people of any deviation as soon as possible Plan overwork (skip leisure activities) Skip tasks of lower priority
CMMI (personal) 16 / 38©Jozef De Man 2007-2009
Project Monitoring and ControlLogging sheet
For each task/work product: Short task/work product description (a few words) Plan:
Orginally estimated size, effort, starting date, finishing date Track:
Estimated effort to complete the task, estimated finishing date Status
Record: Actual size, effort, starting date and finishing date
Also register interrupting tasks!
If you use a spreadsheet, you can easily compute periodic (weekly) totals and averages, filter tasks by attributes,…
CMMI (personal) 17 / 38©Jozef De Man 2007-2009
Level 2: ManagedSupplier Agreement Management
SG 1 Agreements with the supplier are established and maintained
Determine acquisition type, select suppliers, establish supplier agreement
In practice Identify things you need to buy Shop around for good price/quality Buy
SG 2 Agreements with the supplier are satisfied by both the project and the supplier
CMMI (personal) 18 / 38©Jozef De Man 2007-2009
Level 2: ManagedMeasurement and Analysis
SG 1 Measurement objectives and activities are aligned with identified information needs and objectives
Establish measurement objectives Specify measures, data collection and storage procedures,
analysis procedures
In practice Objectives are determined by other process areas,
monitoring and control in particular E.g. define your time tracking: granularity (hour, ¼ hour?),
method (stopwatch?), periodicity of recording (daily?),… How many errors do you make? How much time do you
spend correcting them? Define logging mechanism (paper, PDA, PC)
CMMI (personal) 19 / 38©Jozef De Man 2007-2009
Level 2: ManagedMeasurement and Analysis (2)
SG 2 Measurement results that address identified information needs and objectives are provided
Collect measurement data Analyze measurement data Store data an and results Communicate results
In practice Do what you planned to do: measure, keep a record, use it
CMMI (personal) 20 / 38©Jozef De Man 2007-2009
Level 2: ManagedProcess and Product Quality Assurance
SG 1 Adherence of the performed process and associated work products and services to applicable process descriptions, standards, and procedures is objectively evaluated
Objectively evaluate processes Objectively evaluate work products and services
In practice This evaluation can be performed by others, but you can
also assume an external perspective yourself and assess how well you follow the rules you have imposed on yourself
Are you procrastinating, easily distracted, do the things you like instead of the things you need to do?
Use your measurements to obtain an objective view.
CMMI (personal) 21 / 38©Jozef De Man 2007-2009
Level 2: ManagedProcess and Product Quality Assurance (2)
SG 2 Noncompliance issues are objectively tracked and communicated, and resolution is ensured
Communicate and ensure resolution and noncompliance issues
Establish records
In practice Draw lessons from the observations in SG1 and take
corrective actions
CMMI (personal) 22 / 38©Jozef De Man 2007-2009
Level 2: ManagedConfiguration Management
SG 1 Baselines of identified work products are established Identify configuration items Establish a configuration management system Create or release baselines
In practice You also need to put your personal work products under
configuration control (e.g. presentation slides for a course) You need automated support, at least a well-organized
directory structure on your PC with identification rules to distinguish between successive versions of documents
Establish the discipline to maintain documents in your CM system
CMMI (personal) 23 / 38©Jozef De Man 2007-2009
Level 2: ManagedConfiguration Management (2)
SG 2 Changes to the work products under configuration management are tracked and controlled
Track change requests Control configuration items
In practice Keep change requests in your task plan/log Track progress by means of a status code in the list
(created, started, finished, closed) Identify versions of work products where change requests
are implemented
CMMI (personal) 24 / 38©Jozef De Man 2007-2009
Level 2: ManagedConfiguration Management (3)
SG 3 Integrity of baselines is established and maintained Establish configuration management records Perform configuration audits
In practice Periodically review you library of work products to ensure
your CM rules have been applied and correct if necessary Take frequent backups to minimize data loss in case of
equipment failure or theft
CMMI (personal) 25 / 38©Jozef De Man 2007-2009
Level 2: ManagedSummary
At level 2, you have a stable process
You manage your time professionally
Issues are identified in time and corrective actions are taken
Monitoring and control enables you to improve accuracy of your estimates based on personal history
Your measurements support this
You keep your work products under configuration management
But, you do not yet have enough insight in your processes to know where you are inefficient and to propose improvements
And you may not yet use common assets of the team, project or organization
CMMI (personal) 26 / 38©Jozef De Man 2007-2009
Level 3: DefinedIntroduction
We also start collecting information to obtain an better insight in the efficiency of our process and to identify and implement improvements
We keep a log of lessons-learned we can consult later to avoid having to solve the same problem over and over
In a way, we are establishing and documenting our personal software processes
If applicable, we also use common assets available in the team, project and organization level and contribute improvement information
CMMI (personal) 27 / 38©Jozef De Man 2007-2009
Level 3: DefinedGeneric Practices
GP 3.1 Establish and maintain the description of a defined process
In practice If you have faced a difficult problem and found the solution,
write it down in your engineering notebook for later reference Document your personal software process
Template for planning/logging actions “To-do” list template How you maintain schedules A structure of e-mail folders, filters for incoming mail, classification of
outgoing mail,… Standard directory structure on your PC Establish a common standard in your team to facilitate aggregation
CMMI (personal) 28 / 38©Jozef De Man 2007-2009
Level 3: DefinedGeneric Practices (2)
GP 3.2 Collect work products, measures, measurement results, and improvement information derived from planning and performing the process to support the future use and improvement of the organization’s processes and process assets
In practice Inefficiency is mainly caused by detecting/correcting defects As a first step, you have to ensure that defects are detected
as early as possible to avoid rework later in the process It may already be possible to identify sources of defects
(specific and common) to identify improvements
CMMI (personal) 29 / 38©Jozef De Man 2007-2009
Level 3: DefinedCollecting Defect data
We already have the practice of registering defects and the time it takes to resolve them from level 2
We now need to collect more data Activity where the defect was injected: requirements, design,
code, error correction,… Activity in which defect was found Category of defect: spelling error, interface problem, variable
not initialized,…
Based on the effort and number of occurrence of each category of defects, we can focus improvement actions on issues with the highest leverage
CMMI (personal) 30 / 38©Jozef De Man 2007-2009
Level 3: DefinedOrganizational Training
SG 2 Training necessary for individuals to perform their roles effectively is provided
Deliver training, establish training records, assess training effectiveness
In practice Actively work on your personal development, identify your
training need Obtain commitment for training and ensure you have enough
time to follow the training
CMMI (personal) 31 / 38©Jozef De Man 2007-2009
Level 3: DefinedRisk Management
SG 1 Preparation for risk management is conducted Determine risk sources and categories Define risk parameters Establish a risk management strategy
SG 2 Risks are identified and analyzed to determine their relative importance
Identify risks Evaluate, categorize, and prioritize risks
SG 3 Risks are handled and mitigated, where appropriate, to reduce adverse impacts on achieving objectives
Develop risk mitigation plans Implement risk mitigation plans
CMMI (personal) 32 / 38©Jozef De Man 2007-2009
Level 3: DefinedDecision Analysis and Resolution
SG 1 Evaluate Alternatives Establish Guidelines for Decision Analysis
To which type of issues will we apply DAR? Establish Evaluation Criteria
What are the criteria, priorities,… Identify Alternative Solutions Select Evaluation Methods
Expert judgment, simulations, surveys Evaluate Alternatives
Apply the selected method Select Solutions
Based on the results of the evaluation and risk assessment
CMMI (personal) 33 / 38©Jozef De Man 2007-2009
Level 4 Quantitatively ManagedOrganizational Process Performance
SG 1 Baselines and models that characterize the expected process performance of the organization’s set of standard processes are established and maintained
Select processes Establish process performance measures Establish quality and process-performance objectives Establish process performance baselines Establish process performance models
Also for personal processes you can move from a generic measurement process to one that matches your individual requirements, objectives, strengths and weaknesses
CMMI (personal) 34 / 38©Jozef De Man 2007-2009
Level 5 OptimizingOrganizational Innovation and Deployment
SG 1 Process and technology improvements that contribute to meeting quality and process-performance objectives are selected
Collect and analyze improvement proposals Identify and analyze innovations Pilot improvements Select improvements for deployment
In practice Based on historical record, identify categories of
inefficiencies with highest leverage Identify changes in your personal process Pilot the changes
CMMI (personal) 35 / 38©Jozef De Man 2007-2009
Level 5 OptimizingOrganizational Innovation and Deployment (2)
SG 2 Measurable improvements to the organization’s processes and technologies are continually and systematically performed
Plan the deployment, manage the deployment, measure improvement effects
In practice Adapt your spreadsheets, checklists Track the impact of the changes with your measurements Apply your personal process consistently but remain
sensitive for improvements, listen to comments of others, monitor evolution of personal efficiency technology, stay open for change
CMMI (personal) 36 / 38©Jozef De Man 2007-2009
Level 5 OptimizingCausal Analysis and Resolution
SG 1 Root causes of defects and other problems are systematically determined
Select data for analysis Analyze causes
In practice: Categorize the errors you have made Apply the 5 whys technique to identify the root cause until
you find an “actionable” cause, one you can do something about
CMMI (personal) 37 / 38©Jozef De Man 2007-2009
Level 5 OptimizingCausal Analysis and Resolution (2)
SG 2 Root causes of defects and other problems are systematically addressed to prevent their future occurrence
Implement the action proposals Evaluate the effect of changes Record data
In practice: Just the awareness of the typical errors you are making may
help you in preventing them in the future Identify personal rules, tools, training to improve your
performance Use measurements to monitor whether you are actually
improving
CMMI (personal) 38 / 38©Jozef De Man 2007-2009
CMMISummary
The CMMI can be interpreted for personal processes of people operating
in the context of an organization in the context of a team as individuals
Increase in maturity in the organization (team) must be supported by a corresponding increase in maturity of the teams (individuals) in the organization (team)