期刊文献+

空指针异常的自动故障定位方法 被引量:5

Fault localization approach for null pointer exception
下载PDF
导出
摘要 提出一种空指针异常自动定位方法。该方法首先结合程序的静态分析技术,利用程序运行时的堆栈信息指导程序切片,然后对得到的切片进行空指针分析及别名分析,得出引发空指针异常的可疑语句集合,最终给出错误定位报告。实验结果表明,所提方法虽然因收集堆栈信息和别名分析增加了时间开销,但是利用堆栈信息可以缩小问题搜索空间,别名分析可以发现隐含的值传递过程,从而克服单独使用静态方法分析结果引起误报和漏报的缺陷,使最终的错误定位结果更精确。 A novel approach to locate the fault for null pointer exception is presented. The approach first computes the static slice guided by the runtime stack, then conducts a null-pointer analysis and aliases analysis on the sliced program and obtains the suspicious statements that throw null-pointer exceptions, and finally generates a fault localization report. The experimental study indicates that, although time spent in runtime stack information collecting and aliases transferring, the proposed approach can narrow the searching space of the problem with runtime stack, and discover the value transfer process with aliases analysis, thereby eliminating false negative and false positive, and improving the effectiveness of fault localization.
出处 《通信学报》 EI CSCD 北大核心 2015年第1期18-29,共12页 Journal on Communications
基金 国家自然科学基金资助项目(60970032 61202006) 江苏省"333"基金资助项目 中央高校基本科研业务费专项基金资助项目(2013QNB17) 江苏省高校自然科学研究基金资助项目(12KJB520014) 江苏省研究生培养创新工程基金资助项目(CXZZ12-0935) 南京大学计算机软件新技术国家重点实验(KFKT2014B19)~~
关键词 自动故障定位 空指针异常 实时堆栈 程序切片 别名分析 automatic fault localization null pointer exception runtime stack program slicing alias analysis
  • 相关文献

参考文献27

  • 1SINHA S, HARROLD M J. Analysis and testing of programs with exception-handling constructs[J]. IEEE Transactions on Software En- gineering, 2000, 26(9):849-871.
  • 2JIANG S J, XU B W, SHI L. An approach to analysis exception propagation[A]. Proceedings of the 8th IASTED International Con- ference on Software Engineering and Applications[C]. Anaheim, USA, 2004.300-305.
  • 3ROBILLARD M P, MURPHY G C. Static analysis to support the evolution of exception structure in object-oriented systems[J}. ACM Transactions on Sottware Engineering and Methodology, 2003, 12(2):191-221.
  • 4HOVEMEYER D, SPACCO J, PUGH W. Evaluating and tuning a static analysis to find null pointer bugs[A]. Proceedings of the ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering[C]. Lisbon, Portugal, 2005.13-19.
  • 5EVANS D. Static detection of dynamic memory errors[A]. Proceed- ings of the ACM SIGPLAN Conference on Programming Languages, Design, and Implementation[C]. Pennsylvania, USA, 1996.44-53.
  • 6FLANAGAN C, LEINO K R M, LILLIBKIDGE M, et al. Extended static checking for Java[A]. Proceedings of the ACM S1GPLAN Con- ference on Programming Language Design and Implementation[C]. Berlin, Germany, 2002.234-245.
  • 7BUSH W R, PINCUS J D, SIELAFF D J. A static analyzer for fmdingdynamic programming errors[J]. Software: Practice and Experience, 2000, 30(7):775-802.
  • 8ROUNTEV A, KAGAN S, GIBAS M. Evaluating the imprecision of static analysis[A]. Proceedings of the 5th ACM SIGPLAN- SIGSOFT Workshop on Program Analysis for Software Tools and Engineer- ing[C]. Washington, DC, USA, 2004.14-16.
  • 9HANGAL S, LAM M S. Tracking down software bugs using automatic anomaly detection[A]. Proceedings of the International Conference on Software Engineering[C]. Orlando, Florida, USA, 2002. 291-301.
  • 10TOMB A, BRAT G P, VISSER W. Variably interprocedural program analysis for runtime error det6ction[A]. Proceedings of the Interna- tional Symposium on SoRware Testing and Analysis[C]. London, England, United Kingdom, 2007.97-107.

二级参考文献21

  • 1Zhen-QiangChen,Bao-WenXu,Yu-MingZhou.Measuring Class Cohesion Based on Dependence Analysis[J].Journal of Computer Science & Technology,2004,19(6):859-866. 被引量:1
  • 2Cohen D. M. , Dalal S. R. , Kajla A. , Patton G. C.. The automatic efficient tests generator. In: Proceedings of the 5th International Symposium on Software Reliability Engineering,IEEE, Los Alamitos, California, 1994, 303-309.
  • 3Lei Y. , Tai K.C.. In_Parameter_Oder: A test generation strategy for pairwise testing. Department of Computer Science,North Carolina State University, Raleigh, North Carolina:Technical Report TR-2001-03, 2001.
  • 4Tai K. C. , Lei Y.. A test generation strategy for pairwise testing. IEEE Transactions on Software Engineering, 2002, 28(1):109-111.
  • 5Kobayashi N. , Tsuchiya T. , Kikuno T.. A new method for constructing pair-wise covering designs for software testing.Information Processing Letters, 2002, 81(2): 85-91.
  • 6Heller E.. Using design of experiment structures to generate test cases. In: Proceedings of the 12th International Conferenceon Testing Computer Software, New York, 1995, 33-41.
  • 7Mandl R,. Orthogonal Latin squares: An application of experimental design to compiler testing. Communications of the ACM, 1985, 28(10): 1054-1058.
  • 8Brownlie R., Prowse J., Phadke M.. Robust testing of AT&T PMX/StarMail using OATS. AT&T Technical Journal, 1992, (71)3:41-47.
  • 9Phadke M. S.. Quality Engineering Using Robust Design. Englewood Cliffs, NJ: Prentice Hall, 1989.
  • 10Taguchi G.. System of Experimental Design, Quality Resources, 1976. Translation of Jikken Keikakuho, Maurzen Co. , Tokyo, 1987.

共引文献57

同被引文献40

  • 1Zhang Peng, Mao Xiaoguang, Lei Yan, et al. Fauh locali- zation based on dynamic slicing via JSlice for Java programs [ C ]// Proceedings of the 5th IEEE International Confer- ence on Software Engineering and Service Science ~ IC- SESS). 2014:565-568.
  • 2Zhao Binglin, Wang Yinhao, Shan Zheng, et al. Software behavior model based on functional slicing[ C ]//Proceed- ings of the 2015 International Conference on Intelligent Sys- tems Research and Mechatronics Engineering. Atlantis Press, 2015.
  • 3Weiser M. Program slicing[ C]// Proceedings of the 5th International Conference on Software Engineering. 1981: 439-449.
  • 4Korel B, Laski J. Dynamic program slicing[ J ]. Informa- tion Processing Letters, 1988,29(3) : 155-163.
  • 5Krishnaswamy A. Program Slicing: An Application of Ob- ject-oriented Program Dependency Graphs [ R ]. Technical Report TR94-108, Clemson University, 1994.
  • 6Cheng Jingde. Slicing concurrent programs: A graph-theo- retical approach [ C ]//Proceedings of the 1 st International Workshop on Automated and Algorithmic Debugging. 1993:223-240.
  • 7Jackson D, Rollins E J. Abstraction mechanisms for picto- rial slicing[ C ]// Proceedings of the 3rd IEEE Workshop on Program Comprehension. 1994:82-88.
  • 8Jayaraman G, Ranganath V P, Hatcliff J. Kaveri: Delive- ring the Indus Java program slicer to eclipse [ M ]//Funda- mental Approaches to Software Engineering. Springer Ber- lin Heidelberg, 2005:269-272.
  • 9WalaWiki. T J Watson Libraries for Analysis [ EB/OL ]. ht- tp://wala, sourceforge, net/wiki/index, php/Main- Page, 2015-06-14.
  • 10Gevargizian J M. Exeeutables from Program Slices for Java Programs[ D]. University of Kansas, 2010.

引证文献5

二级引证文献8

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部