Page 16 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 16
Unit 1: Introduction to Software Testing
Figure 1.3 shows the pictorial representation of the V model. The left half of the V model is the software
development phase and the right side of the diagram shows the test phase.
Figure 1.3: V Model
During the unit design stage, the individual programs or modules of the entire software are specified,
based on which the test cases for unit testing are developed. Test cases are constructed to check various
aspects of the software. These checks are carried out to test the actual program structure or to test
whether the software functions as per the specification.
While developing test cases to check the software developed for a calculator, we
could check the actual code logic used to perform certain calculations, memory
required by each module, techniques followed to link various modules of the
software, and the overall efficiency.
Unit testing focuses on the types of faults that occur when writing code. Integration testing focuses on
low-level design, especially those errors that occur in interfaces. System test evaluates if the system
effectively implements the high level design, specifically the adequacy of performance in a production
setting. Acceptance tests are performed by the customers to ensure that the product meets the business
requirements. The powerful benefit of this model is that testers are able to verify and validate the
specification at an earlier point in the project. This reduces the defects and builds in quality
significantly. The only drawback that is seen in this model is that it is not suitable when the
requirements are not fully documented and is not applicable to all aspects of development and testing.
1.3.4 Rapid Application Development Model
Rapid Application Development (RAD) is a software development model which is created from the
business requirements, project management requirements and software requirements specifications
(SRS). In this model, a prototype is created and matched against the requirements. If there is a gap,
there is another model created and prototype developed. This model follows a linear sequential
software development process, where an extremely short development cycle is adopted and a re-usable
component is used for development. When the requirements are well understood and defined, the
RAD process enables the development team to develop the final product in a shorter period.
LOVELY PROFESSIONAL UNIVERSITY 9