Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

testing
software testing

What is software verification and how is it done?

Behzad Ahmad

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

As per IEEE, “Verification is the process of evaluating the system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase” [IEEE01].

In general, software verification is the process by which we determine whether the software built meets the expected requirements without actually executing the code.

In software verification, we review the documents and perform walkthroughs of the code to find faults in the system in the early stages of development. The verification process aims to ensure the quality of the design, architecture, and overall software.

The most commonly used verification methods are:

  • Peer reviews

  • Walkthroughs

  • Inspection

Peer reviews

In peer reviews, other developers review the documents to find faults in the system. This activity aims to have a low cost, high quality, and high degree of effectiveness.

During this process, the software requirements verification (SRS) document is reviewed in detail. It is an informal activity, and it provides the best results only if the reviewer has the following:

  • Domain knowledge
  • Proper involvement
  • Good programming skills

Walkthroughs

In walkthroughs, the author prepares for the meeting and presents the document to a small group.

The author then distributes the document to the team and introduces the material to familiarize people with the document.

All the participants can ask questions, discuss the product’s functionality, and then write the faults and defects in a report. At the end of the meeting, the author writes a detailed report about the error or faults identified in the meeting.

Inspection

Inspections are formal reviews where a group of trained professionals reviews the code and the design. The members of the review group are not on the development team.

RELATED TAGS

testing
software testing

CONTRIBUTOR

Behzad Ahmad
Copyright ©2022 Educative, Inc. All rights reserved

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring