Uint 2 Topic 9 Verification

You might also like

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

Verification and Validation

Dr. Rohit Rastogi


Associate Professor,
Computer Science & Engineering Department,
ABES EC, Ghaziabad
Affiliated to Dr. A.P.J. Abdul Kalam Technical University, Uttar
Pradesh, Lucknow
Basic
Verification and Validation is the process of
investigating whether a software system satisfies
specifications and standards and fulfills the required
purpose.

Barry Boehm described verification and validation as the


following:
◦ Verification: Are we building the product right?
Conti…
Verification
is a process of determining if the software is
designed and developed as per the specified
requirements.

Validation is the process of checking if the software (end


product) has met the client’s true needs and
expectations.
Verification
Verification is the process of checking that software
achieves its goal without any bugs.

Itis the process to ensure whether the product that is


developed is right or not.

It verifies whether the developed product fulfills the


requirements that we have.

Verification is simply known as Static Testing.


Conti…
Verification Testing is known as Static Testing and it can
be simply termed as checking whether we are developing
the right product or not and also whether our software is
fulfilling the customer’s requirement or not.

Common activities that are involved in verification.


◦ Inspections
◦ Reviews
◦ Walkthroughs
◦ Desk-checking
Conti…
Conti…
Main advantages of verification are:
 It acts as a quality gateway at every stage of the software
development process.

 Itenables software teams to develop products that meet design


specifications and customer needs.

 Itsaves time by detecting the defects at the early stage of software


development.

 It reduces or eliminates defects that may arise at the later stage of


Conti…
Validation
Validation is process of checking whether the software
product is up to the mark or in other words product has
high-level requirements.

It is the process of checking the validation of the


product i.e. it checks what we are developing is the right
product.

It is a validation of actual and expected products.


Validation is simply known as Dynamic Testing.
Conti…
Validation Testing is known as Dynamic Testing in
which we examine whether we have developed the
product right or not and also about the business needs of
the client.

Common activities that are involved in Validation.


◦ Black Box Testing
◦ White Box Testing
◦ Unit Testing
◦ Integration Testing
Conti…
Conti…
Main advantages of validation processes are:
It ensures that the expectations of all stakeholders are
fulfilled.

It enables software teams to take corrective action if


there is a mismatch between the actual product and the
anticipated product.

It improves the reliability of the end-product.


Example: Walkthrough on a mobile application
A walkthrough of verification
There are three phases in the verification testing of a
mobile application development:

◦ Requirements Verification

◦ Design Verification

◦ Code Verification
Conti…
Requirements verification
Is the process of verifying and confirming that the
requirements are complete, clear, and correct.

Before the mobile application goes for design, the testing


team verifies business requirements or customer
requirements for their correctness and completeness.
Conti…
Design verification
Is a process of checking if the design of the software
meets the design specifications by providing evidence.

Here, the testing team checks if layouts, prototypes,


navigational charts, architectural designs, and database
logical models of the mobile application meet the
functional and non-functional requirements
specifications.
Conti…
Code verification
Is a process of checking the code for its completeness,
correctness, and consistency.

Here, the testing team checks if construction artifacts


such as source code, user interfaces, and database
physical model of the mobile application meet the design
specification.
Conti…
A walkthrough of validation
Validation emphasizes checking the functionality,
usability, and performance of the mobile application.
Conti…
Functionality testing
 Checks if the mobile application is working as expected.

 For instance, while testing the functionality of a ticket-


booking application, the testing team tries to validate it
through:
◦ Installing, running, and updating the application from distribution
channels like Google Play and the App Store

◦ Booking tickets in the real-time environment (fields testing)


Conti…
Usability testing
Checks if the application offers a convenient browsing
experience.

User interface and navigations are validated based on


various criteria which include satisfaction, efficiency,
and effectiveness.
Conti…
Performance testing
Enables testers to validate the application by checking its
reaction and speed under the specific workload.

Software testing teams often use techniques such as load


testing, stress testing, and volume testing to validate the
performance of the mobile application.
Verification V/s Validation
Verification Validation

It includes checking documents, design, codes and


It includes testing and validating the actual product.
programs.

Verification is the static testing. Validation is the dynamic testing.

It does not include the execution of the code. It includes the execution of the code.

Methods used in verification are reviews, Methods used in validation are Black Box Testing,
walkthroughs, inspections and desk-checking. White Box Testing and non-functional testing.

It checks whether the software conforms to It checks whether the software meets the requirements
specifications or not. and expectations of a customer or not.

It can find the bugs in the early stage of the It can only find the bugs that could not be found by
development. the verification process.
Conti…
Verification Validation

The goal of verification is application and software


The goal of validation is an actual product.
architecture and specification.

Validation is executed on software code with the help


Quality assurance team does verification.
of testing team.

It comes before validation. It comes after verification.

It consists of checking of documents/files and is It consists of execution of program and is performed by


performed by human. computer.

Validation refers to the set of activities that ensure that


Verification refers to the set of activities that ensure
the software that has been built is traceable to customer
software correctly implements the specific function.
requirements.
Conti…
Verification Validation

After a valid and complete specification the verification


Validation begins as soon as project starts.
starts.

Verification is for prevention of errors. Validation is for detection of errors.

Verification is also termed as white box testing or static Validation can be termed as black box testing or
testing as work product goes through reviews. dynamic testing as work product is executed.

Verification finds about 50 to 60% of the defects. Validation finds about 20 to 30% of the defects.

Verification is based on the opinion of reviewer and may


Validation is based on the fact and is often stable.
change from person to person.

Verification is about process, standard and guideline. Validation is about the product.
Conti…
Validation
Verification

It is a process of checking if a product is developed as per the It is a process of ensuring that the product meets the needs and
Definition
specifications. expectations of stakeholders.

It tests the requirements, architecture, design, and code of the It tests the usability, functionalities, and reliability of the end
What it tests or checks for
software product. product.

It emphasizes executing the code to test the usability and


Coding requirement It does not require executing the code.
functionality of the end product.

The commonly-used validation activities in software testing are


A few activities involved in verification testing are requirements
Activities include usability testing, performance testing, system testing, security
verification, design verification, and code verification.
testing, and functionality testing.

A few verification methods are inspection, code review, desk- A few widely-used validation methods are black box testing,
Types of testing methods
checking, and walkthroughs. white box testing, integration testing, and acceptance testing.

The quality assurance (QA) team would be engaged in the The software testing team along with the QA team would be
Teams or persons involved
verification process. engaged in the validation process.

It targets internal aspects such as requirements, design, software


Target of test It targets the end product that is ready to be deployed.
architecture, database, and code.

You might also like