SOFTWARE ENGINEERING
BY
MS.QAISRA RAMZAN

1
Process Improvement

2
Steps Before Process Improvements 1
• Explain the problem, discuss why the change
is necessary, and spell out the reasons in
terms that are meaningful
• Create a comfortable environment where
people will feel free to openly voice their
concerns and their opinions
3
Steps Before Process Improvements 2
• Explain the details of the change, elaborate on the
return on investment, how it will effect the staff, and
when the change will take place
• Explain how the change will be implemented and
measured
• Identify the individuals who are open-minded to
accept the change more easily
4
Steps Before Process Improvements 3
• Train employees to help them acquire needed skills
• Encourage team work at all times and at all levels
• Address each concern with care so there is no fear left
and value each opinion
• Make decisions based on factual data rather than
opinions or gut feelings
5
Steps Before Process Improvements
-4
• Enforce decisions to reinforce the change

6
Seven Steps of the Process
Improvement
•
•
•
•
•
•
•

Plan
Gather data
Analyze findings
Describe the ideal process
Implement the ideal process
Measure progress
Standardize the process

7
Process Improvement Programs
•
•
•
•
•

Capability Maturity Model (CMM)
ISO 9000
Tick/IT
Spice
Total Quality Management (TQM)
8
Capability Maturity Model

9
Software State-of-the-Art in 1984 - 1
• More than half of the large software systems
were late in excess of 12 months
• The average costs of large software systems was
more than twice the initial budget
• The cancellation rate of large software systems
exceeded 35%
• The quality and reliability levels of delivered
software of all sizes was poor
10
Software State-of-the-Art in 1984 - 2
• Software personnel were increasing by more
than 10% per year
• Software was the largest known business
expense which could not be managed

11
Software Engineering Institute
• A research facility, located in University of
Carnegie Mellon, Pennsylvania
• Primarily funded by US DoD to explore
software issues, and especially topics associated
with defense contracts
• US DoD is the largest producer and consumer
of software in the world
12
Capability Maturity Model
• SEI developed a Capability Maturity Model
(CMM) for software systems and an assessment
mechanism
• CMM has five maturity models
• Initial
• Repeatable
• Defined
• Managed
• Optimizing

13
CMM Level 1 : Initial - 1
• Organizations

are

characterized

by

random or chaotic development methods
with little formality and uninformed
project management
• Small projects may be successful, but
larger projects are often failures
14

• Overall results are marginal to poor
CMM Level 1: Initial - 2
• In terms of People CMM, level 1
organizations

are

deficient

in

training at both the technical staff
and managerial levels

15
CMM Level 1: Initial - 3
• SEI does not recommend any key process
areas

16
CMM Level 2: Repeatable- 1
• Organizations have introduced at least some
rigor into project management and
technical development tasks
• Approaches such as formal cost estimating
are noted for project management, and
formal requirements gathering are often
noted during development
• Compared to initial level, a higher
frequency of success and a lower incidence
17
of overruns and cancelled projects can be
observed
CMM Level 2: Repeatable- 2
• In

terms

of

organizations
adequate

People
have

training

CMM,

begun
for

to

level

2

provide

managers

and

technical staff
• Become aware of professional growth and
the need for selecting and keeping capable
personnel

18
CMM Level 2: Repeatable- 3
• Key process areas
– Requirements management
– Project planning
– Resource tracking
– Quality assurance
– Configuration management
– Subcontract management

19
CMM Level 2: Repeatable - 4
• Key process areas for People CMM
– Compensation
– Training
– Staffing
– Communication
– Work environment

20
CMM Level 3: Defined - 1
• Organizations have mastered a development
process that can often lead to successful
large systems
• Over and above the project management
and technical approached found in Level 2
organizations, the Level 3 groups have a
21
well-defined development process that can

handle all sizes and kinds of projects
CMM Level 3: Defined - 2
• In terms of People CMM, the
organizations have developed skills
inventories
• Capable of selecting appropriate
specialists who may be needed for critical
topics such as testing, quality assurance,
22

web mastery, and the like
CMM Level 3: Defined - 3
• Key process areas
• Establishing an effective organizational
infrastructure
• Training of both managers and technical staff
• Inter-group coordination
• Utilization of formal design and code
inspections
23
CMM Level 3: Defined - 4
• Key process areas for People CMM
• Career development
• Competency-based practices
• Work force planning
• Analysis of the knowledge and the skills
needed by the organization
24
CMM Level 4: Managed - 1
• Organizations have established a firm
quantitative

basis

for

project

management and utilize both effective
measurements and also effective cost
and quality estimates
25
CMM Level 4: Managed - 2
• In terms of People CMM, organizations are able
to not only monitor their need for specialized
personnel, but are actually able to explore the
productivity and quality results associated from
the presence of specialists in a quantitative way
• Able to do long-range predictions of needs
• Mentoring
26
CMM Level 4: Managed - 3
• Key process areas
– Quantification of defect levels
– Productivity levels
– Activity-based costing
27
CMM Level 4: Managed - 4
• Key process areas for People CMM
– Mentoring
– Team building
– Organizational competency
– Ability to predict and measure the effect
of specialists and teams in quantitative
manner

28
CMM Level 5: Optimizing - 1
• Organizations are assumed to have
mastered the current state-of-theart of software project management
and development
29
CMM Level 5: Optimizing - 2
• In terms of People CMM, the requirements
are an extension of the Level 4 capabilities
and hence different more in degree than in
kind
• Stresses both coaching and rewards for
innovation
30
CMM Level 5: Optimizing - 3
• Key process areas
– Defect prevention
– Advancing

the

fundamental

software

engineering and management technologies
– Rapid and effective technology transfer
and

deployment

approaches

of

improvement
31
CMM Level 5: Optimizing - 4
• Key process areas for People CMM
– Encouragement of innovation
– Coaching
– Personal competency development
32
Level 1 Quality
• Software defect potentials run from 3 to more than
15 defects per function points, but average is 5
defects per function point
• Defect removal efficiency runs from less than 70%
to more than 95%, but average is 85%
• Average number of delivered defects is 0.75 defects
per function point
• Several hundred projects surveyed

33
Level 2 Quality
• Software defect potentials run from 3 to more than
12 defects per function points, but average is 4.8
defects per function point
• Defect removal efficiency runs from less than 70%
to more than 96%, but average is 87%
• Average number of delivered defects is 0.6 defects
per function point
• Fifty (50) projects surveyed

34
Level 3 Quality
• Software defect potentials run from 2.5 to more than
9 defects per function points, but average is 4.3
defects per function point
• Defect removal efficiency runs from less than 75% to
more than 97%, but average is 89%
• Average number of delivered defects is 0.47 defects
per function point
• Thirty (30) projects surveyed

35
Level 4 Quality
• Software defect potentials run from 2.3 to more
than 6 defects per function points, but average is 3.8
defects per function point
• Defect removal efficiency runs from less than 80%
to more than 99%, but average is 94%
• Average number of delivered defects is 0.2 defects
per function point
• Nine (9) projects surveyed

36
Level 5 Quality
• Software defect potentials run from 2 to 5 defects per
function points, but average is 3.5 defects per
function point
• Defect removal efficiency runs from less than 90% to
more than 99%, but average is 97%
• Average number of delivered defects is 0.1 defects
per function point
• Four (4) projects surveyed

37
References
• Inroads to Software Quality: by Alka Jarvis
and Vern Crandall
• Software Quality: Analysis and Guidelines
for Success by Capers Jones

38

Capability Maturity Model

  • 1.
  • 2.
  • 3.
    Steps Before ProcessImprovements 1 • Explain the problem, discuss why the change is necessary, and spell out the reasons in terms that are meaningful • Create a comfortable environment where people will feel free to openly voice their concerns and their opinions 3
  • 4.
    Steps Before ProcessImprovements 2 • Explain the details of the change, elaborate on the return on investment, how it will effect the staff, and when the change will take place • Explain how the change will be implemented and measured • Identify the individuals who are open-minded to accept the change more easily 4
  • 5.
    Steps Before ProcessImprovements 3 • Train employees to help them acquire needed skills • Encourage team work at all times and at all levels • Address each concern with care so there is no fear left and value each opinion • Make decisions based on factual data rather than opinions or gut feelings 5
  • 6.
    Steps Before ProcessImprovements -4 • Enforce decisions to reinforce the change 6
  • 7.
    Seven Steps ofthe Process Improvement • • • • • • • Plan Gather data Analyze findings Describe the ideal process Implement the ideal process Measure progress Standardize the process 7
  • 8.
    Process Improvement Programs • • • • • CapabilityMaturity Model (CMM) ISO 9000 Tick/IT Spice Total Quality Management (TQM) 8
  • 9.
  • 10.
    Software State-of-the-Art in1984 - 1 • More than half of the large software systems were late in excess of 12 months • The average costs of large software systems was more than twice the initial budget • The cancellation rate of large software systems exceeded 35% • The quality and reliability levels of delivered software of all sizes was poor 10
  • 11.
    Software State-of-the-Art in1984 - 2 • Software personnel were increasing by more than 10% per year • Software was the largest known business expense which could not be managed 11
  • 12.
    Software Engineering Institute •A research facility, located in University of Carnegie Mellon, Pennsylvania • Primarily funded by US DoD to explore software issues, and especially topics associated with defense contracts • US DoD is the largest producer and consumer of software in the world 12
  • 13.
    Capability Maturity Model •SEI developed a Capability Maturity Model (CMM) for software systems and an assessment mechanism • CMM has five maturity models • Initial • Repeatable • Defined • Managed • Optimizing 13
  • 14.
    CMM Level 1: Initial - 1 • Organizations are characterized by random or chaotic development methods with little formality and uninformed project management • Small projects may be successful, but larger projects are often failures 14 • Overall results are marginal to poor
  • 15.
    CMM Level 1:Initial - 2 • In terms of People CMM, level 1 organizations are deficient in training at both the technical staff and managerial levels 15
  • 16.
    CMM Level 1:Initial - 3 • SEI does not recommend any key process areas 16
  • 17.
    CMM Level 2:Repeatable- 1 • Organizations have introduced at least some rigor into project management and technical development tasks • Approaches such as formal cost estimating are noted for project management, and formal requirements gathering are often noted during development • Compared to initial level, a higher frequency of success and a lower incidence 17 of overruns and cancelled projects can be observed
  • 18.
    CMM Level 2:Repeatable- 2 • In terms of organizations adequate People have training CMM, begun for to level 2 provide managers and technical staff • Become aware of professional growth and the need for selecting and keeping capable personnel 18
  • 19.
    CMM Level 2:Repeatable- 3 • Key process areas – Requirements management – Project planning – Resource tracking – Quality assurance – Configuration management – Subcontract management 19
  • 20.
    CMM Level 2:Repeatable - 4 • Key process areas for People CMM – Compensation – Training – Staffing – Communication – Work environment 20
  • 21.
    CMM Level 3:Defined - 1 • Organizations have mastered a development process that can often lead to successful large systems • Over and above the project management and technical approached found in Level 2 organizations, the Level 3 groups have a 21 well-defined development process that can handle all sizes and kinds of projects
  • 22.
    CMM Level 3:Defined - 2 • In terms of People CMM, the organizations have developed skills inventories • Capable of selecting appropriate specialists who may be needed for critical topics such as testing, quality assurance, 22 web mastery, and the like
  • 23.
    CMM Level 3:Defined - 3 • Key process areas • Establishing an effective organizational infrastructure • Training of both managers and technical staff • Inter-group coordination • Utilization of formal design and code inspections 23
  • 24.
    CMM Level 3:Defined - 4 • Key process areas for People CMM • Career development • Competency-based practices • Work force planning • Analysis of the knowledge and the skills needed by the organization 24
  • 25.
    CMM Level 4:Managed - 1 • Organizations have established a firm quantitative basis for project management and utilize both effective measurements and also effective cost and quality estimates 25
  • 26.
    CMM Level 4:Managed - 2 • In terms of People CMM, organizations are able to not only monitor their need for specialized personnel, but are actually able to explore the productivity and quality results associated from the presence of specialists in a quantitative way • Able to do long-range predictions of needs • Mentoring 26
  • 27.
    CMM Level 4:Managed - 3 • Key process areas – Quantification of defect levels – Productivity levels – Activity-based costing 27
  • 28.
    CMM Level 4:Managed - 4 • Key process areas for People CMM – Mentoring – Team building – Organizational competency – Ability to predict and measure the effect of specialists and teams in quantitative manner 28
  • 29.
    CMM Level 5:Optimizing - 1 • Organizations are assumed to have mastered the current state-of-theart of software project management and development 29
  • 30.
    CMM Level 5:Optimizing - 2 • In terms of People CMM, the requirements are an extension of the Level 4 capabilities and hence different more in degree than in kind • Stresses both coaching and rewards for innovation 30
  • 31.
    CMM Level 5:Optimizing - 3 • Key process areas – Defect prevention – Advancing the fundamental software engineering and management technologies – Rapid and effective technology transfer and deployment approaches of improvement 31
  • 32.
    CMM Level 5:Optimizing - 4 • Key process areas for People CMM – Encouragement of innovation – Coaching – Personal competency development 32
  • 33.
    Level 1 Quality •Software defect potentials run from 3 to more than 15 defects per function points, but average is 5 defects per function point • Defect removal efficiency runs from less than 70% to more than 95%, but average is 85% • Average number of delivered defects is 0.75 defects per function point • Several hundred projects surveyed 33
  • 34.
    Level 2 Quality •Software defect potentials run from 3 to more than 12 defects per function points, but average is 4.8 defects per function point • Defect removal efficiency runs from less than 70% to more than 96%, but average is 87% • Average number of delivered defects is 0.6 defects per function point • Fifty (50) projects surveyed 34
  • 35.
    Level 3 Quality •Software defect potentials run from 2.5 to more than 9 defects per function points, but average is 4.3 defects per function point • Defect removal efficiency runs from less than 75% to more than 97%, but average is 89% • Average number of delivered defects is 0.47 defects per function point • Thirty (30) projects surveyed 35
  • 36.
    Level 4 Quality •Software defect potentials run from 2.3 to more than 6 defects per function points, but average is 3.8 defects per function point • Defect removal efficiency runs from less than 80% to more than 99%, but average is 94% • Average number of delivered defects is 0.2 defects per function point • Nine (9) projects surveyed 36
  • 37.
    Level 5 Quality •Software defect potentials run from 2 to 5 defects per function points, but average is 3.5 defects per function point • Defect removal efficiency runs from less than 90% to more than 99%, but average is 97% • Average number of delivered defects is 0.1 defects per function point • Four (4) projects surveyed 37
  • 38.
    References • Inroads toSoftware Quality: by Alka Jarvis and Vern Crandall • Software Quality: Analysis and Guidelines for Success by Capers Jones 38