Download Link for your Favorite Presentation is at the End of this Page
Ins and Outs of Software VandV Planning-SVVP
The development of a comprehensive V&V plan is essential to the success of a project. This plan must be developed early in the project. Depending on the development approach followed, multiple levels of test plans may be developed, corresponding to various levels of V&V activities. IEEE 83b has documented the guidelines for the contents of system, software, build and module test plans.
Following steps are followed for SVVP
Step – 1: Identification of V&V Goals:
V&V goals must be identified from the requirements and specifications. These goals must address those attributes of the product that correspond to its user expectations. These goals must be achievable, taking into account both theoretical
and practical limitations.
Step – 2: Selection of V&V Techniques:
Once step – 1 (as described above) is finished, we must select specific techniques for each of the product that evolves during SDLC. These are as under
(a) During Requirements Phase: The applicable techniques for accomplishing the V&V objectives for requirements are-technical reviews, prototyping and simulations. The review process is often called as a System Requirement Review (SRR).
(b) During Specifications Phase: The applicable techniques for this phase are technical reviews, tracing of requirements, prototyping & simulations. The requirements must be traced to the specifications.
(c) During Design Phase: The techniques for accomplishing the V&V objectives for designs are technical reviews, tracing of requirements, prototyping, simulation and proof of correctness. We can go for following two types of design reviews
1) High level designs corresponding to the product�s architectural are usually reviewed in a Preliminary Design Review (PDRs).
2) Detailed designs are addressed by a Critical Design Review (CDRs).
(d) During Implementation Phase: The applicable techniques for accomplishing V&V objectives for implementation are technical reviews, requirements tracing, testing and proof of correctness. Various code review techniques such as walkthroughs and inspections exist.
At the source-code level, several static analysis techniques are available for detecting implementation errors. The requirements tracing activity is here concerned with tracing requirements to source-code modules. The bulk of the V&V activity for source code consists of testing. Multiple levels of testing are usually performed. At the module-level, proof-of-correctness techniques may be applied, if applicable.
(e) During Maintenance Phase: Because changes define the modifications in the products, the same techniques used for V&V during development may be applied during modification. Changes to implementation require regression testing.
Step – 3: Organizational Responsibilities:
The organizational structure of a project is a key planning consideration for project managers. An important aspect of this structure is delegation of V&V activities to various organizations.
This decision is based upon the size, complexity and criticality of the product. Four types of organizations are addressed. These organizations reflect typical strategies for partitioning tasks to achieve V&V goals for the product. These are
(a) Developmental Organization: This type of organization has the following responsibilities
1) To participate in technical reviews for all of the evolution products.
2) To build prototypes & simulations.
3) To prepare and execute test plans for unit and integration levels of testing. This is called as “Preliminary Qualification Testing” (PQT).
4) To construct any applicable proofs of correctness at the module level.
(b) Independent Test Organization (ITO): This type of organization has the following responsibilities
1) It enables test activities to occur in parallel with those of development.
2) It participates in all of the product’s technical reviews and monitors PQT effort.
3) The primary responsibility of the ITO is the preparation and execution of the product’s system test plan. This is sometimes referred to as the “Formal Qualification Test” (FQT).
The plan for this must contain the equivalent of a requirements/evaluation matrix that defines the V&V approach to be applied for each requirement.
4) If the product must be integrated with other products, this integration activity is normally the responsibility of the ITO.
(c) Software Quality Assurance (SOA) Organizations: The intent here is to identify some activities for assuring software quality. Evaluations are the primary avenue for assuring software quality. Some evaluation types are as under
1) Internal consistency of product.
2) Understandability of product.
3) Traceability to indicated documents.
4) Consistency with all the indicated documents.
5) Appropriate allocation of sizing, timing and resources.
6) Adequate test coverage of requirements.
7) Completeness of testing.
8) Completeness of regression testing.
(d) Independent V&V Contractor: An independent contractor may be selected to do V&V. The scope of activities of this organization varies from that of ITO (as discussed above) and SOA organization.
Step – 4: Integrating V&V Approaches:
After defining comprehensive V&V objectives, we need to describe an integrated overall V&V approach. Such an approach comprises of integration of techniques applicable to various life cycle phases as well as delegation of these tasks among the project’s organizations. The planning of this integrated V&V approach depends upon the nature of the product and the process used to develop it.
Earlier waterfall approach for testing was used and now incremental approach is used. Regardless of the approach selected, V&V progress must be tracked.
Requirements / evaluation matrices play a key role in this tracking by providing a means of insuring that each requirement of the product is addressed.
Step – 5: Problem Tracking:
1) It involves documenting the problems encountered during V&V effort.
2) Routing these problems to appropriate persons for correctness.
3) Insuring that corrections have been done.
4) Typical information to be collected includes
(a) When the problem occurred.
(b) Where the problem occurred.
(c) State of the system before occurrence.
(d) Evidence of the problem.
(e) Priority for solving problem.
This fifth step is very important, when we go with OS testing.
Step – 6: Tracking Test Activities:
SVVP must provide mechanism for tracking testing effort, testing cost and testing quality. To do this the following data is collected
(a) Number of tests executed.
(b) Number of tests remaining.
(c) Time used.
(d) Resources used.
(e) Number of problems found.
These data can be used to compare actual progress of the test with the scheduled progress.
Step – 7: Assessment:
It is of prime importance that our plan for software V&V possesses necessary ability to capture data which can be utilised to assess both the product and the techniques used to develop it. This involves careful collection of error and failure data, as well as analysis and classification of these data.
DownLoad Link for Presentation: