SlideShare a Scribd company logo
1
Software Inspections
and Walkthroughs
Author: A. Frank Ackerman
Presented by Cynthia Johnson
EEL6883
2
Software Inspections
 “Software Inspections are a disciplined
engineering practice for detecting and
correcting defects in software artifacts,
and preventing their leakage into field
operations.” Don O'Neill, Don O' Neill
Consulting for SEI
3
Software Walkthroughs
 a form of software peer review "in which a
designer or programmer leads members of the
development team and other interested parties
through a software product, and the
participants ask questions and make
comments about possible errors, violation of
development standards, and other problems"
(IEEE Std. 1028-1997, IEEE Standard for
Software Reviews, clause 38.
4
What’s the difference?
 An inspection is a more formal process
than a walkthrough used to collect
metrics or statistics about the software
process
 Walkthrough is a more informal version of
an inspection
5
Why inspect software?
 Routine production of reliable software within
budget and on schedule continues to elude
most development organizations.
 While efforts are ongoing to make development
an industrial process, much of the work is still
done by “intellectual artisans”
 Artisan’s work is inherently difficult to bond and
can not be specified precisely.
 Inspections are a method to reduce variability
and tighten process control.
6
History of Inspections
 M.E. Fagan of IBM first defined
inspections in 1976.
 E. Yourdon was among the first to publish
a book on inspections in 1978.
 IEEE standard covering inspections first
appeared in 1988.
7
What do inspections
cover?
 Inspections and walkthroughs are
primarily intended to discover defects in
software artifacts.
 This is a static analysis technique of
software testing.
 In addition, inspections address three
major tasks of process management:
planning, measurement, control.
8
Inspection metrics
 Inspections are used to collect quantitative
quality data at defined points in the
development process.
 This can be used to give feedback to the
developers, feed-forward to future
development, and feed-into future steps of
process.
 Can also provide data on effectiveness of
inspection techniques.
9
What can be inspected?
 Inspections can be held a various points
in development process.
 Fagan recommended inspections on:
 Detailed design
 Cleanly compiled code
 Completion of unit test
10
Who is involved?
 At a minimum a formal inspection
includes:
 Designated moderator
 Author of the work
 At least one peer inspector
 Walkthroughs generally do not include
designated moderator and are often led
by the author of the software.
11
Steps of inspection
 Planning
 Overview
 Preparation
 Meeting
 Rework
 Follow-up
12
Planning
 Planning begins when entry criteria for
inspection type is met.
 Moderator is selected – usually a peer or
technical leader
 Selection may be made by developer, but this
is generally not an ideal situation
 Management is encouraged not to look at
individual inspection results
 Moderator verifies that product meets entry
criteria and schedules future steps.
13
Overview
 Presentation to inspectors with any
background information needed to
properly review software product.
 Purpose is educational only
 Data collected is author preparation time
and time spent on presentation.
14
Preparation
 Individual activity
 Author collects all material required for
inspection
 Inspectors study the material and
complete inspection log.
 Defects are noted at this step, but not
collected
15
Meeting
 Meeting is conducted by moderator
 Agenda includes:
 Introduction
 Establishing readiness
 Examining material and recording defects
 Review defects
 Determine disposition
 Debrief
 Defect data is collected this time
16
Common meeting
problems
 Interpersonal tensions are most likely to arise
at this point
 Experienced moderators can detect and
defuse this tension
 The more inspections that occur, the less likely
interpersonal tensions are to interfere
 Effort should be made by all participants to
keep emphasis on producing quality product,
not making fault finding personal
17
Rework
 Performed by the author in response to
defect disposition determined at meeting
18
Follow-up
 Moderator verifies that corrections are
made
 Moderator completes inspection
management report and defect summary
report
19
Inspection Roles
 Author – developer of work product
 Moderator – an inspector responsible for
organizing and reporting on inspection
 Reader – an inspector who guies the
examination of the product
 Recorder – an inspector who enters all the
defects found on the defect list
 Inspector – Member of inspection team. Often
chosen to represent specific role- designer,
tester, technical writer, SQA, etc
20
Inspection as Process
Control
 When employed at various points
through out the process, the completion
of an inspection can trigger entry into a
new development phase.
 Generally, Software Development Plan
spells out entry and exit criteria and
required participants in each type of
inspection.
21
Aspects of inspections
 Initial introduction of inspection into an
organization can cause anxiety and
tension among developers
 When it becomes clear that management
supports inspection as a quality
improvement technique and not a witch
hunt, the effectiveness of the inspection
increases.
22
Inspection Data
 The collection and analysis of data is
what sets inspections apart from other
peer review techniques such as
walkthroughs.
 This data can be used in a variety of
ways by a variety of personnel.
23
Data customers
 First-line managers – amount of rework
generates schedule information
 Next phase developers or verifiers get
“intelligence” report on status of software
 Quality assurance personnel use data on
amount of material inspected, amount of
inspection material, speed of examination
to examine inspection effectiveness
24
More data usage
 Quality assurance is responsible for
recommending inspection and
preparation rates – actual review data
makes these more realistic
 Defect rates and types discovered at
different points can point to most effective
place to review. For example, design
inspections may prove more cost
effective than code.
25
Alternatives
 There is a “cost of quality” associated with
walkthroughs and inspections. In software,
person-hours are the highest measurable
expense
 Many organizations find that the cost of
inspection does not generate a return on
investment
 Some inspect a percentage of code
 Others inspect only critical portions
26
Conclusions
 Inspections have been proven an efficient
and effective method for improving
software quality
 In conjunction with testing, audits and
formal verification a successful, quality
product can be produced
27
My opinion
 When done correctly, walkthroughs and
inspections are valuable defect finding tools.
 When not supported by management or bought
into by development personnel, they become
“busy work” for developers.
 It is important for developers to not take
criticism personally.
 It is equally important for inspectors to look for
defects and not criticize because developer
didn’t code exactly the way they would
28
References
 http://www.sei.cmu.edu/str/descriptions/in
spections_body.html
 IEEE Std. 1028-1997, IEEE Standard for
Software Reviews

More Related Content

PPTX
Lecture 2 - software testing SE 412.pptx
PPTX
Topic: Software Reviews Presentation.pptx
PPT
Reviews Checklists
PPT
Software Inspection And Defect Management
PPTX
software project management Software inspection
PPT
Software quality assurance
PPT
Reviews checklists
PPTX
Quality management
Lecture 2 - software testing SE 412.pptx
Topic: Software Reviews Presentation.pptx
Reviews Checklists
Software Inspection And Defect Management
software project management Software inspection
Software quality assurance
Reviews checklists
Quality management

Similar to Ackerman-p99.ppt (20)

PPT
Lecture 10 Static Testing.ppt
PPT
SQA presenatation made by krishna ballabh gupta
PPT
PPT
PPT
Software Quality Assurance
PPT
ISTQB / ISEB Foundation Exam Practice
PDF
PPT
ISTQBCH3StaticxvvvbbbdghhhjvvTesting.ppt
PPS
ISTQB Foundation - Chapter 3
PPT
SoftwareInspections.pptbjhbbhjhbjjhjjbbvv
PPTX
Software quality assurance
PPT
Reviews checklists
PPTX
Software engineering
PDF
Softwarequalityassurance with Abu ul hassan Sahadvi
PPT
Software Engineering (Software Quality Assurance)
PPT
Static testing techniques
PPTX
Quality Control
PPT
Unit 8
PPTX
Quality management
Lecture 10 Static Testing.ppt
SQA presenatation made by krishna ballabh gupta
Software Quality Assurance
ISTQB / ISEB Foundation Exam Practice
ISTQBCH3StaticxvvvbbbdghhhjvvTesting.ppt
ISTQB Foundation - Chapter 3
SoftwareInspections.pptbjhbbhjhbjjhjjbbvv
Software quality assurance
Reviews checklists
Software engineering
Softwarequalityassurance with Abu ul hassan Sahadvi
Software Engineering (Software Quality Assurance)
Static testing techniques
Quality Control
Unit 8
Quality management
Ad

More from KomalSinghGill (11)

PDF
Software requirement specifications document.pdf
PDF
junit-160729073220 eclipse software testing.pdf
PDF
testplan software testing planing tests.pdf
PPTX
Introduction_to_Maven eclipse sw testing.pptx
PPT
2. Lect 27 to 28 White box s/w testing.ppt
PPTX
Introduction_to_Maven software testing.pptx
PPTX
Software Testing life cycle presentation.pptx
PPTX
basic software testing principles and obectives.pptx
PPT
9-Coding.ppt
PPT
6&8-Design.ppt
PDF
Process Modelling and DFD.pdf
Software requirement specifications document.pdf
junit-160729073220 eclipse software testing.pdf
testplan software testing planing tests.pdf
Introduction_to_Maven eclipse sw testing.pptx
2. Lect 27 to 28 White box s/w testing.ppt
Introduction_to_Maven software testing.pptx
Software Testing life cycle presentation.pptx
basic software testing principles and obectives.pptx
9-Coding.ppt
6&8-Design.ppt
Process Modelling and DFD.pdf
Ad

Recently uploaded (20)

PPTX
additive manufacturing of ss316l using mig welding
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPTX
Artificial Intelligence
DOCX
573137875-Attendance-Management-System-original
PPTX
Construction Project Organization Group 2.pptx
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PDF
737-MAX_SRG.pdf student reference guides
PPTX
Internet of Things (IOT) - A guide to understanding
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
additive manufacturing of ss316l using mig welding
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
Artificial Intelligence
573137875-Attendance-Management-System-original
Construction Project Organization Group 2.pptx
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
CYBER-CRIMES AND SECURITY A guide to understanding
Automation-in-Manufacturing-Chapter-Introduction.pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Model Code of Practice - Construction Work - 21102022 .pdf
III.4.1.2_The_Space_Environment.p pdffdf
737-MAX_SRG.pdf student reference guides
Internet of Things (IOT) - A guide to understanding
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
Operating System & Kernel Study Guide-1 - converted.pdf

Ackerman-p99.ppt

  • 1. 1 Software Inspections and Walkthroughs Author: A. Frank Ackerman Presented by Cynthia Johnson EEL6883
  • 2. 2 Software Inspections  “Software Inspections are a disciplined engineering practice for detecting and correcting defects in software artifacts, and preventing their leakage into field operations.” Don O'Neill, Don O' Neill Consulting for SEI
  • 3. 3 Software Walkthroughs  a form of software peer review "in which a designer or programmer leads members of the development team and other interested parties through a software product, and the participants ask questions and make comments about possible errors, violation of development standards, and other problems" (IEEE Std. 1028-1997, IEEE Standard for Software Reviews, clause 38.
  • 4. 4 What’s the difference?  An inspection is a more formal process than a walkthrough used to collect metrics or statistics about the software process  Walkthrough is a more informal version of an inspection
  • 5. 5 Why inspect software?  Routine production of reliable software within budget and on schedule continues to elude most development organizations.  While efforts are ongoing to make development an industrial process, much of the work is still done by “intellectual artisans”  Artisan’s work is inherently difficult to bond and can not be specified precisely.  Inspections are a method to reduce variability and tighten process control.
  • 6. 6 History of Inspections  M.E. Fagan of IBM first defined inspections in 1976.  E. Yourdon was among the first to publish a book on inspections in 1978.  IEEE standard covering inspections first appeared in 1988.
  • 7. 7 What do inspections cover?  Inspections and walkthroughs are primarily intended to discover defects in software artifacts.  This is a static analysis technique of software testing.  In addition, inspections address three major tasks of process management: planning, measurement, control.
  • 8. 8 Inspection metrics  Inspections are used to collect quantitative quality data at defined points in the development process.  This can be used to give feedback to the developers, feed-forward to future development, and feed-into future steps of process.  Can also provide data on effectiveness of inspection techniques.
  • 9. 9 What can be inspected?  Inspections can be held a various points in development process.  Fagan recommended inspections on:  Detailed design  Cleanly compiled code  Completion of unit test
  • 10. 10 Who is involved?  At a minimum a formal inspection includes:  Designated moderator  Author of the work  At least one peer inspector  Walkthroughs generally do not include designated moderator and are often led by the author of the software.
  • 11. 11 Steps of inspection  Planning  Overview  Preparation  Meeting  Rework  Follow-up
  • 12. 12 Planning  Planning begins when entry criteria for inspection type is met.  Moderator is selected – usually a peer or technical leader  Selection may be made by developer, but this is generally not an ideal situation  Management is encouraged not to look at individual inspection results  Moderator verifies that product meets entry criteria and schedules future steps.
  • 13. 13 Overview  Presentation to inspectors with any background information needed to properly review software product.  Purpose is educational only  Data collected is author preparation time and time spent on presentation.
  • 14. 14 Preparation  Individual activity  Author collects all material required for inspection  Inspectors study the material and complete inspection log.  Defects are noted at this step, but not collected
  • 15. 15 Meeting  Meeting is conducted by moderator  Agenda includes:  Introduction  Establishing readiness  Examining material and recording defects  Review defects  Determine disposition  Debrief  Defect data is collected this time
  • 16. 16 Common meeting problems  Interpersonal tensions are most likely to arise at this point  Experienced moderators can detect and defuse this tension  The more inspections that occur, the less likely interpersonal tensions are to interfere  Effort should be made by all participants to keep emphasis on producing quality product, not making fault finding personal
  • 17. 17 Rework  Performed by the author in response to defect disposition determined at meeting
  • 18. 18 Follow-up  Moderator verifies that corrections are made  Moderator completes inspection management report and defect summary report
  • 19. 19 Inspection Roles  Author – developer of work product  Moderator – an inspector responsible for organizing and reporting on inspection  Reader – an inspector who guies the examination of the product  Recorder – an inspector who enters all the defects found on the defect list  Inspector – Member of inspection team. Often chosen to represent specific role- designer, tester, technical writer, SQA, etc
  • 20. 20 Inspection as Process Control  When employed at various points through out the process, the completion of an inspection can trigger entry into a new development phase.  Generally, Software Development Plan spells out entry and exit criteria and required participants in each type of inspection.
  • 21. 21 Aspects of inspections  Initial introduction of inspection into an organization can cause anxiety and tension among developers  When it becomes clear that management supports inspection as a quality improvement technique and not a witch hunt, the effectiveness of the inspection increases.
  • 22. 22 Inspection Data  The collection and analysis of data is what sets inspections apart from other peer review techniques such as walkthroughs.  This data can be used in a variety of ways by a variety of personnel.
  • 23. 23 Data customers  First-line managers – amount of rework generates schedule information  Next phase developers or verifiers get “intelligence” report on status of software  Quality assurance personnel use data on amount of material inspected, amount of inspection material, speed of examination to examine inspection effectiveness
  • 24. 24 More data usage  Quality assurance is responsible for recommending inspection and preparation rates – actual review data makes these more realistic  Defect rates and types discovered at different points can point to most effective place to review. For example, design inspections may prove more cost effective than code.
  • 25. 25 Alternatives  There is a “cost of quality” associated with walkthroughs and inspections. In software, person-hours are the highest measurable expense  Many organizations find that the cost of inspection does not generate a return on investment  Some inspect a percentage of code  Others inspect only critical portions
  • 26. 26 Conclusions  Inspections have been proven an efficient and effective method for improving software quality  In conjunction with testing, audits and formal verification a successful, quality product can be produced
  • 27. 27 My opinion  When done correctly, walkthroughs and inspections are valuable defect finding tools.  When not supported by management or bought into by development personnel, they become “busy work” for developers.  It is important for developers to not take criticism personally.  It is equally important for inspectors to look for defects and not criticize because developer didn’t code exactly the way they would