1.1 Purpose of this Document
| The purpose of the Verification and Validation Plan is to allow the testers and
implementers to ensure that the project meets the needs and expectations of the
client. This document will outline the testing plans. |
1.2 Scope of the Development Project
| We are designing RivX, some software
to be used by outdoor recreational
expedition businesses for scheduling
expeditions and storing data relating to
those expeditions and the customers of
the business. |
1.3 Definitions, Acronyms, and Abbreviations
| Event
|
The system manages events for outdoor
recreation companies. These events could include a river expedition, hiking
tours, bike tour, backpacking trip, etc. |
| Java
|
An object oriented programming language
designed for portability.
|
| JavaBeans
| Certain types of Java classes that allow
for simple access of data members.
|
| JSP
|
JavaServer Pages. Provide simple
development of HTML web pages with Java programming language functionality.
|
| MokiMac
|
A river expedition company
whos needs inspired our project. MokiMac website |
| MySQL
|
The type of database server and database
communication we will be using.
|
| Page
|
A web page, part of our system that
represents a different section of the system. |
| RivX
|
The name of our system inspired by
MokiMac River Expeditions Inc. |
| Servlet
|
A class of the Java programming language
that provides efficient web server application design.
|
| SDS
|
Software Design Specification.
|
| SQL
|
A programming language that allows user
to read, write, or remove data in a database.
|
| SRS
|
Software Requirements Specification |
| Web-based
|
Parts of the system that can be accessed
through the Internet via a web browser. |
| VVP |
Acronym for the Verification and
Validation Plan |
|
1.4 References
|
|
We will draw on the experience of past team projects, courses, and professional
work. Our team has and will use the following resources for process guidelines
in defining software requirements:
Courses:
-
CS 3500 - Software Practices
-
CS 3960-01 - Team Software Engineering
-
CS 6961 - Designing Complex Software
Books and Articles:
People:
-
Quist, Richard & Annie. Industry, Requirements, and Customer consultants.
MokiMac River Expeditions.
In creation of this document, we also referenced a previous document of our
own:
|
1.5 Overview of Document
| The Verification and Validation Plan is organized into nine sections: the
introduction and overview, the reviews, walkthroughs, inspections, and audits,
the component test plans and procedures, the system test plans and procedure,
the defect tracking plans, the traceability from SRS to SDS, the
test-requirements cross-reference matrix, the acceptance test and preparation
for delivery, and additional information. Section three details the overview of
component tests and the component test case descriptions. Section four details
the overview of the system test strategy and the system test case descriptions.
Section eight is divided into three parts. Section 8.1 discusses the procedure
by which the software product will be acceptance tested. The specific
acceptance criteria is detailed in section 8.2. In section 8.3, the scenario by
which the software product will be installed is described. |
|
back to table of contents
2.0 Reviews, Walkthroughs, Inspections, and Audits
2.1 Procedures for Reviews, Walkthroughs, Inspections, and Audits
|
For any document, we will follow the process described in section 2.2, the
organizational structure. We have
clearly defined roles for the documentation, namely: content manager, style
manager, reviewer, and quality assurance.
The documentation will be created by each member of the team, and then it will go to the content manager
to ensure all required information is present.
The style manager will ensure that it is consistent with the required format and is well-organized.
This draft will then be delivered to the reviewer to ensure well-written work, and finally, it will be
reviewed again to ensure the overall document is up to par.
Throughout the development of the software, we will each
review other team members?work. The
developer will provide other team members with a walkthrough of the progress he
has made. At this point, a review
team will inspect the portion of the software being reviewed, and inform the
developer of the results.
At this time, they will report any defects or problems each week as progress continues on the project.
We will have three releases of our project, alpha, beta, and
final.
For each of these releases, an audit will be conducted by an outside source (i.e., not a member of our
team).
This objective feedback will allow us to make any necessary corrections and changes (in the first two
releases) to provide the best possible solution for our client.
|
2.2 Schedule of Reviews, Walkthroughs, Inspections, and Audits
|
The document review process will take place a few days prior
to the specific document’s due date. We
will be prepared to provide more extensive reviews (more than our planned
review process) if the document requires.
Our tentative plan is to have a walkthrough every two weeks.
This is flexible as need arises to perform either a greater or lesser number of these walkthroughs with
other team members.
This will be determined by the
individual developers or based on feedback from the entire team.
With each walkthrough, we will have an inspection, as described in the review
process in the previous section.
As with the walkthroughs, either the developer or the team can determine that either more or less
inspections are necessary.
There are three scheduled audits throughout the semester. The first audit will
be conducted on the alpha release of the project by March 11.
The beta version of the project will be audited by April 1, and the
audit on the final release will be completed by April 22.
|
|
back to table of contents
3.0 Component Test Plans and Procedures
3.1 Component Test Strategy Overview
|
Testing process:
-
Phase 1:
Verify that the webpage contains
correct content
-
Phase 2:
Verify that user has to log in to
access pages which modify the database
-
Phase 3:
Verify that the user can easily
maintain the information stored in the database
-
Phase 4:
Verify that 4-8 user can connect to the
website at the same time
-
Phase 5:
Verify that the website can be accessed
at any time
-
Phase
6: Verify that access to database is available from
the web server
-
Phase
7: Verify that the website is compatible with listed
browsers
Requirements
traceability:
All webpages
must meet the following requirements:
- Must contain appropriate content
(SRS sections 3.2.1 through 3.2.6)
Only people with the access key
will be able to edit the database (SRS section 3.4)
The Program should be easily maintainable (SRS section 3.4)
4-8 can connect to the site at the same time (SRS section 3.3)
Access to the website can be at anytime (SRS section 3.4)
Access to database must be available from the web server (SRS section
2.5)
Must be compatible with listed browsers(SRS section 2.5)
Items or components tested:
-
"Trip" page
-
"Billing"
page
-
"Schedule"
page
-
"Employee/Guide" page
-
"Customer/Party" page
-
"Equipment"
page
-
"Login"
page
Testing schedule and resources:
-
The testing
schedule will be known in the future. Testing will use
the following resources:
-
Testing team
-
Johnathan Cazier, Shawn Crabb, Kyungseog Oh, Gib Reimschussel
-
Resources
Test recording procedures:
-
The test
results will be recorded as a webpage and a simple text
file. The simple text results will be from a team
member recording results of a checklist.
Software requirements:
-
Compatible Internet Browser
Constraints:
None
|
3.2 Test Group for all components
Test case group identification
|
Test case group
3.2:
This test case group applies to the following components:
-
All
webpages on the Moki Team Project website
|
Features to be tested
|
-
Must contain appropriate content (SRS sections 3.2.1 through 3.2.6)
-
Only people with the access key will be able to edit the database (SRS section
3.4)
-
The Program should be easily maintainable (SRS section 3.4)
-
4-8 can connect to the site at the same time (SRS sections 3.3)
-
Access to the website can be at anytime (SRS section 3.4)
-
Access to database must be available from the web server (SRS section
2.5)
-
Must be compatible with listed browsers(SRS section 2.5) grammar (SRS
section 3.5)
|
Testing approach
|
Test case strategies and
techniques:
-
Content will be checked by ensuring all components listed in SRS sections 3.2.1
through 3.2.6 are included in the website
-
Access to the website will be ensured by ensuring that anyone accessing the
website will be required to login with a valid username and password before
accessing any other web pages in the site
-
Maintainibility will be shown by whether or not the user can modify the
database through the interface provided on our website
-
To check that 4-8 users can connect to the site at the same time we will have
at least 4 machines with 4 people try to connect to our site at the same
time
-
To check that access to the website can be at anytime we will try accessing the
website at various times during the day
-
To check that the database is available from the web server we will execute one
the interfaces on the website that requires connecting to the database
-
Browser compatibility will be determined with the aid of a checklist of
required browsers. This test will be conducted through manual testing.
Analysis methods: The results
will be used to determine whether or not our website is accessible to the right
people at the right times, with the necessary content.
Test case rationale: Webpages
have many issues with accessing the website at anytime and also having access
to the database at anytime, and that access should be restricted to a certain
set of users.
|
Pass/Fail criteria
|
The following criteria must be met for each webpage tested:
-
All content listed in SRS sections 3.2.1-3.2.6 can be found on the website
-
Login is requried to access webpages on the site
-
Interfaces are provided to modify the information in the database
-
At least 4 users to connect to the website at the same time
-
Website must be accessible at one time in the morning, one time in the
afternoon, and one time in the evening
-
When executing an interface on the website that uses the database, the
connection will be successful and will return the appropriate results
-
Each webpage must be compatible with the browsers given in the checklist.
|
3.2.1 Test case for all
components: Content
Input
|
All webpages included in the website
|
Output
|
All components listed in SRS 3.2.1-3.2.6 are found on the website |
Environment
|
The compliance test will take place on the Internet through a web browser
|
Special procedures
|
N/A
|
Precedence and dependencies
|
Webserver and database server are both running and accessible.
|
References
|
N/A |
3.2.2 Test case for all
components: Access Restriction
Input
|
Login web page
|
Output
|
User is only allowed to access other pages if login was accepted |
Environment
|
The compliance test will take place on the Internet through a web browser
|
Special procedures
|
N/A |
Precedence and dependencies
|
Webserver and database server are both running and accessible.
|
References
|
N/A |
3.2.3 Test case for all components:
Database modification interfaces
Input
|
All webpages included in the website
|
Output
|
Interfaces are provided to modify the information in the database |
Environment
|
The compliance test will take place on the Internet through a web browser
|
Special procedures
|
N/A |
Precedence and dependencies
|
Webserver and database server are both running and accessible.
|
References
|
N/A
|
3.2.4 Test case for all
components: User Limit
Input
|
N/A
|
Output
|
At least 4 users can use the website at the same time without any conflicts
|
Environment
|
The compliance test will take place on the Internet through a web browser
|
Special procedures
|
N/A
|
Precedence and dependencies
|
Webserver and database server are both running and accessible.
|
References
|
N/A
|
3.2.5 Test case for all components:
Accessibility
Input
|
All webpages in the website
|
Output
|
Website is accessible at one time in the morning, one time in the afternoon,
and one time in the evening |
Environment
|
The compliance test will take place on the Internet through a web browser
|
Special procedures
|
N/A
|
Precedence and dependencies
|
N/A
|
References
|
N/A
|
3.2.6 Test case for all components:
Database Availibility
Input
|
All webpage on the website
|
Output
|
All webpages that use a database connection will be successful |
Environment
|
The test will take place on the Internet through a web browser
|
Special procedures
|
Each webpage will be viewed in a
web-browser and its properties will be compared against the
above checklist.
|
Precedence and dependencies
|
Webserver is running and accessible.
|
References
|
N/A
|
3.2.7 Test case for all components: Browser
compatibility
Input
|
All webpages in website
|
Output
|
-
The following list shows several browsers with which the website must be
compatible:
-
-
Mozilla 1.3.1 and up
-
Netscape Navigator 6.0 and up
-
Internet Explorer 5.0 and up
|
Environment
|
The test will take place on the Internet through each listed web browser
|
Special procedures
|
Each webpage will be viewed by each
web-browser in the above list.
|
Precedence and dependencies
|
Internet connection and listed browsers available
|
References
|
N/A
|
|
back to table of contents
4.0 System Test Plans and Procedures
4.1 System Test Strategy Overview
|
Our basic test strategy is trial and error. Since we are creating web based
application, we will simply test system by giving inputs to the fields, and
clicking the links.We will also demo our first version of system to client and
get feedback on the system to make that it conforms to the client's
specifications.
The system is composed of multiple components. Each component must be working
correctly, and must be able to interact with all of the other components for
the system to function properly.
Testers will record the date and the environment they use to test the product,
including hardware, operating system, and web browser. For each test, testers
will also record the test number, procedure followed, expected result, whether
the test passes, and if the test fails, a failure description.
Minimum system requirement is Windows O/S above 98 with Microsoft Internet
Explorer or Netscape Navigator. Also there must be web server and
database server that can be connected from local machine.
The format for test groups is noted below:
| Module Type |
Type(s) of module to which the test
applies |
| Purpose/Function |
Purpose of the test |
| Test Procedure |
Actions taken by the performer of the
test |
| Expected Result |
Expected outcome of test procedure |
|
4.2 Code Verification
| Module Type |
Code files, including HTML, Java
Servlets, and JSP |
| Purpose/Function |
To ensure the correctness of the code |
| Test Procedure |
Inspect code and/or use validation tools
to check correctness of code |
| Expected Result |
Valid codes |
|
4.3 Link Integrity
| Module Type |
Links |
| Purpose/Function |
To ensure links are correct |
| Test Procedure |
Click each link to navigate through the
system |
| Expected Result |
Each link connects to the intended
location |
|
4.4 System Connectivities
| Module Type |
Connection with web and database server |
| Purpose/Function |
To ensure connection is set up with
application |
| Test Procedure |
Input values in the field and check whether the input is correctly submitted to
database
Retrieve customer, trip, and employee information from database, and check
whether they are correctly received
|
| Expected Result |
Request and Retrieve action to database
work properly |
|
4.5 Function Verification
| Module Type |
Functionality of each page |
| Purpose/Function |
To ensure each page works properly as
intended |
| Test Procedure |
Create bogus info and submit to database
Retrieve information from database
Schedule trips with given customer and trip information
|
| Expected Result |
Each link connects to the intended
location |
|
|
back to table of contents
5.0 Defect Tracking Plans
|
Finding Defects
To ensure quality in the product, the team must be able to find and be
notified of defects.
We have configured the Tomcat server to log the maximum debugging
information during development and will investigate these logs as needed.
We also configured the system to send the team an email when Exceptions
are thrown with the error information.
Tracking and Prioritizing
All defects will be tracked in an HTML file in a table with the following
columns: Priority, Description, Date Found, Found By,
Date Resolved, Resolved By.
-
Severity 1 / Critical
- The defect must be addressed immediately -- the whole system is
compromised by it and may slow development.
exist.
-
Severity 2 / High
- The defect is several but isolated to a tier or sub section of
the system. Development will only slow in this section.
-
Severity 3 / Medium
- The defect must be addressed before the product can be delivered,
but will not slow development.
-
Severity 4 / Trivial
- These defects will be resolved as time permits.
|
back to table of contents
6.0 Traceability from SRS to SDS
|
Description |
SRS |
SDS |
|
Managing trip scheduler, guide, and event.
|
3.2.1 Manage the details of an event; i.e. river expedition, hiking tour, etc.
|
3.2 Trip Class
3.5 Guide Class
3.6 Boat Class
3.9 Trip Page
|
|
Manage customer informations.
|
3.2.2 Manage the details of an event participant (customer)
|
3.4 Customer Class
|
|
Print reports for various purpose from company side.
|
3.2.3 Print various reports
|
3.7 Hours Worked Class
3.8 GenerateReports Class
3.12 Employee/Guide Page
|
|
Print billing information for each trip.
|
3.2.4 Print invoices for billing
|
3.8 GenerateReports Class
3.10 Billing Page
|
|
View and Schedule events.
|
3.2.5 Provide a view of scheduled events
|
3.11 Schedule Page
|
|
Email events to customers
|
3.2.6 Email event participants (customers)
|
3.4 Customer Class
|
|
back to table of contents
7.0 Test-Requirements Cross-Reference Matrix
The following table, known as the test-requirements cross-reference matrix,
shows how every requirement listed in the SRS will be tested.
Requirement Identifier
|
Requirement Description
|
Requirement Test Method
|
Requirement Variables
|
Requirement Variable Ranges
|
Requirement Functionality
|
Comments
|
| SRS sections 3.2.1 through 3.2.6 |
Must contain appropriate content |
inspection and demonstration |
N/A |
N/A |
Necessary Funcitonality |
N/A |
| SRS section 3.4 |
Only people with the access key will be able to edit the database
|
inspection and demonstration |
N/A |
N/A |
Security |
N/A |
| SRS section 3.4 |
The Program should be easily maintainable |
inspection and demonstration |
N/A |
N/A |
Maintainance |
N/A |
| SRS section 3.3 |
4-8 can connect to the site at the same time
|
inspection and demonstration |
# users connecting |
4-8 |
Ensures a minimum of 4-8 can connect at the same time
|
N/A |
SRS section 3.4
|
Access to the website can be at anytime |
inspection and demonstration |
N/A |
N/A |
Accessibility |
N/A |
SRS section 2.5
|
Access to database must be available from the web server |
inspection and demonstration |
N/A |
N/A |
Database Availibility |
N/A |
SRS section 2.5
|
Must be compatible with listed browsers
|
inspection and demonstration |
N/A |
N/A |
Browser Compatibility |
N/A |
back to table of contents
8.0 Acceptance Test and Preparation for Delivery
8.1 Procedure By Which The Software Product Will Be Acceptance Tested
The team will follow the following for declaring the system
complete:
-
The team will ensure the system adheres to the design
specifications in the SRS and SDS documents.
-
All defects reported (see section 5.0 of this document)
will be resolved or acceptable work arounds found.
-
We will develop our product through several milestone
versions to find and correct any defects in our product.
-
Moki Mac will view the products during various stages of
development and we will refactor as required.
|
8.2 Specific Acceptance Criteria
Moki Mac has determined the following requirements for the system:
-
The product should have a similar user flow the client's
existing system and provide the same functionality.
The team has the following additional goal:
-
Improve the usability over the existing system by
providing a single menu from which to perform system tasks.
|
8.3 Scenario By Which The Software Product Will Be Installed
|
The software will be installed on a Linux or Apple server
by a member of the team.
The client will need no additional software installed since
the system is accessed through a web browser.
|
|
back to table of contents
Change Log
|
version |
date |
description |
| 1.0 |
25 Feb 2005 |
-The Verification and Validation Plan document is
created. |
back to table of contents
|