Static Testing
Presented by
Mrs. [Link],
Assistant Professor,
GVPCEW
• Dynamic testing uncovers the bugs at a later stage of SDLC and hence
is costly to debug.
• Dynamic testing cannot detect all the potential bugs.
• Static testing is a complimentary technique to dynamic testing
technique to acquire higher quality software.
• Static testing techniques do not execute the software and they do not
require the bulk of test cases. This type of testing is also known as
non-computer based testing or human testing.
• Check the software product at each SDLC stage for conformance with
the required specifications or standards.
• Static testing has proved to be a cost-effective technique of error
detection.
• Static testing provides the exact location of a bug, whereas dynamic
testing provides no indication of the exact source code location of the
bug.
Objectives:
• To identify errors in any phase of SDLC as early as possible
• To verify that the components of software are in conformance with its
requirements.
• To provide information for project monitoring.
• To improve the software quality and increase productivity.
Types of Static Testing:
• Software inspections
• Walkthroughs
• Technical reviews
Software inspections:
• First introduced at IBM by Fagan in the early 1970s .
• Used to tackle software quality problems because they allow the detection
and removal of defects after each phase of the software development process.
• Software inspection does not execute the code, so it is machine-independent.
• The inspection process is carried out by a group of peers.
• The inspection process is a formal process of verifying a software product.
The documents which can be inspected are SRS, SDD, code, and test plan.
• An inspection process involves the interaction of the following elements:
a) Inspection steps
b) Role for participants
c) Item being inspected
Entry and Exit Criteria:
• Entry Criteria: The artifact must be ready for inspection (e.g., code
compiled successfully).
• Exit Criteria: Post-inspection, the artifact must remain unchanged
until all defects are addressed to ensure traceability and effectiveness.
Inspection Team:
• Four team members:
Author/Owner/Producer: A programmer or designer responsible for
producing the program or document. He is also responsible for fixing
defects discovered during the inspection process.
Inspector: A peer member of the team. He finds errors, omissions, and
inconsistencies in programs and documents.
Moderator: A team member who manages the whole inspection
process. He schedules, leads and controls the inspection session. He is
the key person with the responsibility of planning and successful
execution of the inspection.
Recorder :One who records all the results of the inspection meeting.
Inspection Process:
[Link]:
•Identify the artifact to inspect (e.g., code, design document).
•Assign roles especially a moderator and define goals (e.g., defect detection
types like design or interface errors).
•Ensure readiness, schedule the meeting, and distribute materials.
[Link]:
• Purpose, function, and development approach of the artifact.
•The moderator explains the inspection's objectives so the team understands its
context.
[Link] Preparation:
•Reviewers examine the artifact independently.
•They may prepare lists of questions, change requests ,and suggestions.
•These are submitted to the moderator before the meeting.
4. Inspection Meeting / Examination:
•The author may present the code or document.
•A presenter walks through it while the record keeper logs CRs.
•The moderator directs the discussion to stay focused.
5. Re‑work
•The author corrects the identified defects.
•The team ensures minutes and CR lists are maintained.
[Link] and Follow‑up
•The moderator verifies fixes and artifacts are ready for release.
•If unresolved issues remain, a follow-up inspection is called.
Benefits of Inspection process:
•Bug Detection & Prevention
•Resource Efficiency
•Quality Improvement
•Project Management
•Coupling & Cohesion
•Learning
•Process Refinement
Effectiveness Of Inspection Process:
• The inspection process was found to be effective as compared to
structural testing because the inspection process alone found 52%
errors. Of the remaining 48% of defects, on an aver- age, only 17% are
detected by structural testing.
• Error detection efficiency = Error found by an inspection X
100
Total errors in the item before inspection
Cost Of Inspection Process:
• The cost of inspection can be 5–10% of the total cost of the project.
Variants of inspection process:
Active Design Reviews:
• For inspecting the design stage of SDLC.
• In this process, several reviews are conducted targeting a particular
type of bugs and conducted by the reviewers who are experts in that
area.
Formal Technical Asynchronous Review Method (FTArm):
• The idea is to eliminate the meeting inspection phase.
Gilb Inspection:
• Gilb and Graham defined this process.
Three different roles are defined in this type of inspection:
• Leader is responsible for planning and running the inspection.
• Author of the document
• Checker is responsible for finding and reporting the defects in the
document.
• Before inspection it checks for entry criteria.
• After the completion of inspection checks for exit criteria.
Humphrey’s Inspection Process:
• It was described by Watts Humphrey.
• In the analysis phase, individual logs are analysed and combined into a
single list.
N-Fold Inspection:
• This process consists of many independent inspection teams. This
process needs a coordinator who coordinates various teams, collects
and collates the inspection data received by them. For this purpose, he
also meets the moderator of every Inspection team.
Phased Inspection:
• Designed to verify the product in a particular domain.
• In this process, inspec- tion is divided into more than one phase. There
is an ordered set of phases and each phase is designed such that it will
check a particular feature in the product.
• There are two types of phases:
1. Single inspector.
2. Multiple inspector .
Structured Walkthroughs:
• proposed by Yourdon.
A typical structured walkthrough team consists of the following members:
• Coordinator- Organizes, moderates, and follows up the walkthrough activities.
• Presenter/Developer- Introduces the item to be inspected. This member is
optional.
• Scribe/Recorder- Notes down the defects found and suggestion pro- posed by
the members.
• Reviewer/Tester- Finds the defects in the item.
• Maintenance Oracle- Focuses on long-term implications and future
maintenance of the project.
• Standards Bearer- Assesses adherence to standards.
• User Representative/Accreditation Agent- Reflects the needs and concerns of
the user.
Technical Reviews:
• A Technical review is intended to evaluate the software in the light of
development standards, guidelines, and specifications and to provide
the management with evidence that the development process is being
carried out according to the stated objectives.
• A review is similar to an inspection or walkthrough, except that the
review team also includes management.
• Therefore, it is considered a higher-level technique as compared to
inspection or walkthrough.