Test Reduction in Open Architecture via Dependency Analysis

Abstract

In the Verification and Validation (V&V) phase, whenever there is a newer release of a given program, test engineers need to re-conduct all the tests performed on the previous program release-a costly process known as regression testing. By using the concept of program slicing, this project aims to be more effective in managing costly human effort by selectively retesting the subset of the newer program release that is critical and necessary. Program Slicing is an abstraction and program analysis technique based on the principle of eliminating/deleting parts or subsets of the program statements that are irrelevant to a given slicing criterion (Weiser, 1984). The result, which is known as the program slice, holds those statements that directly or indirectly affect the value computed at a given program point. Based on the behavior invariance theorem, the project team intends to reduce the human effort in testing by performing selective regression testing only on the affected subset of the program that is identified by the slicing analysis algorithm, while maintaining the same test adequacy criteria. The primary objective of this project is to evaluate the various commercial-off-the-shelf (COTS) program slicing tools and assess their suitability for enabling safe reduction of testing effort. Identification of suitable tools is a step on the critical path towards application of program slicing to reduce the time and cost of regression testing in the Navy's technology upgrade process and in many other contexts.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Apr 30, 2011
Accession Number
ADA543983

Entities

People

  • Mohsen B. Kahia
  • Peter Lim
  • Valdis A. Berzins

Organizations

  • Naval Postgraduate School

Tags

Communities of Interest

  • Cyber
  • Engineered Resilient Systems
  • Materials and Manufacturing Processes
  • Weapons Technologies

DTIC Thesaurus Topics

  • Air Force
  • Algorithms
  • Application Software
  • Business Administration
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Engineering
  • Programming Languages
  • Software Design
  • Software Development
  • Software Development Tools
  • Software Testing
  • Systems Engineering
  • Test And Evaluation
  • Warfare

Fields of Study

  • Computer science
  • Engineering

Readers

  • Software Engineering.
  • Systems Analysis and Design