Characterizing the Software Process: A Maturity Framework
29 Nov 2016•0 j'aime
6 j'aime
Soyez le premier à aimer ceci
afficher plus
•3,908 vues
vues
Nombre de vues
0
Sur Slideshare
0
À partir des intégrations
0
Nombre d'intégrations
0
Télécharger pour lire hors ligne
Signaler
Logiciels
Software Development Process, Maturity Framework is also called as CMM (Capability Maturity Model). This paper is published by Dr. Watts S. Humphrey. These slides help you understand the framework.
Dr. Watts S. Humphery
• Director of Software process program at Software
Engineering Institute (SEI), Carnegie Mellon
University.
• Worked at IBM from 1959 to 1986 as the Director
of Programming quality and process.
• Received BS in physics from University of Chicago,
MS in physics from the Illinois Institute of
Technology and MBA from University of Chicago.
• Written two books: Managing for Innovation:
Leading Technical People and Switching circuits
with computer Applications.
Motivation
• Software quality and productivity must improve.
But where to start?
• The amount of money spent on Software in the US
grows approximately 12% each year.
• It is worthwhile to examine the characteristics of a
truly effective software process.
• If process is under statistical control, repeating the
work will produce roughly the same result.
• Need of measurement for statistical control.
Dev process Improvements
1. Understand the current status of the their
development process or processes.
2. Develop a vision of the desired process.
3. Est. a list of required process improvement actions in
order of priority.
4. Produce a plan to accomplish these.
5. Commit the resources to execute the plan.
Level 1: Initial Process
• Ad-hoc and chaotic.
• No formalized procedures, cost estimates or project
plans.
• Tools are neither well integrated nor uniformly applied.
• No serious maintenance.
• No senior management oversight.
• No Quality assurance.
• Change control is disaster.
Level 2: Repeatable Process
• Has commitment control.
• Face major risk when presented with Brand new
challenge.
• Introduction of new tools or technologies will be a
risk.
• Organization changes can be highly disruptive.
• Teams learn the ropes through word of mouth.
Level 2: Repeatable Process
How to Upgrade to the Defined process
• Establish a process group to focus exclusively on
the software development process.
• Establish a Software development process
architecture.
• Introduce a family of Software Engineering
methods and Technologies.
Level 3: Defined Process
• Most of the Software Organizations.
• Achieved the foundation for major and continuing
progress.
• Defined process architecture.
• Not very much scared of New technologies or
Tools.
Level 3: Defined Process
How to Upgrade to the Managed process
• Establish a basic set of process measurements to
identify the quality and cost parameters.
• Establish a process database with resources to
manage and maintain it.
• Provide sufficient project resources and advise
members on its use.
• Assess the relative quality of each product.
Level 4: Managed Process
• Gathering and maintaining of huge amount of data,
but is expensive.
• Basic set of process measurements to identify the
quality and cost parameters.
• Established process database with resources to
manage and maintain it.
• Provides sufficient project resources.
• Have advisory board.
• Assessment of the relative quality of each product.
Level 4: Managed Process
How to Upgrade to the Optimized process
Two requirements:
1. Support automatic gathering of process data. But
some data cannot be gathered automatically.
2. Use this data effectively to both analyze and
modify the process accordingly to prevent
problems and increase efficiency.
Level 5: Optimizing Process
• Data actually available to tune the process itself.
• Helps managers understand where help is needed.
• Helps provide the people with best support they
require.
• Professional communicate quantitatively.
• Provides framework for professional to understand
their work performance and see how to improve.
• Ensures process discipline to produce high quality
software and deliver best support of any kind.
Further…
• The SEI is using this framework as a foundation for
a continuing program of assessments and software
process development.
• These assessment methods are made public and
preliminary data is now available from dozens of
software organizations.