Automated testing in software engineering: using ant colony and self-regulated swarms

In this paper, we propose a new approach of software error trace and model checking, incorporating ant colony based agents and self regulated swarms. The automated testing already becomes popular to identify difference of program states in a given piece of source code and thus we focus particularly in the transition of program states, which is effectively monitored by pheromone deposition by these ants and swarms. Finally, an algorithm is developed and implemented contemplating this idea of automated software test and model checking. The advantage of this proposal is to generate multiple error trace having independent root cause, easily traced by labeled path in control dependence graph evolved from the program to be tested. The pheromone distribution of ant and swarms, in the different proportion across this graph signal the error trace in caller and callee function if they mismatch in the program and could display the pheromone value of the path where software error has been localized (root cause). The results are also presented on this new approach of software testing.

[1]  Thomas Ball The Verified Software Challenge: A Call for a Holistic Approach to Reliability , 2005, VSTTE.

[2]  Kathi Fisler,et al.  Verifying Component-Based Collaboration Designs , 2001 .

[3]  Andreas Zeller,et al.  Yesterday, my program worked. Today, it does not. Why? , 1999, ESEC/FSE-7.

[4]  Marco Dorigo,et al.  AntNet: Distributed Stigmergetic Control for Communications Networks , 1998, J. Artif. Intell. Res..

[5]  Beverly Sanders,et al.  An approach to compositional model checking , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[6]  Luca Maria Gambardella,et al.  Ant Algorithms for Discrete Optimization , 1999, Artificial Life.

[7]  Andreas Zeller,et al.  Isolating cause-effect chains from computer programs , 2002, SIGSOFT FSE.

[8]  Agostinho C. Rosa,et al.  Societal Implicit Memory and his Speed on Tracking Extrema over Dynamic Environments using Self-Regulatory Swarms , 2005, ArXiv.

[9]  D. Chialvo,et al.  How Swarms Build Cognitive Maps , 1995 .

[10]  Mayur Naik,et al.  From symptom to cause: localizing errors in counterexample traces , 2003, POPL '03.

[11]  Marco Dorigo,et al.  The ant colony optimization meta-heuristic , 1999 .

[12]  A. Rosa,et al.  Social Cognitive Maps, Swarm Collective Perception and Distributed Search on Dynamic Landscapes , 2005, nlin/0502057.

[13]  Marsha Chechik,et al.  A framework for multi-valued reasoning over inconsistent viewpoints , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[14]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[15]  Sriram K. Rajamani,et al.  The SLAM project: debugging system software via static analysis , 2002, POPL '02.

[16]  Sriram K. Rajamani,et al.  Automatically validating temporal safety properties of interfaces , 2001, SPIN '01.