Software Quality & Risk Management

Chapter 5
Quality Assurance Processes and Reviews

Certificate in Software Project Management
Software Quality & Risk Management   •   Certificate

Quality Assurance Processes and Reviews

Introduction

Software quality assurance (SQA) is the planned and systematic set of activities used to provide confidence that software processes and products satisfy defined requirements, standards, and stakeholder expectations. Quality assurance is preventive in emphasis: it seeks to improve the way work is performed so that defects are less likely to be introduced. Quality control, by contrast, focuses more directly on detecting defects in a product through testing, examination, and measurement.

In software projects, defects commonly originate in requirements, architecture, design decisions, coding practices, configuration changes, communication, or poorly controlled processes. Testing remains essential, but testing alone cannot guarantee quality. A defect discovered late may be expensive to correct because it has already influenced designs, code, documentation, test cases, or deployed data. Reviews, audits, checklists, root-cause analysis, and corrective and preventive action (CAPA) provide complementary mechanisms for preventing recurrence.

This chapter presents practical assurance processes appropriate for software teams, project managers, quality professionals, and development leads. It explains how to select and conduct process audits, peer reviews, walkthroughs, inspections, and structured checklists. It also shows how teams can move beyond fixing individual defects to identifying and controlling the causes of systemic problems.

Learning Objectives

By the end of this chapter, you should be able to:

  1. Distinguish quality assurance, quality control, verification, and validation.
  2. Explain the purposes and appropriate uses of audits, peer reviews, walkthroughs, and inspections.
  3. Plan and conduct an effective review using defined roles, entry criteria, evidence, and follow-up.
  4. Design useful checklists without encouraging superficial compliance.
  5. Apply root-cause analysis to recurring or significant defects.
  6. Develop corrective and preventive actions and verify their effectiveness.
  7. Interpret review findings ethically and use them to improve project performance.

1. Foundations of Quality Assurance

1.1 Quality as conformance and fitness for use

Software quality has two complementary meanings. Conformance means that a product or process satisfies specified requirements, standards, contracts, and procedures. Fitness for use means that the product is suitable for the users’ actual needs, including qualities such as usability, reliability, security, maintainability, and performance.

A product can conform to a written specification yet fail in practice if the specification was incomplete or misunderstood. Conversely, a useful product may still be unacceptable if it violates legal, contractual, safety, or security requirements. Effective assurance therefore examines both documented expectations and stakeholder value.

1.2 Assurance, control, verification, and validation

ConceptMain questionTypical activities
Quality assuranceAre effective processes being used to prevent problems?Process definition, audits, training, improvement
Quality controlDoes the deliverable meet specified criteria?Testing, measurement, product examination
VerificationAre we building the product correctly?Reviews, inspections, static analysis, conformance checks
ValidationAre we building the right product?User evaluation, acceptance testing, operational trials

These activities overlap but are not interchangeable. A review may verify that a design implements requirements, while validation may reveal that the requirements do not represent actual user needs.

1.3 The cost of late defect detection

The later a defect is detected, the more work may depend on it. A requirements misunderstanding can be reflected in architecture, code, test data, manuals, and training. Early reviews are therefore economically valuable even though they do not produce visible executable functionality.

A useful management measure is review yield:

Review yield = (Defects found before execution ÷ Total defects found before execution and during subsequent testing) × 100%

This measure is meaningful only when the organization defines what counts as a defect and collects data consistently. It should not be used to compare teams without considering product complexity, review effort, defect severity, and reporting culture. A high value may indicate effective reviews, but it may also reflect weak later testing or under-reporting.

2. Assurance Processes Across the Life Cycle

Assurance is most effective when integrated into the project life cycle rather than performed as a final inspection. Typical assurance points include:

  • requirements baseline review;
  • architecture and design review;
  • code review and static analysis;
  • test-plan and test-case review;
  • configuration and release audits;
  • security, privacy, and accessibility reviews;
  • operational readiness review; and
  • post-release incident and improvement review.

Each review should have a defined subject, participants, criteria, evidence, outputs, and owner. A review without a decision or follow-up mechanism is likely to become a discussion rather than a control.

2.1 Process audits

A process audit is a systematic, independent examination of project practices and objective evidence against defined criteria. Criteria may include organizational procedures, contractual obligations, security controls, regulatory requirements, or an agreed project process.

An audit does not ask merely whether a document exists. It asks whether the process is understood, followed, effective, and supported by evidence. For example, an audit of change management might examine approved change requests, impact assessments, code repository history, test evidence, and release authorization.

A practical audit sequence is:

  1. Define scope, criteria, dates, and independence requirements.
  2. Prepare an audit plan and evidence request.
  3. Conduct opening communication with the project team.
  4. Interview relevant personnel and sample records.
  5. Record objective evidence, conformities, observations, and nonconformities.
  6. Discuss factual accuracy before issuing the report.
  7. Assign actions, owners, priorities, and due dates.
  8. Verify closure and evaluate systemic trends.

An audit finding should be evidence-based. “The team is careless” is not an adequate finding. “Three of ten sampled production changes lacked documented approval before deployment” is specific, verifiable, and actionable.

Audits may be first-party (internal), second-party (performed by or for a customer or supplier relationship), or third-party (performed by an independent external body). Independence does not mean hostility; it means that the person evaluating a process can report evidence without inappropriate pressure.

2.2 Peer reviews

A peer review is an evaluation of a work product by people with relevant knowledge who are not the sole author. Peer reviews can examine requirements, models, code, test cases, user stories, data schemas, designs, and operational procedures.

The reviewer should consider correctness, completeness, clarity, consistency, maintainability, security, testability, and compliance with agreed standards. Reviews are most effective when the author provides context and reviewers examine the artefact individually before the meeting.

A review record commonly includes:

  • artefact and version reviewed;
  • reviewers and roles;
  • review criteria;
  • defects or questions identified;
  • severity or priority;
  • responsible resolver;
  • agreed disposition; and
  • verification status.

Reviewers should comment on the work product, not attack the author. Psychological safety is a quality control: if people fear blame, they may conceal uncertainty and defects.

2.3 Walkthroughs

A walkthrough is usually an author-led, relatively informal review in which the author explains a work product step by step. Participants ask questions, identify omissions, and test their understanding. Walkthroughs are useful for early requirements, designs, user journeys, and unfamiliar business rules.

Because the author leads the session, walkthroughs can efficiently transfer knowledge. However, participants may be reluctant to challenge the author, and the meeting may become a presentation. The facilitator should distribute material in advance, define objectives, limit attendance to useful participants, and record issues rather than relying on memory.

2.4 Inspections

An inspection is a formal, structured review designed to detect defects using defined roles, preparation, entry criteria, logging, and follow-up. Traditional inspection roles include:

  • Author: creates or revises the work product.
  • Moderator: plans the inspection, manages the meeting, and protects the process.
  • Reader: presents the artefact in logical units.
  • Reviewers: identify defects against criteria.
  • Recorder: documents defects and decisions.

The inspection meeting should focus on identifying and classifying defects, not solving every problem immediately. Detailed redesign during the meeting can consume time and reduce defect detection. The author or assigned resolver addresses findings afterward, and a follow-up check confirms that corrections were made without introducing new problems.

Inspections are particularly valuable for safety-related, security-sensitive, regulated, or high-cost software. They require more preparation than informal reviews, so their formality should be proportionate to risk.

3. Designing an Effective Review

A review is a controlled process, not simply a meeting. The following structure can be adapted to the risk and size of the project.

3.1 Planning and entry criteria

Define the review objective: for example, “determine whether the payment-service design satisfies authentication, authorization, availability, and audit requirements.” Identify the artefact version and establish entry criteria such as:

  • the artefact is complete enough to review;
  • requirements or standards are available;
  • reviewers have relevant expertise;
  • the expected reading time is realistic; and
  • previous blocking issues have been resolved or explicitly accepted.

Reviewing unstable material can waste effort. However, waiting for perfection defeats the preventive purpose. The appropriate balance depends on the risk and maturity of the artefact.

3.2 Preparation

Individual preparation is one of the strongest predictors of review effectiveness. Participants should receive the artefact, context, review criteria, and defect-recording method in advance. Reviewers should note precise locations and explain why an item is a defect or risk.

Useful review questions include:

  • Is every stated requirement addressed?
  • Are assumptions explicit and justified?
  • Are error, boundary, recovery, and security conditions considered?
  • Can the result be tested objectively?
  • Is the solution consistent with architecture and interfaces?
  • Could a reasonable user or operator misunderstand it?
  • Are privacy, accessibility, safety, and regulatory obligations addressed?

3.3 Conduct and classification

The moderator keeps the discussion evidence-based and within scope. Findings may be classified as critical, major, minor, question, or observation, provided the project defines these categories. Classification should reflect impact and urgency, not the status or personality of the person who made the error.

A finding record should identify the location, condition, expected criterion, actual issue, impact, and proposed disposition. Avoid vague records such as “improve security.” A stronger record is: “The password-reset endpoint permits unlimited attempts, contrary to the account-protection requirement; this permits automated guessing. Add rate limiting or document an approved compensating control.”

3.4 Closure and metrics

The author resolves accepted defects; a qualified person verifies the correction. Closure evidence may include a revised artefact, test result, approval, or configuration record. A finding should not be closed merely because a new version exists.

Useful review measures include preparation time, review effort, defects by category and severity, rework effort, review coverage, and recurring defect types. Metrics should support learning, not punish honest reporting. Management should examine trends rather than ranking individuals by defect counts.

4. Checklists as Cognitive and Process Controls

A checklist is a concise, context-specific set of prompts used to reduce omission errors and standardize essential checks. It is not a substitute for expertise or judgment.

An effective checklist:

  1. is derived from actual risks, standards, incidents, and lessons learned;
  2. uses observable questions;
  3. separates mandatory controls from useful prompts;
  4. is short enough to use consistently;
  5. identifies evidence or acceptance conditions;
  6. has an owner and revision history; and
  7. is reviewed when technology, regulation, or project risk changes.

Poor checklist items are vague (“Is the design good?”) or encourage box-ticking (“Reviewed: yes”). Better items are testable: “Are all external inputs validated for type, range, encoding, and authorization?”

Checklists should be tailored. A checklist for a public web service may include authentication, authorization, secrets management, logging, privacy, accessibility, resilience, and dependency vulnerabilities. A checklist for a data migration may emphasize reconciliation, rollback, data retention, backup, and auditability.

5. Root-Cause Analysis

Correcting a defect fixes its immediate manifestation; root-cause analysis (RCA) investigates why the defect was introduced or allowed to escape. RCA should be proportionate to impact and recurrence risk. It is not a search for someone to blame.

5.1 Causal thinking

A useful distinction is:

  • Occurrence cause: why the defect entered the product.
  • Escape cause: why existing controls did not detect it.
  • Systemic cause: why the organization’s conditions made occurrence or escape likely.

For example, an incorrect tax calculation may have an occurrence cause (ambiguous business rule), an escape cause (test data omitted a threshold case), and a systemic cause (no ownership for tax-rule changes).

5.2 Common RCA techniques

The five whys repeatedly asks why a condition occurred. It is useful for simple causal chains but can become superficial if the team stops at a person’s action. “Why did the developer make an error?” is less useful than asking why the process allowed an unreviewed assumption to reach production.

Fishbone analysis organizes possible causes into categories such as people, process, technology, requirements, data, environment, and measurement. The categories are prompts, not proof; proposed causes must be tested against evidence.

Fault-tree analysis starts with an undesired top event and reasons downward through combinations of contributing conditions. It is valuable for safety, security, and reliability concerns, but requires clear event definitions.

5.3 Evidence and validation

RCA should use defect records, version history, review notes, interviews, test evidence, monitoring data, and process observations. A proposed cause is credible when removing or controlling it would make recurrence less likely and when available evidence supports the causal link. Teams should distinguish facts from hypotheses and record uncertainty.

6. Corrective and Preventive Action

A corrective action eliminates the cause of a detected nonconformity or defect. A preventive action eliminates or reduces the cause of a potential nonconformity before it occurs. In contemporary improvement systems, both are often managed under CAPA, with risk-based preventive improvement integrated into normal planning.

A CAPA record should contain:

FieldPurpose
Problem statementDescribes the verified condition and scope
ContainmentLimits immediate impact while analysis continues
Root causeExplains occurrence, escape, or systemic weakness
ActionSpecifies the change to process, product, training, or control
Owner and due dateEstablishes accountability
Evidence of completionShows that the action was implemented
Effectiveness checkTests whether recurrence risk has reduced
Closure approvalConfirms a qualified decision

Containment is not the same as corrective action. Disabling a faulty feature may limit harm, but the underlying process or design cause may remain.

A good action changes the system. Examples include clarifying an acceptance criterion, adding a boundary-value test to a reusable test design, introducing an automated policy check, improving configuration traceability, or assigning ownership for regulatory-rule updates. “Remind staff to be careful” is generally weak unless supported by a specific change in competence, workflow, or control.

Effectiveness checks should occur after sufficient operating time. Evidence may include a targeted audit, defect trend, sampled records, automated-control results, or a repeat review. Closure should be based on evidence, not completion of a meeting or training session.

7. Applied Case: Payment Reversal Defects

The following is an illustrative case.

Background

A small software company developed a payment service for an online retailer. During the first month after release, several customers were charged twice when a network timeout occurred during payment confirmation. The support team manually refunded affected customers.

Problem

The immediate defect was that a retry could create a second charge when the first transaction had actually succeeded but the confirmation response was lost. A code patch prevented one observed sequence, but the project manager requested a broader investigation because similar retry logic existed in subscription and refund services.

Analysis

A cross-functional inspection examined the payment design, API contract, code, test cases, logs, and deployment configuration. The team identified three linked causes:

  1. Occurrence cause: the operation was not designed as idempotent; repeated requests could produce repeated financial effects.
  2. Escape cause: tests covered visible server errors but not lost responses after successful processing.
  3. Systemic cause: the architecture review checklist did not require explicit analysis of retries, duplicate messages, or recovery after uncertain outcomes.

The audit also found that transaction identifiers were logged inconsistently, making reconciliation slower.

Approach and solution

The team introduced a client-supplied idempotency key stored with the payment result, so a repeated request with the same key returned the original result rather than creating another charge. It added tests for timeout-after-success, duplicate delivery, delayed responses, and concurrent retries. The architecture checklist was revised to include failure modes and recovery semantics for operations with financial effects. Logging standards were updated to require correlation and transaction identifiers, subject to privacy controls.

A CAPA owner was assigned. After two release cycles, an effectiveness review sampled payment attempts, examined duplicate-charge alerts, and inspected test and deployment evidence. No duplicate charges were observed in the sample, and the same review identified a similar risk in a refund integration before it reached production.

Learning points

The case demonstrates that a code fix alone may not prevent recurrence. Peer review and inspection exposed design assumptions; the checklist converted the lesson into a reusable control; RCA separated occurrence, escape, and systemic causes; and the effectiveness check tested whether the organization had actually improved.

8. Challenges, Ethics, and Governance

Reviews and audits can fail when schedules discourage preparation, reviewers lack authority, findings are suppressed, or metrics become punitive. Excessive formality can slow low-risk work, while insufficient formality can expose high-risk systems. The appropriate level should be risk-based and documented.

Ethically, quality professionals should report material risks accurately, protect confidential information, avoid conflicts of interest, and resist pressure to misclassify findings. Audit evidence may contain personal data, credentials, proprietary code, or security weaknesses. Access should be limited, records protected, and sensitive information redacted where possible.

Governance requires clear escalation. A team may accept a minor documentation issue, but it should not silently accept an unresolved safety, privacy, security, or financial-control risk. Risk acceptance should be explicit, authorized at the appropriate level, time-bounded where possible, and accompanied by compensating controls.

Artificial intelligence can assist by suggesting checklist items, clustering defect reports, detecting duplicated findings, or identifying unusual patterns in review data. It should not replace accountable human judgment. AI-generated recommendations require verification because models may misunderstand context, reproduce bias, expose confidential artefacts, or produce plausible but unsupported explanations. Organizations should define data-handling rules, review provenance, and retain human approval for quality decisions.

9. Best-Practice Framework

A practical assurance system for a certificate-level project can follow this sequence:

  1. Identify quality risks and applicable criteria.
  2. Select the least burdensome review or audit that can control those risks.
  3. Define entry criteria, participants, evidence, and decision rights.
  4. Prepare individually before group discussion.
  5. Record precise, evidence-based findings.
  6. Prioritize by impact, likelihood, and urgency.
  7. Resolve findings and verify the corrected artefact.
  8. Investigate significant or recurring problems using RCA.
  9. Implement CAPA that changes the system, not merely the individual.
  10. Check effectiveness and update standards, checklists, training, and automation.

The central principle is closed-loop assurance: planned control leads to evidence, evidence leads to action, and action is tested for effectiveness. Without the final feedback loop, quality assurance becomes documentation rather than improvement.

Chapter Summary

Quality assurance prevents defects by improving processes and examining work products before problems become expensive or harmful. Audits evaluate process conformity and effectiveness against defined criteria. Peer reviews use qualified colleagues to examine artefacts; walkthroughs provide author-led understanding and early feedback; inspections apply a formal, role-based method for systematic defect detection. Checklists reduce omission errors when they are specific, risk-based, maintained, and used with judgment.

Root-cause analysis distinguishes occurrence, escape, and systemic causes and relies on evidence rather than blame. Corrective and preventive action combines containment, causal analysis, accountable implementation, and effectiveness verification. Ethical assurance requires independence, confidentiality, accurate reporting, and explicit risk acceptance. The strongest quality systems connect reviews, audits, metrics, RCA, CAPA, and organizational learning into a continuous improvement loop.

Key Terms

Quality assurance: Planned activities that provide confidence that processes and products will meet requirements.

Quality control: Activities that examine or measure a product to determine whether it meets criteria.

Verification: Evaluation of whether a product is being built correctly against specified requirements.

Validation: Evaluation of whether the product satisfies real stakeholder and user needs.

Process audit: Systematic examination of process practice and evidence against defined criteria.

Peer review: Examination of a work product by suitably knowledgeable colleagues.

Walkthrough: Author-led review in which a work product is explained and discussed.

Inspection: Formal, structured review with defined roles, preparation, defect logging, and follow-up.

Moderator: Person who plans and controls a formal review or inspection.

Entry criteria: Conditions that must be met before a review begins.

Checklist: Risk-based prompts used to reduce omissions and standardize essential checks.

Root-cause analysis: Investigation of why a defect occurred or escaped detection.

Occurrence cause: Cause that allowed a defect to enter a product or process.

Escape cause: Cause that allowed a defect to pass existing controls.

Systemic cause: Organizational condition that makes defects or escapes more likely.

Containment: Immediate action that limits the impact of a problem.

Corrective action: Action that removes the cause of a detected problem.

Preventive action: Action that reduces the likelihood of a potential problem.

CAPA: Structured management of corrective and preventive actions.

Effectiveness check: Evidence-based evaluation of whether an action achieved its intended result.

Review Questions

Short Answer Questions

  1. How does quality assurance differ from quality control?
  2. What is the principal purpose of a process audit?
  3. Identify two roles commonly used in a formal inspection.
  4. Why should checklist items be observable and specific?
  5. Distinguish containment from corrective action.

Long Answer Questions

  1. Explain the similarities and differences among peer reviews, walkthroughs, and inspections. Give an appropriate use for each.
  2. Describe the stages of planning, conducting, and closing a process audit.
  3. Explain how preparation, evidence, classification, and follow-up affect review effectiveness.
  4. Discuss how root-cause analysis can move a team from individual blame to systemic improvement.
  5. Explain the components of a strong CAPA record and the importance of an effectiveness check.

Analytical / Application Questions

  1. A team repeatedly releases features with incomplete authorization checks. Design a review, checklist, RCA, and CAPA response for this pattern.
  2. An auditor finds that all change requests are approved after deployment, although the project procedure requires approval before deployment. Classify the issue, identify evidence to collect, and propose proportionate actions.
  3. A project manager wants to rank developers by the number of defects found in their code reviews. Evaluate this proposal and recommend more responsible measures and governance practices.

Multiple Choice Questions with Answers

Question 1

Which activity is primarily preventive in its purpose?

A. Quality assurance

B. Production incident repair

C. Customer refund processing

D. Runtime defect logging

Correct Answer: A. Quality assurance

Question 2

What is the main characteristic of a process audit?

A. It replaces all software testing

B. It examines process practice and evidence against defined criteria

C. It is always conducted by the software author

D. It focuses only on source-code syntax

Correct Answer: B. It examines process practice and evidence against defined criteria

Question 3

Which review is normally author-led and relatively informal?

A. Inspection

B. Third-party audit

C. Walkthrough

D. Release certification

Correct Answer: C. Walkthrough

Question 4

What is the moderator’s principal responsibility in a formal inspection?

A. Writing all corrective code

B. Planning and controlling the inspection process

C. Approving the business requirements alone

D. Replacing the product owner

Correct Answer: B. Planning and controlling the inspection process

Question 5

Which checklist item is most useful?

A. Is the work good?

B. Did everyone agree?

C. Are external inputs validated for type, range, encoding, and authorization?

D. Was the meeting enjoyable?

Correct Answer: C. Are external inputs validated for type, range, encoding, and authorization?

Question 6

What does an escape cause explain?

A. Why a defect entered the product

B. Why a defect was not detected by existing controls

C. Why a project was initially funded

D. Why a user changed a password

Correct Answer: B. Why a defect was not detected by existing controls

Question 7

Which statement best describes containment?

A. It limits immediate impact while analysis continues

B. It always removes the systemic cause

C. It is identical to preventive action

D. It closes a finding without evidence

Correct Answer: A. It limits immediate impact while analysis continues

Question 8

Which is the strongest corrective action for recurring missed boundary cases?

A. Tell developers to be more careful

B. Add boundary-value analysis to the reusable test and review process

C. Delete the defect reports

D. Stop recording test results

Correct Answer: B. Add boundary-value analysis to the reusable test and review process

Question 9

Why is an effectiveness check required after CAPA implementation?

A. To verify that the action reduced the problem or recurrence risk

B. To ensure that no further reviews are conducted

C. To transfer ownership to the customer

D. To replace the original requirements

Correct Answer: A. To verify that the action reduced the problem or recurrence risk

Question 10

What is a major ethical risk when review metrics are used to punish individuals?

A. People may under-report defects and conceal risks

B. Reviews become automatically independent

C. Checklists become more precise

D. Audit evidence becomes easier to verify

Correct Answer: A. People may under-report defects and conceal risks

Software Quality & Risk Management
Chapter 5 of 14