munotes®

Software Reviews: The Process, the Roles and the Types

Get access to whole semester resourcesSemester Pass

Chapter Twenty-Eight

Syllabus topic Module 1, "Verification and Validation (V&V): Concepts of Software Reviews"

Pages 152 to 157 of 622

In one line

A software review is a planned reading of a work product by people who can judge it, to find its anomalies and agree its quality; it follows a defined process, gives each participant a role, and ranges in formality from an informal review to an inspection.

In the wording a student can write in an examination: a review is a "process or meeting during which a work product or a set of work products, is presented to project personnel, managers, users, customers, or other stakeholders for comment or approval" (ISO/IEC 29110-1-2:2024). The generic review process of ISO/IEC 20246, as the ISTQB syllabus gives it, has five activities: planning, review initiation, individual review, communication and analysis, and fixing and reporting. Its principal roles are manager, author, moderator (facilitator), scribe (recorder), reviewer and review leader. Its commonly used types, from least to most formal, are the informal review, walkthrough, technical review and inspection.

Why review at all

A review is the cheapest defect-finding activity in software development, for a reason Chapter Twenty-Seven gave when it sorted the static and dynamic mechanisms: it needs nothing that runs, so it can start with the first page of requirements. The ISTQB syllabus puts the economics plainly: "Even though reviews can be costly to implement, the overall project costs are usually much lower than when no reviews are performed because less time and effort needs to be spent on fixing defects later in the project."

A review also does what no test can. It can examine a requirement, a design or a test plan; it can ask whether a document is clear, complete and consistent; and it brings people together. In the syllabus's words, since reviews can happen early, "a shared understanding can be created among the involved stakeholders." In ExamReg's release 2.0, the requirements, design and code reviews together found 74 of the 200 defects, before a single test had run.

The review process

The ISTQB syllabus takes its process from ISO/IEC 20246, which "defines a generic review process that provides a structured but flexible framework from which a specific review process may be tailored to a particular situation. If the required review is more formal, then more of the tasks described for the different activities will be needed."

The five activities of the review process, from planning to fixing and reporting, with a follow-up review when needed

Figure 28.1 The generic review process (ISTQB v4.0.1, section 3.2.2, after ISO/IEC 20246)

  1. Planning. The scope of the review is defined: "the purpose, the work product to be reviewed, quality characteristics to be evaluated, areas to focus on, exit criteria, supporting information such as standards, effort and the timeframes for the review".
  2. Review initiation. Everyone and everything is made ready: each participant "has access to the work product under review, understands their role and responsibilities and receives everything needed to perform the review."
  3. Individual review. Each reviewer works alone, applying "one or more review techniques (e.g., checklist-based reviewing, scenario-based reviewing)", and logs every anomaly, recommendation and question they find.
  4. Communication and analysis. The logged items are discussed, usually in a review meeting, because "the anomalies identified during a review are not necessarily defects". For each one, "the decision should be made on its status, ownership and required actions", and the participants decide the quality level of the work product and the follow-up needed.
  5. Fixing and reporting. "For every defect, a defect report should be created so that corrective actions can be followed up. Once the exit criteria are reached, the work product can be accepted."
munotes.in152

Software Reviews: The Process, the Roles and the Types

One word in the process needs care. An anomaly is "anything observed in the documentation or operation of a system that deviates from expectations based on previously verified system, software, or hardware products or reference documents" (IEEE 1012-2024). A reviewer logs anomalies; only the analysis decides which of them are defects. A question that turns out to have a good answer is an anomaly, but not a defect.

Review techniques: how a reviewer reads

ISO/IEC 20246 names several techniques for the individual review. A reviewer can use more than one.

TechniqueISO/IEC 20246's definitionOn ExamReg
Ad hocAn "unstructured independent review technique"Read the fee requirement and note whatever seems wrong
Checklist-basedA "review technique guided by a list of questions or required attributes"A checklist: is every boundary stated? is every term defined?
Scenario-basedThe review "is guided by determining the ability of the work product to address specific scenarios"Walk a student who submits exactly on the last date through the requirement
Role-basedReviewers "review a work product from the perspective of different stakeholder roles"Read it as the exam cell clerk, as a concession student, as the accounts office
Perspective-basedA "form of role-based reviewing that uses checklists and involves the creation of prototype deliverables"The tester drafts test cases from the requirement while reading it

The roles

The ISTQB syllabus names six principal roles, and one person may hold several.

RoleResponsibility (ISTQB v4.0.1)In the review of ExamReg's fee requirement
Manager"decides what is to be reviewed and provides resources, such as staff and time for the review"The project manager, who books two hours for four people
Author"creates and fixes the work product under review"The analyst who wrote the fee requirement
Moderator (facilitator)"ensures the effective running of review meetings, including mediation, time management, and a safe review environment in which everyone can speak freely"A senior developer from another team
Scribe (recorder)"collates anomalies from reviewers and records review information, such as decisions and new anomalies found during the review meeting"A junior tester
Reviewer"performs reviews", and "may be someone working on the project, a subject matter expert, or any other stakeholder"A tester, a developer and a clerk from the exam cell
Review leader"takes overall responsibility for the review such as deciding who will be involved, and organizing when and where the review will take place"The test lead
munotes.in153

Software Reviews: The Process, the Roles and the Types

The four review types

The syllabus observes that review types range "from informal reviews to formal reviews", and ISO/IEC 20246 defines the two ends: an informal review is a "form of review that does not follow a defined process and has no formal documented output", and a formal review is a "form of review that follows a defined process with formal documented output". Four types are in common use.

  • Informal review. "Informal reviews do not follow a defined process and do not require a formal documented output. The main objective is detecting anomalies." A colleague reading a draft and scribbling in the margin is an informal review, and so is much of pair programming.
  • Walkthrough. "A walkthrough, which is led by the author, can serve many objectives", from "evaluating quality and building confidence in the work product" to "educating reviewers, gaining consensus, generating new ideas" and "detecting anomalies". ISO/IEC 20246 defines it as a "formal review in which an author leads members of the review through a work product, and the participants ask questions and make comments about possible issues." Chapter Thirty is about the walkthrough.
  • Technical review. "A technical review is performed by technically qualified reviewers and led by a moderator." Its objectives are "to gain consensus and make decisions regarding a technical problem", and also to detect anomalies and evaluate quality. ISO/IEC 20246 defines it as a "formal peer review of a work product by a team of technically qualified personnel that examines the suitability of the work product for its intended use and identifies discrepancies from specifications and standards".
  • Inspection. "As inspections are the most formal type of review, they follow the complete generic process". "The main objective is to find the maximum number of anomalies", and "Metrics are collected and used to improve the SDLC, including the inspection process. In inspections, the author cannot act as the review leader or scribe." Chapter Twenty-Nine is about the inspection.
Informal reviewWalkthroughTechnical reviewInspection
FormalityNone: no defined processFormal in ISO/IEC 20246; flexible in practiceFormalThe most formal: the complete generic process
Led byAnyone, often the authorThe authorA moderatorA trained leader, never the author
Main objectiveDetect anomaliesMany: understanding, consensus, ideas, education, anomaliesConsensus and decisions on a technical problem; anomaliesThe maximum number of anomalies
Individual preparationOptionalOptionalExpectedRequired
Documented outputNot requiredYes, as a formal reviewYesYes, with metrics
Metrics collectedNoNoSeldomYes, and used to improve the process
Typical useEveryday drafts, pair workPresenting a design or code to the teamChoosing between technical designsCritical requirements, designs and code
munotes.in154

Software Reviews: The Process, the Roles and the Types

The level of formality is a choice. The syllabus says it depends on "the SDLC being followed, the maturity of the development process, the criticality and complexity of the work product being reviewed, legal or regulatory requirements, and the need for an audit trail", and that "The same work product can be reviewed with different review types, e.g., first an informal one and later a more formal one."

The formal technical review of Module 2 (Chapter Ninety-Seven) returns to reviews from the quality assurance side, as an SQA activity with its own guidelines; this chapter's process and types are the foundation it builds on.

Worked example: reviewing ExamReg's fee requirement

Here is the requirement as the analyst first wrote it.

IdRequirement (draft)
R-FEE-3A form submitted after the last date pays a late fee: Rs 100 if up to a week late, Rs 500 if up to 15 days late. Later forms are not accepted. Concession students do not pay fees.

Planning and initiation. The review leader chooses a technical review, because the fee rules decide money. The scope is R-FEE-3 and the exam cell's note it came from; the focus is boundaries and exceptions; the exit criterion is that no defect of major severity remains open. Each reviewer receives the requirement, the note and the team's requirements checklist.

Individual review. Each reviewer reads with a different technique. The tester uses the checklist and drafts test cases as they read; the exam cell clerk reads in role, as a student would meet the rule; the developer reads for anything that cannot be coded unambiguously. Their logs, merged by the scribe:

No.Anomaly loggedLogged by
1What is charged on the last date itself? The requirement says nothing about day 0Tester
2Is a form exactly 7 days late charged Rs 100 or Rs 500? "Up to a week" does not sayTester, developer
3Is a form exactly 15 days late accepted? "Up to 15 days" does not sayTester
4Our note says a concession waives the form fee only; this says concession students pay no fees at allExam cell clerk
5Are the days calendar days or working days?Developer
6The fee amounts change most sessions; can they be set without a code change?Developer

Communication and analysis. The meeting, run by the moderator, decides each item's status.

munotes.in155

Software Reviews: The Process, the Roles and the Types

No.StatusAction
1Defect (omission)Add: on or before the last date, no late fee
2Defect (ambiguity)State the band as 1 to 7 days late, inclusive
3Defect (ambiguity)State the band as 8 to 15 days late, inclusive; more than 15 days, refused
4Defect (contradicts the source note), majorCorrect: a concession waives the form fee only; late fees apply
5Question, answered: calendar daysNo defect; add the word "calendar" for clarity
6RecommendationPass to the design as a requirement for a configurable fee table

Fixing and reporting. The analyst rewrites R-FEE-3; the scribe's record goes to the project; the exit criterion is met once the major defect, item 4, is corrected and checked.

Four defects in one short requirement, found in a two-hour meeting. Item 1 is the on-time defect that Chapter One, on what software testing is, found with a failing test after the code was written; item 4 is the wrong specification that Chapter Twenty-Six showed no amount of verification could catch; and items 1 to 3 are the boundaries that the static analyser of Chapter Twenty-Seven found in code. Found here, each costs a sentence to fix.

What makes reviews succeed

The ISTQB syllabus lists the success factors, and every one of them can be seen in the example.

  • "Defining clear objectives and measurable exit criteria. Evaluation of participants should never be an objective"
  • "Choosing the appropriate review type to achieve the given objectives"
  • "Performing reviews on small chunks, so that reviewers do not lose concentration"
  • Feedback to stakeholders and authors, adequate time to prepare, and support from management
  • "Making reviews part of the organization's culture, to promote learning and process improvement"
  • Adequate training for all participants, and facilitated meetings

The first deserves emphasis. A review examines the work, never the person. If authors fear that their anomalies will be counted against them, they stop bringing work to review early, and the cheapest defect-finding activity in the project is lost.

What it does not mean

A review is not an inspection by another name. Inspection is one type, the most formal; the informal review, the walkthrough and the technical review are reviews too.

Every anomaly is not a defect. Anomalies are analysed; some are questions with good answers, and some are recommendations.

A review is not an assessment of the author. Evaluating participants "should never be an objective".

Reviews are not only for code. Any work product that can be read, from a requirement to a test plan, can be reviewed.

Quick revision

  • Review: a process or meeting in which work products are presented to stakeholders for comment or approval.
  • Process (ISO/IEC 20246, ISTQB v4.0.1): planning, review initiation, individual review, communication and analysis, fixing and reporting.
  • Anomaly: a deviation from expectations; analysis decides whether it is a defect.
  • Techniques: ad hoc, checklist-based, scenario-based, role-based, perspective-based.
  • Roles: manager, author, moderator (facilitator), scribe (recorder), reviewer, review leader.
  • Types: informal review (no defined process), walkthrough (led by the author), technical review (led by a moderator, technical consensus), inspection (most formal, maximum anomalies, metrics, author never leader or scribe).
  • Formality depends on the SDLC, process maturity, criticality, regulation and the need for an audit trail.
  • Success: clear objectives and exit criteria, never evaluating participants, small chunks, time, training, management support.
munotes.in156

Software Reviews: The Process, the Roles and the Types

Test yourself

1. Describe the activities of the review process. Planning defines the scope, focus, exit criteria, effort and timeframes. Review initiation makes sure everyone has the work product and understands their role. In individual review each reviewer applies review techniques and logs anomalies, recommendations and questions. In communication and analysis the anomalies are discussed, usually in a meeting, and each gets a status, owner and action. In fixing and reporting, defects are reported and fixed, the exit criteria are checked, and the results are reported.

2. Name the roles in a review and their responsibilities. The manager decides what is reviewed and provides resources; the author creates and fixes the work product; the moderator runs the meeting and keeps it safe and on time; the scribe records anomalies and decisions; the reviewers perform the review; and the review leader takes overall responsibility and organises it.

3. Compare the four types of review. An informal review follows no defined process and needs no documented output, and aims to detect anomalies. A walkthrough is led by the author and serves many objectives, including education and consensus. A technical review is led by a moderator with technically qualified reviewers, to reach decisions on technical problems. An inspection is the most formal, follows the complete process, aims to find the most anomalies, collects metrics, and never lets the author lead or record.

4. Why is every anomaly found in a review not a defect? Because an anomaly is only a deviation from what a reviewer expected; on analysis it may turn out to be a question with a good answer, a recommendation, or a misunderstanding by the reviewer. The meeting decides which anomalies are defects.

5. Give four factors for a successful review. Clear objectives and measurable exit criteria, with evaluation of participants never an objective; the right review type for the objectives and work product; reviewing in small chunks with adequate preparation time; and management support with training for all participants.

munotes.in157

The rest of this subject

These notes are cut from the University's printed syllabus. Open the syllabus itself, or the past papers, for the same subject.

Issue
Done!