JRA4-MOD-2000-0004 Revision : 1.0 Date : 26/11/2004 JRA4 <SOFTWARE PACKAGE> SOFTWARE VERIFICATION AND VALIDATION PLAN TEMPLATE Author1 (Author@institute.com ) Institute1 Author2 Institute2 Author3 Institue3 Author : vmmodel Signature : Institute : Date : Approved by : Signature : Institute : Date : Released by : Signature : Institute : Date : JRA4-MOD-2000-0004 Software Verification and Validation Plan Template CHANGE RECORD REVISION DATE AUTHOR SECTIONS/PAGES AFFECTED REMARKS Revision: 1.0 Page 2/7 JRA4-MOD-2000-0004 Software Verification and Validation Plan Template TABLE OF CONTENTS 1 2 3 Introduction ___________________________________________________________ 4 1.1 Purpose ________________________________________________________________ 4 1.2 Reference Documents ____________________________________________________ 4 1.3 Abbreviations and Acronyms ______________________________________________ 4 1.4 Document Conventions ___________________________________________________ 4 Testing Approach _______________________________________________________ 5 2.1 Component Testing ______________________________________________________ 5 2.2 Integration Testing_______________________________________________________ 5 2.3 Conversion Testing ______________________________________________________ 5 2.4 Job Stream Testing ______________________________________________________ 5 2.5 Interface Testing ________________________________________________________ 5 2.6 Recovery Testing ________________________________________________________ 5 2.7 Performance Testing _____________________________________________________ 5 2.8 Regression Testing _______________________________________________________ 5 2.9 Acceptance Testing ______________________________________________________ 6 2.10 Beta Testing ____________________________________________________________ 6 Test Description ________________________________________________________ 6 3.1 [Test Identifier] _________________________________________________________ 6 3.1.1 3.1.2 3.1.3 3.1.4 4 Functions ____________________________________________________________________ Means of Control ______________________________________________________________ Test Data ____________________________________________________________________ Test Procedure ________________________________________________________________ 6 6 6 6 Environmental Requirements _____________________________________________ 7 4.1 Hardware ______________________________________________________________ 7 4.2 Software _______________________________________________________________ 7 4.3 Tools __________________________________________________________________ 7 IMPORTANT: This document is designed to provide guidelines for writing Software Verification and Validation Plan. The author should add any new sections that are pertinent to the project. NOTE TO AUTHOR: Italicized blue text throughout this template is provided solely as background information to assist you in creating this document. Please delete all such text, as well as the instructions in each section, prior to submitting this document. ONLY YOUR PROJECT-SPECIFIC INFORMATION SHOULD APPEAR IN THE FINAL VERSION OF THIS DOCUMENT. This template covers all the software life cycle phase. For the Requirement Phase, as defined in Software Development Plan, JRA4-PLA-2000-0001, the explanation text of the sections which are not yet relevant have been grayed. Revision: 1.0 Page 3/7 JRA4-MOD-2000-0004 1 Software Verification and Validation Plan Template Introduction The Software Verification and Validation (V&V) is a disciplined approach to assessing software products throughout the software development life cycle. Verification and validation strives to ensure that quality is built into the software and that the software satisfies functional requirements. Software verification and validation employs review, analysis, and testing techniques to determine whether a software product and its intermediate deliverables comply with requirements. These requirements include both functional capabilities and quality attributes. The Software Verification and Validation Plan (SVVP) is designed to prescribe the scope, approach, and resources of all testing activities. The plan must identify the items to be tested, the features to be tested, the types of testing to be performed and the resources required to complete testing. 1.1 Purpose Specify the purpose of this SVVP. The objectives of the V&V effort are to find defects and to determine if required functions are built into the software. V&V activities are designed to support: 1. Verification that software satisfies the standards, policies, practices, procedures, and conventions, 2. Validate that the completed end product complies with established software requirements. 1.2 Reference Documents This subsection provides a complete list of all documents referenced elsewhere in the SVVP. Identify each document by title, revision number if applicable, date, and publishing organization. This information may be provided by reference to an appendix or to another document. [1] Document number, revision, date (optional), title, author. or [2] Book title, author, publisher, year 1.3 Abbreviations and Acronyms This subsection provides the definitions of all terms, acronyms, and abbreviations required to properly interpret the SVVP. This information may be provided by reference to the project's Glossary. TBD To Be Defined 1.4 Document Conventions Describe any standards or typographical conventions that were followed when writing this SVVP, such as fonts or highlighting that have special significance. Revision: 1.0 Page 4/7 JRA4-MOD-2000-0004 2 Software Verification and Validation Plan Template Testing Approach Describe the overall approaches to testing. The approach should be described in sufficient detail to permit identification of the major testing tasks and estimation of the time required to do each task. Identify the types of testing to be performed along with the methods and criteria to be used in performing test activities. Describe the specific methods and procedures for each type of testing. Define the detailed criteria for evaluating the test results. 2.1 Component Testing Testing conducted to verify the implementation of the design for one software element (e.g., unit, module) or a collection of software elements. Sometimes called unit testing. The purpose of component testing is to ensure that the program logic is complete and correct and ensuring that the component works as designed. 2.2 Integration Testing Testing conducted in which software elements, hardware elements, or both are combined and tested until the entire software has been integrated. The purpose of integration testing is to ensure that design objectives are met and ensures that the software, as a complete entity, complies with operational requirements. Integration testing is also called System Testing. 2.3 Conversion Testing Testing to ensure that all data elements and historical data is converted from an old data format to the new data format. 2.4 Job Stream Testing Testing to ensure that the application operates in the production environment. 2.5 Interface Testing Testing done to ensure that the application operates efficiently and effectively outside the application boundary with all interfaces. 2.6 Recovery Testing Testing done to ensure that application restart and backup and recovery facilities operate as designed. 2.7 Performance Testing Testing done to ensure that the application complies with customer expectations (response time, availability, portability, and scalability). 2.8 Regression Testing Testing done to ensure that applied changes to the application have not adversely affected previously tested functionality. Revision: 1.0 Page 5/7 JRA4-MOD-2000-0004 2.9 Software Verification and Validation Plan Template Acceptance Testing Testing conducted to determine whether or not a software satisfies the acceptance criteria and to enable the customer to determine whether or not to accept the software. Acceptance testing ensures that customer requirements' objectives are met and that all components are correctly included in a customer package. 2.10 Beta Testing Testing, done by the customer, using a pre-release version of the product to verify and validate that the software meets functional requirements. The purpose of beta testing is to detect application faults, failures, and defects. 3 Test Description This section provides a description of the tests. Each test should be under a separate section header, 3.1 - 3.x. 3.1 [Test Identifier] Provide a test name and identifier here for reference in the remainder of the section. Describe the test to be performed. 3.1.1 Functions Provide a detailed list of the functions to be tested. 3.1.2 Means of Control Indicate whether the test is to be controlled by manual, semiautomatic, or automatic means. 3.1.3 Test Data 3.1.3.1 Input Data Describe the manner in which input data are controlled in order to test the software with a minimum number of data types and values, exercise the software with a range of bona fide data types and values that test for overload, saturation, and other "worst case" effects, and exercise the software with bogus data and values that test for rejection of irregular input. 3.1.3.2 Output Data Identify the data produced by the tests. Describe the manner in which the output data are analyzed in order to: detect whether an output is produced, and evaluate the test output against the anticipated output to assess software performance. 3.1.4 Test Procedure Describe the step-by-step procedures to perform test. Revision: 1.0 Page 6/7 JRA4-MOD-2000-0004 4 Software Verification and Validation Plan Template Environmental Requirements Specify both the necessary and desired test environment. Identify special test tools needed and other testing needs. Identify the source of all needs that is not currently available. 4.1 Hardware Identify the computer hardware and network requirements needed to complete test activities. 4.2 Software Identify the software requirements needed to complete testing activities. 4.3 Tools Identify the special software tools employed in the testing efforts. The purpose and use of each tool shall be described. Revision: 1.0 Page 7/7