Software Process Assessments
Lecture # 29
1
1
Software Process Assessments
• Since software applications are built by
human beings, the methods, tools, and
practices used for software have become
subject to study and analysis
• Software process assessments are normally
carried out onsite by independent assessors
• Inhouse assessments are also common
2
2
• Formal software assessments appear to have
originated within the IBM corporation in
the early 1970s
• An assessment finds all the strengths and
weaknesses associated with software
3
3
Software Process Assessments
• The primary goal of software process
assessments is to gather qualitative
information about the practices, methods,
tool suites, and organizational structures
used for software
• Some organizations gather additional
information on topics such as office space
and ergonomic factors used by the
organizations undergoing the assessment
4
4
Software Process Assessments
• As the software has become a worldwide
business phenomenon, the need for
software process assessments has become
more and more important
• Software is a very troublesome and difficult
technology
• For large systems, failures outnumber
successes by a considerable margin
5
5
Software Process Assessments
• Software process assessment data is
normally gathered by means of structured
interviews with managers and technical
personnel
• To ensure consistency among enterprises,
standard questionnaires are utilized by most
of the assessment methods, although the
questions vary from method to method
6
6
Software Process Assessments
• Scripts and questionnaires for data
collection used by many of the major kinds
of software assessments are now utilized
throughout the world
• Many forms of software assessments exist,
following is a partial list of assessment
methods
7
7
Software Process Assessment
Methodologies
•
•
•
•
•
•
•
The SPR assessment methodology
The SEI assessment methodology
The ISO assessment methodology
The SPICE assessment methodology
The TickIT assessment methodology
The Trillium assessment methodology
The Howard Rubin Associates assessment
methodology
• The Gartner Group assessment methodology
8
8
Software Process Assessments
• A software process assessment is somewhat
equivalent to undergoing an annual medical
examination
• The annual physical examination is not
intended to cure any specific disease. The
main purpose is to find out about the health
of the patient
9
9
Software Process Assessments
• If the physical examination finds any
serious problems, then the physician can
prescribe a therapy program
• However, the examination itself is
performed for diagnostic purposes, not for
therapeutic purposes
10
10
Software Process Assessments
• Unfortunately, this analogy of medical
checkups is overlooked by clients of
software process assessments
• Companies regard the assessment as an end
in itself, rather than a means to an end
• Assessments by themselves will not
improve software quality or productivity, or
cure any specific problems that are found
11
11
Software Process Assessments
• But without the assessment, many problems
would remain invisible
• Assessments should be viewed as nothing
more than annual checkups to ensure that
no new problems have occurred and that
progress is being made on curing problems
found during the last assessment
12
12
Software Process Assessments
• Out of a total of 250 factors that can affect
the outcome of a software development
project, an individual project would be
affected by 15 to 20 factors
• These factors are collected from projects in
the domains of system software,
information systems, military software,
commercial software, outsourced projects,
and end user applications
13
13
Software Process Assessments
• The major topics that are covered by
software process assessment can be
summarized by ten key process areas that
are common among many of the various
assessment methods
14
14
Software Process Assessments
• These ten areas are not specific to any
individual kind of assessment, but are the
topics examined by several forms of
assessment because they have a very
significant impact on software project
schedules, productivity, and quality levels
15
15
Following two slides to be
inserted
Key Process Areas
16
16
Key Process Areas 1
• Project management methods such as
estimation
• Requirementsgathering and analysis
methods
• Design and specification methods
• Coding methods
• Reusability methods
17
17
Key Process Areas 2
• Change control methods
• User documentation methods
• Pretest defect removal methods such as
inspections
• Testing methods and tools
• Maintenance methods and tools
18
18
• Software process assessments attempts to
identify practices that can lead to successful
outcomes on software projects
• Conversely, process assessments also seek
to identify harmful practices that might lead
to delays or unacceptable outcomes
19
19
• As software projects are very labor
intensive and require exceptional skills on
the part of technical and management
personnel, software assessments may also
examine the factors that are concerned with
hiring and supporting software personnel
• Following is a list of ten key personnelrelated
topics that may be examined during software
process assessments
20
20
Following two slides to be
inserted
KeyPersonnel Topics
21
21
Key PersonnelRelated Topics 1
•
•
•
•
•
Staff hiring practices
Staff training and education
Management training and education
Specialists and occupational groups
Compensations levels
22
22
Key PersonnelRelated Topics 2
•
•
•
•
•
Office ergonomics
Organizational structures
Morale surveys and results
Work patterns and overtime
Staff turnover rates
23
23
Following slide to be inserted
Introduction to Some Assessment
Methods
24
24
Introduction to Some Assessment
Methods
25
25