Wednesday, August 10, 2016

Software Verification and Validation - Software Engineering II


Software Verification and Validation
Software Verification and Validation | BSCSCAFE


Verification and Validation are two independent procedures that are used together to make sure that a product, service or system meets requirements and specifications that it fulfill the needs of end-user.


Software Validation: 


It is a process to verify that the product being built is according to the needs of the end-user and all the specifications of a product satisfies the user expected requirements. The product is actually meets the user need. It is done by Dynamic Testing and reviews. 


Are we building the right product for the user?

Software Verification: 


It is a process to make sure that we are building the product in a right way and product is being processed according to the needs of the user. The service or system being built is according to the set of requirement and designed specification. It is a process that evaluates whether product or system compiles with the initial specification or condition. Process chosen for the software development is right.


 Are we building the product in a right way?

There are two Verification approaches:



  1. Dynamic Verification: It is carried out while execution by checking dynamic behavior of the code or software. It is categorized into following three small families. 
    1. Test in the small: A process that tests a single class or function. Each function is tested individually at a very small level. 
    2. Test in the large: A test that tests a group of classes. 
    3. Acceptance test: A test that checks approval standards for a software. 
  2. Static Verification: it is a process of checking the software source code to meet the end-user requirements by investigating, mathematical calculation and logical evaluation before execution.



Efficiency:


When a software shows productivity, responsiveness or stability under a particular work load and stress produces desired results.


Correctness:


When it is said that algorithm is correct with respect to the specification. Total Correctness: which requires that the algorithm terminates but in Partial Correctness which simply requires if a value is returned it will be correct.


Integration: 


It is a process of concatenating functionally multiple units of a product to function together properly as a complete system. System is consisted upon multiple subsystems. 


Methods of Integration:



  1. Vertical Integration: is a process of integrating units and subsystems of a product according to their functionality. It make integrating quick and cheaper as compared to the other methods. 
  2. Star Integration: in this method every subsystems and units are inter-connected to every other remaining subsystems. Sometimes this method is preferable because of flexibility. Long term and costly projects.
  3. Horizontal Integration: this methods uses a specialized subsystem for the communication between the interface and other subsystems. Horizontal Integration cost’s high.

No comments:

Post a Comment