You are on page 1of 17

CHAPTER 3: STATIC TESTING

Learning Objectives for Static Testing


Static Testing Basics
• Recognize types of software work product that can be examined by the different static testing
techniques
• Use examples to describe the value of static testing
• Explain the difference between static and dynamic techniques, considering objectives, types of
defects to be identified, and the role of these techniques within the software lifecycle
Review Process
• Summarize the activities of the work product review process
• Recognize the different roles and responsibilities in a formal review
• Explain the differences between different review types: informal review, walkthrough, technical
review, and inspection
• Apply a review technique to a work product to find defects
• Explain the factors that contribute to a successful review
Types of software work product
examined in static testing
techniques
Business Functional Security
Requirements Requirements Requirements

User story Acceptance Criteria Epics

Architecture and
Code Web pages
Design Specification

Testware User guides Project Plans


Examples to describe the value
of static testing
• Defects found early are often much cheaper to remove than defects
found later in the lifecycle
Examples to describe the value
of static testing
• Defects found in the definition and analysis stage ensures the quality in the
following stages.
• Resolving defects in the development stage takes more time than in
previous stages.
• Sometimes it is more difficult to understand failures found in the test stage
because it involves analyzing more than one variable and component
already integrated working as a single system.
• In projects with high logical complexity, more faults are usually found after
the first reported failure was resolved.
• Help to discover some defects that in test stage is difficult to found.
• Preventing risks that could even be presented after the software is
deployed and in active use.
Explain the difference between
static and dynamic techniques

Static Testing Dynamic Testing


Found Defects Found Failures

Defects are found with less Failures will not be easy


effort encounters it

Focuses on internally hidden Focuses on externally visible


quality behavior
Types of defects to be identified
Review Process
• Informal review • Formal review
The formal reviews depends:
• The software development lifecycle model
• The maturity of the development process
• The complexity of the work product reviewed
• Legal or regulatory requirements
• Audit trail
Review focus
The focus of a review depends on the agreed objectives of the review:
• Gaining understanding
• Finding defects
• Educating participants
• Discussing and deciding by consensus.
Issue
Fixing and
Planning Initiate review Individual review communication
reporting
and analysis

Activities
Distributing the Reviewing work Creating defect
Defining the scope Communicating
work products product reports

of the Estimating effort


Explaining the
scope …
Identifying
potential defects,
recommendations
Analyzing
Fixing defects
found

work
and questions

Communicating
Answering

product
Identifying review Evaluating and defects to the
questions about
characteristics documenting appropriate person
the review
or team

review Selecting and


allocating people
Take decisions
Recording updated
status of defects

process Defining the entry


and exit criteria
•Gathering metrics

Checking that entry Checking that exit


criteria are met criteria are met

Accepting the
work product when
the exit criteria are
reached
Roles and responsibilities in a
formal review
Author Management Facilitator Review Leader
Roles and responsibilities in a
formal review
Reviewers Scribe
Review Types
Inspection
Technical
review

Walkthrough
Informal review
Apply a review technique to a
work product to find defects
Checklist- Role-based
based
Scenarios and
Ad hoc dry runs Perspective-based
Factors that contribute to a
successful review
• Each review has clear objectives …
• Review types are applied which are suitable to achieve the objectives and
are appropriate to the type and level of software work products and
participants.
• Any review techniques used, such as …
• Any checklists used address the main risks and are up to date.
• Large documents are written and reviewed in small chunks…
• Participants have adequate time to prepare.
• Reviews are scheduled with adequate notice.
• Management supports the review process…
People-related success factors
for reviews include
• The right people are involved to meet the review objectives…
• Testers are seen as valued reviewers…
• Participants dedicate adequate time and attention to detail.
• Reviews are conducted on small chunks…
• Defects found are acknowledged, appreciated, and handled
objectively.
• The review is conducted in an atmosphere of trust…
• Participants avoid body language and behaviors…
• A culture of learning and process improvement is promoted.

You might also like