A Novel Automatic Source Code Defects Detection Framework and Evaluation on Popular Java Open Source APIs

Main Article Content

Venkata Ramana Kaneti

Abstract

Abstract— The unmatched growth in the automation and application of software code segments for automation is the main reactive reason for improvements in industrial, education, and healthcare and security sectors. The deployed code segments or the complete application used for the purpose is developed extensively with ample amount of features. The number of lines of code and number of man-hours deployed to build the applications are gigantic. In addition to that, the testing of the applications is the added cost for the development cycle. However, in spite of the best practice efforts, the applications can fail in real-time due to undetected errors resulting in fault and failure. Hence, the demand of the modern code development industry to the current research trend is to automate the testing process and derive a framework for enhanced defects detection. This work proposes a novel code defect detection technique to deep scan the code and report all possible bugs and defects and errors. To justify the thoughts, the framework tests the most popular java open source APIs and demonstrates the results. Another novel outcome of this work is to build a generic defect metric for all classes of source code.

Downloads

Download data is not yet available.

Article Details

Section
Articles
Author Biography

Venkata Ramana Kaneti, VNR Vignana Jyothi Institute of Engineering and Technology, Jawaharlal Nehru Technological University

Computer Science and Engineering, Assistant Professor

References

Tim A. Wagner, Vance Maverick, Susan L. Graham, and Michael A. Har- rison. Accurate static estimators for program optimization. In PLDI ’94: Proceedings of the ACM SIGPLAN 1994 conference on Programming lan- guage design and implementation, pages 85–96, New York, NY, USA, 1994. ACM.

Cathrin Weiss, Rahul Premraj, Thomas Zimmermann, and Andreas Zeller. How long will it take to fix this bug? In MSR ’07: Proceedings of the Fourth International Workshop on Mining Software Repositories, page 1, Washington, DC, USA, 2007. IEEE Computer Society.

MishaZitser, Richard Lippmann, and Tim Leek. Testing static analysis tools using exploitable buffer overflows from open source code. In SIGSOFT ’04/FSE-12: Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering, pages 97–106, New York, NY, USA, 2004. ACM.

Dawson R. Engler, David Yu Chen, and Andy Chou. Bugs as inconsistent behavior: A general approach to inferring errors in systems code. In SOSP, pages 57–72, 2001

Nick Rutar, Christian B. Almazan, and Jeffrey S. Foster. A comparison of bug finding tools for java. In ISSRE ’04: Proceedings of the 15th Inter- national Symposium on Software Reliability Engineering, pages 245–256, Washington, DC, USA, 2004. IEEE Computer Society.

Stefan Wagner, Jan Jürjens, Claudia Koller, Peter Trischberger, and Tech- nischeUniversitätMünchen. Comparing bug finding tools with reviews and tests. In In Proc. 17th International Conference on Testing of Communicat- ing Systems (TestCom’05), volume 3502 of LNCS, pages 40–55. Springer, 2005.

Youfeng Wu and James R. Larus. Static branch frequency and program profile analysis. In MICRO 27: Proceedings of the 27th annual international symposium on Microarchitecture, pages 1–11, New York, NY, USA, 1994. ACM.

Tim A. Wagner, Vance Maverick, Susan L. Graham, and Michael A. Har- rison. Accurate static estimators for program optimization. In PLDI ’94: Proceedings of the ACM SIGPLAN 1994 conference on Programming lan- guage design and implementation, pages 85–96, New York, NY, USA, 1994. ACM.

Sarah Heckman and Laurie Williams. On establishing a benchmark for eval- uating static analysis alert prioritization and classification techniques. In ESEM ’08: Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement, pages 41–50, New York, NY, USA, 2008. ACM.

Ted Kremenek, Ken Ashcraft, Junfeng Yang, and Dawson Engler. Correla- tion exploitation in error ranking. In SIGSOFT ’04/FSE-12: Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering, pages 83–93, New York, NY, USA, 2004. ACM.

Ted Kremenek and Dawson Engler. Z-ranking: using statistical analysis to counter the impact of static analysis approximations. In SAS’03: Proceed- ings of the 10th international conference on Static analysis, pages 295–315, Berlin, Heidelberg, 2003. Springer-Verlag.

Ted Kremenek and Dawson Engler. Z-ranking: using statistical analysis to counter the impact of static analysis approximations. In SAS’03: Proceed- ings of the 10th international conference on Static analysis, pages 295–315, Berlin, Heidelberg, 2003. Springer-Verlag.

Sunghun Kim, Kai Pan, and E. E. James Whitehead, Jr. Memories of bug fixes. In SIGSOFT ’06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering, pages 35– 45, New York, NY, USA, 2006. ACM.