On the online parameter estimation problem in adaptive software testing

Research output: Journal Publications and Reviews (RGC: 21, 22, 62)21_Publication in refereed journalpeer-review

7 Scopus Citations
View graph of relations

Author(s)

  • Kai-Yuan Cai
  • Tsong Yueh Chen
  • Yong-Chao Li
  • Yuen Tak Yu
  • Lei Zhao

Related Research Unit(s)

Detail(s)

Original languageEnglish
Pages (from-to)357-381
Journal / PublicationInternational Journal of Software Engineering and Knowledge Engineering
Volume18
Issue number3
Publication statusPublished - May 2008

Abstract

Software cybernetics is an emerging area that explores the interplay between software and control. The controlled Markov chain (CMC) approach to software testing supports the idea of software cybernetics by treating software testing as a control problem, where the software under test serves as a controlled object modeled by a controlled Markov chain and the software testing strategy serves as the corresponding controller. The software under test and the corresponding software testing strategy form a closed-loop feedback control system. The theory of controlled Markov chains is used to design and optimize the testing strategy in accordance with the testing/reliability goal given explicitly and a priori. Adaptive software testing adjusts and improves software testing strategy online by using the testing data collected in the course of software testing. In doing so, the online parameter estimations play a key role. In this paper, we study the effects of genetic algorithm and the gradient method for doing online parameter estimation in adaptive software testing. We find that genetic algorithm is effective and does not require prior knowledge of the software parameters of concern. Although genetic algorithm is computationally intensive, it leads the adaptive software testing strategy to an optimal software testing strategy that is determined by optimizing a given testing goal, such as minimizing the total cost incurred for removing a given number of defects. On the other hand, the gradient method is computationally favorable, but requires appropriate initial values of the software parameters of concern. It may lead, or fail to lead, the adaptive software testing strategy to an optimal software testing strategy, depending on whether the given initial parameter values are appropriate or not. In general, the genetic algorithm should be used instead of the gradient method in adaptive software testing. Simulation results show that adaptive software testing does work and outperforms random testing. © 2008 World Scientific Publishing Company.

Research Area(s)

  • Adaptive control, Adaptive software testing, Controlled Markov chain, Genetic algorithm, Gradient method, Parameter estimation, Random testing, Software cybernetics, Software testing

Citation Format(s)

On the online parameter estimation problem in adaptive software testing. / Cai, Kai-Yuan; Chen, Tsong Yueh; Li, Yong-Chao et al.
In: International Journal of Software Engineering and Knowledge Engineering, Vol. 18, No. 3, 05.2008, p. 357-381.

Research output: Journal Publications and Reviews (RGC: 21, 22, 62)21_Publication in refereed journalpeer-review