Reviews
Testing Techniques
• Static
   – Static testing checks work without running the code, Review's,
     Inspection's and Walkthrough's are static testing methodologies.
   – Dynamic
   – Dynamic testing checks software by running it, providing inputs,
     and verifying expected outputs. Unit Tests, Integration Tests,
     System Tests and Acceptance Tests are are Dynamic testing
     methodologies.
    Static Testing Techniques
• Reviews
  – Walkthroughs
  – Inspections
            Why Review?
• Errors are common; everyone makes
  them.
• Others catch errors the originator misses.
• Use group feedback to improve a product.
• Ensure consistent quality in technical
  work.
• Ensure work quality to avoid mistakes.
     Formal technical Review
• A verification activity that is performed by
  software engineers
• Performed on any “work product”
• Actually a class of reviews that include:-
  – Walkthroughs
  – Inspections
  – Round-robin reviews
          Categories of Reviews
• Informal Review
    – Walkthrough
    – May or may not be planned at the start of the project
    – Can be conducted when concerned role/person feels
      the requirement of walkthroughs
• Formal Review
    – Inspections
    – must be planned at the start of the project
•     A verification activity that is performed by software
        engineers
•     Performed on any “work product”
               Walkthroughs
• Objectives
  – Finding problems
  – Discussing alternative solutions
  – Focusing on demonstrating how work product
    meets all requirements
                           Tasks
•Assign reviewers and schedule the walkthrough
•Plan walkthrough in QA or as needed.
•Share work product with reviewers beforehand.
                       Tasks (contd.)
•Author explains the work product to reviewers.
•Reviewers suggest fixes, and the author makes changes if possible.
•Meeting notes are shared with stakeholders, including follow-up details.
                     Tasks (contd.)
•Author makes the needed changes in the work
.Reviewers check changes on the set date.
              Inspections
•Inspection is a careful and detailed review
done by a group to find and fix problems
early.
•It helps improve product quality and work
efficiency.
                   Objectives
•Find problems early in development.
•Check if the product meets requirements.
•Ensure it follows set standards.
•Share data on quality and process.
              Advantages
•Help team learn by checking others' work.
•Make software testing more effective.
           Inspection Phases
•   Planning
•   Overview meeting (optional)
•   Preparation
•   Inspection meeting
•   Rework and Follow-up
 Definitions and Abbreviations
Moderator       Person responsible for moderating the inspection meeting.
Producer        Author of work product.
                Person responsible for presenting work product during the inspection
Reader
                     meeting.
                Person responsible for reviewing work product during the inspection
Inspector
                     meeting.
                Person responsible for recording defects in work product during the
Recorder
                     inspection meeting.
                Person observing the inspection meeting, no specific responsibilities for
Observer
                     that person.
Inspection      Formal group review of work product.
Walkthrough     Informal review of work product.
     Objectives of planning
• Decide which work needs inspection.
• Check if the work is ready.
• Choose the inspection team members.
• Decide if an overview meeting is needed.
• Plan the overview and inspection meetings.
                   Tasks
• Concerned role/person identifies the work
  product to be inspected and determines if the
  work product is ready to be inspected.
• Concerned role/person selects the moderator.
• Once the moderator has been selected and has
  accepted the assignment, project manager and
  moderator select inspection team.
• Moderator assigns the roles of Inspector,
  Producer, Reader, Recorder and Observer to
  selected inspection team members in
  coordination with PM.
• The moderator obtains commitment from each team
  member to participate. This commitment means the
  person agrees to spend the time required to perform his
  or her assigned role on the team. In some cases,
  approval from the team member’s supervisor or manager
  may be required.
• Moderator ensures the availability of required
  facilities and makes necessary reservations.
• The moderator and the producer decide if an overview
  meeting is required based on the inspection team’s
  familiarity with the work product and the complexity of
  the work product being inspected.
• The moderator and the producer identify the review
  materials required for the inspection. The moderator
  ensures that the review materials are distributed. The
  review material includes the specification of the work
  product and relevant checklists and standards. The
  specifications of the work product are generally the
  outputs of the previous phases and are needed to verify
  the work product to be inspected.
• The moderator schedules meetings and distributes
  review materials. The moderator communicates the date,
  time, and location of the meetings to the inspection team
  and gets their commitment. If an overview meeting is
  held, the moderator can distribute the review materials
  during that meeting.
    Guidelines for Selecting Work
             Products:
•   Deciding what to inspect is not easy. Inspections require a
    considerable time commitment; therefore, selecting what to inspect
    needs to be done judiciously. Also all work products may not
    undergo inspection as this approach is expensive and may not
    return desire results.
•   As work products of the early life cycle of the project are very critical
    and defects in these work products have a multiplier effect in the
    work products produced in the later stage of the project, therefore,
    artifacts produced in analysis and design phases are strong
    candidates for inspection.
•   The decision regarding other work products to be inspected shall be
    left to the QA Lead and PM.
•   Inspections as well as walkthroughs shall be documented in the QA
    Plan.
      Guidelines for Inspection
              Planning
• Normally a quality assurance team member is assigned
  as Moderator.
• All inspection team members should be trained on
  Inspection Process.
• In case the moderator is not selected from quality
  assurance team, a quality assurance team member is
  invited to the all inspection meetings.
• The minimum number of roles required for an inspection
  is three (moderator, producer, and inspector).
• Any Inspection team member can be assigned several
  roles. Generally producer is one of the inspectors and
  moderator may be an inspector also.
           Overview Meeting
• Overview meeting is optional as moderator and
  the producer decide if an overview meeting is
  required based on the inspection team’s
  familiarity with the work product being inspected,
  and the complexity of the work product being
  inspected.
• Objective of the overview meeting is to explain
  the work product to the inspection team and to
  discuss the review materials so that inspectors
  can prepare for the inspection meeting by
  reviewing the material individually and find
  defects
                         Preparation
•   Objective
•   Objective of the preparation phase is to prepare for the inspection
    meeting by critically reviewing the review materials and the
    work product.
•   Tasks
•   Inspectors review checklists and internal standards and conventions
    before reviewing work product to create review material list of
    things to become more familiar with review materials and work
    product. While preparation, record any obvious defects.
•   Ideally the preparation for review shall be done in one continuous
    time span. The producer may be informed about the logged defects
    in defect tracking tool against the artifact or product being inspected,
    so that he can become familiar with outputs of each reviewer and
    prepare for the final meeting.
        Inspection Meeting
• Objective
• The objective of the inspection meeting is
  to identify final defect list in the work
  product being inspected, based on the
  initial list of defects prepared by the
  inspectors and the new one found during
  the inspection meeting.
                              Tasks
•   The moderator opens the meeting.
•   The moderator determines if the inspectors are prepared. If
    moderator identifies that the team is not adequately prepared, the
    moderator postpones the meeting.
•   If the moderator is satisfied that the team is adequately prepared,
    the inspection begins. Reader starts by paraphrasing the first
    chunk of information from the work product (or present the
    material by any other convenient method).
•   During the meeting, if an inspector has previously identified any
    defect or finds a new defect, he or she raises the point. The defect
    is discussed among the team. The producer reviews the defect
    under discussion and either clarifies why it is not a defect or accepts
    it as a defect.
•   Sources of defects are also identified.
•   Recorder notes down all the defects and their sources.
•   After the reader has completed the entire work product, the
    moderator asks the recorder to read back all the noted defects to
    ensure that they were recorded correctly.
•   On the basis of defects’ severity, the team decides about re-
    inspection.
•   If another meeting or re-inspection is required, the moderator
    schedules it.
•   Recommendation regarding reviews in the next stage can be
    made.
•   The moderator adjourns the meeting.
•   Recorder logs all the defects and their sources in defect tracking
    tool and assigns them to producer.
•   Minutes of meeting are prepared and sent by the recorder to the
    relevant roles/persons as required.
       Guidelines for Inspection
               Meeting
• If few modifications are required for fixing the defects
  then follow up may not be required. If many
  modifications are required then a follow-up meeting
  by the moderator is required or re-inspection is
  necessary to verify the defect fixing. Moderator
  recommends what to be done.
• The moderator reiterates the rules for the meeting that
  are:
   – Criticism is to be focused on the work product, not on the
     producer.
   – The producer is present to clarify, not to justify
   – The meeting duration is set at not more than two hours
     continuously.
   – Breaks are granted where required.
       Rework and Follow-up
• Objective
• To ensure that corrective action has been taken to
  resolve the defects found during an inspection.
• Tasks
• The producer and the moderator agree on the schedule
  for completing corrective action.
• The producer fixes the defects identified by the
  inspection team.
• When all rework has been completed, the moderator
  verifies the rework and updates the defects status in
  defect tracking tool or reschedules a follow-up inspection
  meeting (if defects not fixed), as determined by the team.
                                          Summary
Walkthroughs                                        Inspections
                                                    Group involves multiple participants of varying
                                                       roles and responsibilities: reviewers trained in
                                                       inspection, moderator (or inspection leader),
Involves two or more peer developers.
                                                       reviewers (trained inspectors), developers
                                                       (authors, producers), recorder (or scribe), and
                                                       possibly a separate reader.
                                                    Can be used to detect errors in requirements,
Possible errors identified, typically in code.          design, code, test cases, and/or other project
                                                        artifacts.
Changes are only suggested. Further investigation
                                                    Inspections specify action items, e.g., for rework
   and correction are outside the scope of this
                                                        and re-inspection.
   review.
                                                    Group involves multiple participants of varying
                                                       roles and responsibilities: reviewers trained in
                                                       inspection, moderator (or inspection leader),
Involves two or more peer developers.
                                                       reviewers (trained inspectors), developers
                                                       (authors, producers), recorder (or scribe), and
                                                       possibly a separate reader.