1.4 Verification and Validation (V Model), Quality Assurance, Quality Control.

22518 Software Testing MSBTE CO IT 1.4 Verification and Validation (V Model), Quality Assurance, Quality Control.


Software Verification and Validation (V Model)

            Software Verification and Validation are two important phases in the software development lifecycle. They ensure that the system meets the specified requirements and that it fulfills its intended purpose.

  1. Software Verification: This is the process of checking that a product meets specified requirements at each stage during the development process. It involves reviewing design documents, conducting inspections, walkthroughs, and other technical reviews. The main question answered during verification is: "Are we building the product right?", which means the product is being developed in the correct way and adheres to specifications, designs, and requirements.
  2. Software Validation: This is the process of evaluating software at the end of the development process to ensure it satisfies the specified requirements. It involves actual testing and takes place after verifications are completed. The main question answered during validation is: "Are we building the right product?", which means that the product fulfills its intended use.

 

V Model:

            The V Model is a graphical representation of the software development lifecycle. It is called the V Model because it follows the sequential path of execution of processes. Each phase must be completed before the next phase begins, and it bends upwards after the coding phase is completed, thus making a "V" shape.

            The V Model demonstrates the relationships between each phase of the development lifecycle and its associated phase of testing. The left side of the model is the software development process (requirements analysis, system design, etc.), while the right side represents different types of testing activities corresponding to each development activity (user acceptance testing, system testing, etc.).

            This model emphasizes the importance of validation and verification in producing high-quality software by planning for testing activities in parallel with each development activity. The goal is to catch defects as early as possible when they are less costly to fix.

 

 

Software Quality Assurance and Software Quality Control.

            Software Quality Assurance (SQA) and Software Quality Control (SQC) are both crucial aspects of the software development process aimed at ensuring the quality of software products. However, they refer to different processes and activities:

  1. Software Quality Assurance (SQA): This is a process-oriented approach that focuses on the development process and its improvement. The aim of SQA is to prevent defects by ensuring that processes used in the development lifecycle are of high quality. SQA involves activities such as process checklists, process standards, process documentation, and process improvement methods. It's about creating an environment where quality is inherent in the process, rather than inspected into the product.
  2. Software Quality Control (SQC): This is a product-oriented approach that focuses on identifying defects in the actual products produced. It involves activities such as reviews, walkthroughs, inspections, and testing, which are aimed at detecting and fixing defects in the software. SQC is essentially the validation and verification process of ensuring that the product meets specified requirements.

While both SQA and SQC are crucial for producing high-quality software, they serve different purposes and perform different roles in the software development lifecycle. SQA focuses on the processes used to create the software, while SQC focuses on the software product itself. Both are integral parts of an effective quality management system.

Post a Comment

Previous Post Next Post