DOI QR코드

DOI QR Code

An Optimized Approach of Fault Distribution for Debugging in Parallel

  • Srivasatav, Maneesha (Dept. of Computer Science and Engineering/Information Technology, Jaypee Institute of Information Technology) ;
  • Singh, Yogesh (University School of Information Technology, Guru Gobind Singh Indraprastha, University) ;
  • Chauhan, Durg Singh (Uttarakhand Technical University)
  • Received : 2010.08.20
  • Accepted : 2010.11.18
  • Published : 2010.12.31

Abstract

Software Debugging is the most time consuming and costly process in the software development process. Many techniques have been proposed to isolate different faults in a program thereby creating separate sets of failing program statements. Debugging in parallel is a technique which proposes distribution of a single faulty program segment into many fault focused program slices to be debugged simultaneously by multiple debuggers. In this paper we propose a new technique called Faulty Slice Distribution (FSD) to make parallel debugging more efficient by measuring the time and labor associated with a slice. Using this measure we then distribute these faulty slices evenly among debuggers. For this we propose an algorithm that estimates an optimized group of faulty slices using as a parameter the priority assigned to each slice as computed by value of their complexity. This helps in the efficient merging of two or more slices for distribution among debuggers so that debugging can be performed in parallel. To validate the effectiveness of this proposed technique we explain the process using example.

Keywords

References

  1. I. Vessey, “Expertise in Debugging Computer Programs,” International Journal of Man-Machine Studies: A process analysis, Vol.23(5), 1985, pp.459-494. https://doi.org/10.1016/S0020-7373(85)80054-7
  2. James A. Jones, James F. Bowring and Mary Jean Harrold, “Debugging in Parallel,” Proc. ACM. International Symposium on Software Testing and Analysis (ISSTA 07), July, 2007.
  3. M. Srivastav, Y. Singh, C. Gupta, D.S. Chauhan, “Complexity Estimation Approach for Debugging in Parallel”, Proceedings of IEEE - 2010 Second International Conference on Computer Research and Development, Kuala Lumpur, Malaysia, May, 2010.
  4. R. Abreu, P. Zoeteweij, and A. J. C. van Gemund, “On the Accuracy of Spectrum-Based Fault Localization,” Proc. Testing: Academic & Industrial Conference Practice And Research Techniques (TAIC PART-MUTATION 07), IEEE Computer Society, September, 2007, pp.89-98. https://doi.org/10.1109/TAIC.PART.2007.13
  5. J. A. Jones and M. J. Harrold, “Empirical Evaluation of the Tarantula Automatic Fault-Localization Technique,” Proc. IEEE/ACM International Conference on Automated Software Engineering (ASE 05), November, 2005.
  6. J. A. Jones, M. J. Harrold, and J. Stasko, “Visualization of Test Information to Assist Fault Localization,” Proc. ACM International Conference on Software Engineering (ASE 02), May, 2002.
  7. B. Liblit, M. Naik, A. X. Zheng, A. Aiken, and M. I. Jordan, “Scalable Statistical Bug Isolation,” Proc. ACM SIGPLAN. Programming Language Design and Implementation (PLDI 05), June, 2005.
  8. H. Agrawal, J. Horgan, S., Lodon, and W. Wong, “Fault Localization using Execution Slices and Dataflow Tests,” Proc. IEEE International Symposium on Software Reliability Engineering (ISSRE 95), October, 1995.
  9. M. Renieris, and S. Reiss, “Fault Localization with Nearest Neighbor Queries,” Proc. IEEE International Conference on Software Engineering (ASE 03), October, 2003.
  10. J.A. Jones, M.J. Harrold, and J. Stasko, “Fault Localization using Visualization of Test Information,” Proc. International Conference on Software Engineering (ICSE 04), IEEE Computer Society. May, 2004.
  11. J.A. Jones, and M.J. Harrold, “Empircal Evaluation of the Tarantula Automatic Fault-Localization Technique,” Proc. ACM International Conference on Software Engineering (ASE 05), November, 2005.
  12. B. Liblit, A. Aiken, A.X. Zheng, and M. I. Jordan, “Bug Isolation via Remote Program Sampling,” Proc. ACM SIGPLAN. Conference on Programming Language Design and Implementation (PLDI 03), June, 2003, pp.141-154.
  13. C. Liu, L. Fei, X.F. Yan, J.W. Han, and S. Midkiff, “Statistical Debugging: a Hypothesis Testing-Based Approach,” IEEE Transactions on Software Engineering, Vol.32(10), 2006, pp.1-17. https://doi.org/10.1109/TSE.2006.10
  14. H. Cleve, and A. Zeller, “Locating Causes of Program Failures,” Proc. International Conference on Software Engineering (ICSE 05), IEEE Computer Society. May, 2005.
  15. A. Zeller, “Isolating Cause-Effect Chains from Computer Programs,” Proc. ACM SIGSOFT. Fast Software Encryption (FSE 02), November, 2002, pp.1-10.
  16. X.Y. Zhang, S. Tallam, N. Gupta and R. Gupta, “Towards Locating Execution Omission Errors,” Proc. ACM SIGPLAN. Programming Language Design and Implementation (PLDI 07), June, 2007, pp.415-424.
  17. R. Santelices, J.A. Jones, Y. Yu, and M.J. Harrold, “Lightweight Fault-Localization Using Multiple Coverage Types” Proc. International Conference on Software Engineering (ICSE 09), IEEE Computer Society. May, 2009.
  18. R. Abreu, P. Zoeteweij, and A. J. C. van Gemund. “On the accuracy of spectrum-based fault localization” Proc. Of TAIC-PART ’07, September, 2007, pp.89-98.

Cited by

  1. Fault Localization by Comparing Memory Updates between Unit and Integration Testing of Automotive Software in an Hardware-in-the-Loop Environment vol.8, pp.11, 2018, https://doi.org/10.3390/app8112260