SE 463 Software Testing and Quality Assurance

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 15

College of Computer & Cyber Sciences

Department of Computer Science


Program of SW Engineering

SE 463 Software Testing and Quality Assurance

Chapter 3: Static Testing

Dr. Ftoon Kedwan


Chapter Outline

• Overview of Testing Techniques


• Comparison Between Dynamic Testing & Static Testing.
• Benefits of Static Testing
• Review Process (Informal & Formal)
• Phases of a Formal Review
• Roles & Responsibilities in a Formal Review
• Types of Formal Review
• Success Factors for Reviews
Overview of Testing Techniques
Comparison Between
Dynamic Testing & Static Testing
• We already learned about testing objectives:
 To show that the SW system meets its specification.
 To exercise the system in such a way that any latent
defects are exposed.

• 2 approaches can be used to achieve testing


objectives:
1. Dynamic testing: SW is executed using a set of input
values & its output is then examined & compared to
what is expected.
 Or: The process of evaluating SW based on its execution.

2. Static testing: SW work products are examined


manually, or with a set of tools, but not executed.
 Or: The process of evaluating SW without executing it.
Static Techniques, Cont.

Dynamic testing & static testing are


complementary methods, as they tend to find
different types of defects effectively & efficiently.

- Deviations From Standards


Types of defects that are - Missing Requirements
easier to find during static - Design Defects
testing are: - Non-maintainable Code
- Inconsistent Interface Specifications

Note that in contrast to dynamic testing, static


testing finds defects rather than failures. Why?
Static Techniques, Cont.
Advantages of static testing:
• It reduces the cost & effort of fixing bugs because it identifies the bugs in the
earlier stages of the SDLC.
o This means less time has to be spent on testing & maintenance.
• Since rework effort is substantially reduced, development productivity figures are
likely to increase.
• It contribute to an increased awareness of quality issues.
o Increased product quality.
• It gives deeper insight into the SW for the whole team.

Disadvantages of static testing:


• It requires lots of documentation.
• Many meetings & evaluations.
• Some analysis tools aren't compatible with all programming languages.
• Reviews vary from very informal to formal.
o i.e., well structured & regulated.
• In practice, the informal review is perhaps the most common type of review.
• Informal reviews are applied at various times during the early stages in the life cycle of a
document.
Review • A 2-person team can conduct an informal review, as the author can ask a colleague to
Process review a document or code.
• In later stages these reviews often involve more people & meetings.
o Try to find defects in the document under review & discuss these defects in a review meeting.
• The goal is to help the author & to improve the quality of the document.
• Informal reviews come in various shapes & forms, but all have 1 characteristic in
common - they aren't documented.
Review Process
Formal Review:
• In contrast to informal reviews, formal reviews follow a formal process.
• A typical formal review process consists of 6 main steps:
o Planning
o Kick-off
o Preparation
o Review meeting
o Rework
o Follow-up
• Within a review team, 4 types of participants can be
Roles & distinguished:
o Moderator (Some add review leader as separate)
Responsibilities o Author
in a Formal o Scribe
Review o Reviewer

• In addition, management needs to play a role in the review


process.
Roles & Responsibilities in a Formal Review

The Moderator
• Leads the review process.
• Has 3 jobs: before the meeting in the meeting & after the meeting.
• Determines, in co-operation with the author, the type of review, approach & the
composition of the review team.
• Performs the entry check & the follow-up on the rework.

The Author
• Learn as much as possible how to improve the quality of the present document &
future documents.
• Illuminate unclear areas & to understand the defects found.

The Scribe (or recorder)


• Record each defect mentioned & any suggestions for process improvement.
• In practice, it is often the author who plays this role, ensuring that the log is readable
& understandable.
• However, having someone other than the author take the role of the scribe can have
significant advantages, since the author is freed up to think about the document rather
than being tied down with lots of writing.
Roles & Responsibilities in a Formal Review,
Cont.

The Reviewers
• Check any material for defects, mostly prior to the meeting.
• The level of thoroughness required depends on the type of review.
• The level of domain knowledge or technical expertise needed by the reviewers also
depends on the type of review.
• Reviewers should be chosen to represent different perspectives & roles in the review
process.
• In addition to the document under review, the material reviewers receive includes
source documents, standards, checklists, etc.

The Manager
• Decides on the execution of reviews, allocates time in project schedules & determines
whether review process objectives have been met.
• Take care of any review training requested by the participants.
• Can also be involved in the review itself depending on their background, playing the
role of a reviewer if this would be helpful.
Types of Formal
Review

• A single document may be the subject of more than 1 review.

• It is apparent that none of the following types of reviews is the


'winner', but the different types serve different purposes at different
stages in the life cycle of a document.

• The main review types, their main characteristics & common


objectives are:
o Walkthrough
o Technical review
o Inspection
Types of Formal Review
Walkthrough

• The author of the document guides the participants through the document & their thought processes, to
achieve a common understanding & to gather feedback.
• This is especially useful if people from outside the SW discipline are present.
• The participants, are not required to do a detailed study of the documents in advance.
• Because of the nature of the meeting, a large number can participate & bring a diverse viewpoints
regarding the document; it also serve as an educational purpose.
• If the audience represents a broad cross-section of skills & disciplines, it can give assurance that no major
defects are 'missed' in the walkthrough.
• A walkthrough is especially useful for higher-level documents, such as requirement specifications &
architectural documents.

The goals of walkthrough is to:


o Present the document to stakeholders.
o Knowledge transfer & evaluate the contents of the document.
o Establish a common understanding of the document.

Key characteristics of walkthroughs are:


o The meeting is led by the authors; often a separate scribe is present.
Types of Formal Review
Technical Review

• Is a discussion meeting that focuses on achieving consensus about the technical


content of a document.
• Is less formal than inspection & there is little or no focus on defect identification
based on referenced documents, intended readership & rules.
• Defects are found by experts, who focus on the content of the document.
• In practice, technical reviews vary from quite informal to very formal.

The goals of a technical review are to:


o Establish consistency in the use & representation of technical concepts.
o Ensure, at an early stage, that technical concepts are used correctly.
o Inform participants of the technical content of the document.

Key characteristics of a technical review are:


o It is often performed as a peer review without management participation.
o Ideally, it is led by a trained moderator, but possibly also by a technical expert.
o Formal characteristics, such as checklists & a logging list or … are optional.
Types of Formal Review
Inspection
• Inspection is the most formal review type.
• The document is checked thoroughly before the meeting.
• In the inspection meeting, the defects found are logged & any discussion is postponed until the
discussion phase.
o This makes the inspection meeting a very efficient meeting.
• If the time to market is extremely important, the emphasis in inspections will be on efficiency.
• In a safety-critical market, the focus will be on effectiveness.

The goals of inspection are to:


o Help the author to improve the quality of the document under inspection.
o Remove defects efficiently, as early as possible.
o Create a common understanding by exchanging information among the inspection participants.
o Train new employees in the organization's development process.

Key characteristics of an inspection are:


o It is usually led by a trained moderator (certainly not by the author).
o It uses defined roles during the process.
o Rules & checklists are used during the preparation phase.
o A formal follow-up is carried out by the moderator applying exit criteria.

You might also like