0% found this document useful (0 votes)
57 views24 pages

BTT 310: SW Testing & Inspection: Chapter 04: Inspections

This document defines and describes different types of manual quality assurance inspections for software testing: reviews, structured walkthroughs, and Fagan inspections. It provides details on the definition, process, roles, and benefits of inspections. Key points include: - Reviews are the least formal and have no defined roles or procedures, while inspections are the most rigorous with defined roles and a structured process. - The inspection process involves planning, individual preparation, an inspection meeting, rework, and follow up. - Inspection team roles include moderator, author, reader, recorder, and inspectors. - Inspections aim to efficiently detect faults through a collaborative team effort and application of checklists.

Uploaded by

kamarulzamani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views24 pages

BTT 310: SW Testing & Inspection: Chapter 04: Inspections

This document defines and describes different types of manual quality assurance inspections for software testing: reviews, structured walkthroughs, and Fagan inspections. It provides details on the definition, process, roles, and benefits of inspections. Key points include: - Reviews are the least formal and have no defined roles or procedures, while inspections are the most rigorous with defined roles and a structured process. - The inspection process involves planning, individual preparation, an inspection meeting, rework, and follow up. - Inspection team roles include moderator, author, reader, recorder, and inspectors. - Inspections aim to efficiently detect faults through a collaborative team effort and application of checklists.

Uploaded by

kamarulzamani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 24

BTT 310:

SW TESTING &
INSPECTION
Chapter 04: Inspections
Definitions
Manual quality assurance in three variants:
 Review through sending documents to the review

team members
 Fast, cheap, flexible, low performance
 Structured walkthrough
 Medium use of resources and moderate performance
 Fagan inspection
 Expensive and time consuming, but efficient and
effective
Definition: Review
 Review here refers to methods which are no formal inspection, partially
review is used in the literature as a generic term for all manual test methods
(formal inspection included)
 Often not only focused on the efficient detection of faults, but also as a means
for:
 decision making

 solving of conflicts (e.g. concerning design decisions)

 exchange of information

 brainstorming

 Normally no formal procedure exists for the execution and the choice of the
participants as well as their roles
 Often no record and analysis of review data
 Often no quantitative objectives
Definition: Software Inspection
 Software inspection
 Manual quality control of a product
 Small group of participants with defined roles
 Aims at the detection of faults, not at finding the solutions
 Requires a functioning development process

 An inspection can be executed in every phase of a software


development (inspection of the requirements, inspection of
the design, inspection of the source codes, inspection of test
cases)
Inspection vs Walkthrough
 The main differences
between reviews
respectively
walkthroughs and
formal software
inspections are
 Inspections have the sole aim to
detect faults efficiently
 Inspections are done as a defined
process
Inspection vs Walkthrough:
Process of review
Properties Inspection Walkthrough
Overview meeting Yes No
Participant’s Yes - thorough Yes - brief
preparations
Review session Yes Yes
Follow-up of Yes No
corrections
Formal training of Yes No
participants
Participant’s use of Yes No
checklists
Error-related data Formally required Not formally
collection required
Review 1) Inspection session
documentation findings report
2) Inspection session
summary report
Why Software Inspections
 Many quality characteristics – e.g. understandability,
changeability, informational value of identifiers and comments –
are testable only manually
 Undetected faults from the definition and design phase later
cause high consequential costs
 As inspections are executed in a team, the knowledge base is
enhanced
 Implements the principle of external quality control
 Delivery of high-quality results to the subsequent software
development phase (milestone)
 Responsibility for the quality is assigned to the whole team
Requirement for Inspections
 The required time has to be scheduled - project planning
 The participants have to be skilled.
 The procedure of the inspections has be written down and their
observance has to be controlled
 The project has to be done well-structured and controlled
 There has to be a quality management process with defined
quality objectives
 The results of inspections must not be used in personnel
evaluation
 The period between registration and execution of an inspection
has to be short, i.e., inspections are executed with high priority
Inspection Team
 Moderator
 Accepted specialist with special training as moderator

 Chairs meeting and controls that the inspection is executed

according to the scheduled procedure


 Author (editor)
 Is responsible for the correction of faults detected during the

inspection and normally has generated the product to be tested


 The Author is never the moderator, reader or recorder

 Reader
 Leads the inspection team through the session

 Has to be able to describe illustratively the different parts of the

work
Inspection Team
 Recorder
 Notes and classifies all faults and supports the moderator with the

making of the remaining reports


 Inspectors
 All members of the inspection team (also the moderator, author,

reader, and recorder) are inspectors whose aim has to be the


detection of faults
 Further inspectors can be, e.g.

 project members from the same project


 consultants (standards!)
 system specialists
 Size of the review team: 3 to 7 members
Inspection Team: Meeting
Procedures
 The minimal number of participants in inspections
is 3: (moderator/recorder, reader, author)
 If only 3 persons form an inspection team, the
moderator is always the recorder at the same time
 In every inspection there is an author
 The inspection team should be as small as possible
(max. 7 persons). Everybody should bring in a
unique expertise. Additional participants reduce the
efficiency and effectiveness of the inspection
Inspection Process

Planning

Overview Follo w-up


Individual
Rework
pr eparation
Inspection
meeting
Inspection Phase: Planning
 Planning is done at the start of the project. Time, resources,
involved persons, etc. must be assigned
 The author informs the moderator that his product is ready
for inspection
 The moderator checks whether the product fulfils the input
criteria (usually very simple things, like „no syntax errors“)
 If the product does not fulfill the input criteria the
moderator informs the author about the required
modifications
 Finally, the moderator invites
Inspection Phase: Overview
 The overview is optional. It serves as information for the inspectors
about the product. The following reasons may exist for an overview
 The product is critical inside the project, i.e., it has a key position

 The product is extensive, complex or is connected to numerous

other positions
 The used technology is new

 etc.

 The overview normally takes roughly 2 to 3 hours


 Faults already detected during the overview have to be corrected
before the material is distributed to the inspectors for preparation.
Inspection Phase: Preparation
 Every inspector individually prepares for the inspection meeting and
formlessly notes down all detected faults and ambiguities
 For this purpose every inspector gets a complete set of the required
documents
 The documents must not be changed until the review
 There should be a guide value for the preparation rate to schedule the
preparation time
 Too low values cause an insufficient knowledge of the inspectors

during the inspection meeting


 Too high preparation times reduce the efficiency

 The main objective of the preparation is the understanding of the


product, not fault detection
Inspection Phase: Inspection
Meeting
 The moderator introduces the agenda of the meeting and introduces the
participants and their roles
 The reader reads through the documents explaining the content, with appropriate
speed and piecewise
 The inspectors search for faults during the talk
 Discussions are allowed only concerning faults and there types. The moderator has
to make sure that all inspectors concentrate on the fault detection
 Detected faults are classified if possible (type, priority) and noted by the recorder
 The author answers questions
 Checklists can facilitate and systematize the inspection
 The goal of the inspection is synergy for the purpose of fault detection. Maximum
duration: 2 to 3 hours
 There should be a guideline for the inspection speed (e.g. LOC/hour)
 It is determined whether the product is accepted, conditionally accepted or a re-
inspection is required
Inspection Phase: Rework
 The author corrects the faults listed in the inspection protocol:
 Fault correction
 It turns out that an assumed faulty position is correct. A comment

of the author in the follow-up is necessary


 It is possible that faults should not be corrected directly. The fault

is then put into the change request system to be dealt with later
 The author gives the revised version of the product to the moderator,
if the product was conditionally accepted in the inspection meeting
or a re-inspection is necessary
 If the product was accepted, this phase is completed. The product is
brought under configuration control
Inspection Phase: Follow-Up
 If the product was conditionally accepted during
the inspection meeting the verification can be done,
e.g., by the author and the reader alone.
 If a reinspection was decided, a conventional
inspection meeting takes place that is focused on
the faults.
 Inspection reports are to be made.
Inspection checklists
 Checklist of common errors should be used to drive
the inspection.
 Error checklists are programming language
dependent and reflect the characteristic errors that
are likely to arise in the language.
 In general, the 'weaker' the type checking, the
larger the checklist.
 Examples: Initialisation, Constant naming, loop
termination, array bounds, etc.
Inspection checks 1
Data faults • Are all program variables initialised before their values are used?
• Have all constants been named?
• Should the upper bound of arrays be equal to the size of the array or Size -1?
• If character strings are used, is a delimiter explicitly assigned?
• Is there any possibility of buffer overflow?

Control faults • For each conditional statement, is the condition correct?


• Is each loop certain to terminate?
• Are compound statements correctly bracketed?
• In case statements, are all possible cases accounted for?
• If a break is required after each case in case statements, has it been included?

Input/output faults • Are all input variables used?


• Are all output variables assigned a value before they are output?
• Can unexpected inputs cause corruption?
Inspection checks 2
Interface faults • Do all function and method calls have the correct number of
parameters?
• Do formal and actual parameter types match?
• Are the parameters in the right order?
• If components access shared memory, do they have the same
model of the shared memory structure?

Storage management • If a linked structure is modified, have all links been correctly
faults reassigned?
• If dynamic storage is used, has space been allocated correctly?
• Is space explicitly de-allocated after it is no longer required?

Exception • Have all possible error conditions been taken into account?
management faults
Reference: Ian 8ed

Inspection rate

 500 statements/hour during overview.


 125 source statement/hour during individual
preparation.
 90-125 statements/hour can be inspected.
 Inspection is therefore an expensive process.
 Inspecting 500 lines costs about 40 man/hours
effort - about £2800 at UK rates.
Reference: Niina Ch09 ms165

Making Inspections Effective

4 reasons for being effective:


1. They provide an opportunity to look at the entire
work product in one go
2. They make use of combined knowledge and
group expertise
3. The take advantage of different viewpoints
4. They improved the odd of finding problems.
Comparison of Review Reference: Niina Ch09 ms168

Techniques
3 Golden rules:
1. Use walkthrough for training
2. Use inspections to improve the quality of the
work product and its process
3. Use Desk Check for individual review

You might also like