Title :
Runtime Invocation Analysis of API Objects in Large Code Base
Author :
Khan, Muhammad Asad ; Muhammad, Shahabuddin ; Muhammad, Tufail
Author_Institution :
Coll. of Comput. Eng. & Sci., Prince Mohammad Bin Fahd Univ., Khobar, Saudi Arabia
Abstract :
Software systems use several third party libraries via their available interfaces popularly known as the application programming interface (API). The runtime usage of the API in an object-oriented software system can be defined by several characteristics including the type and number of API objects created, the methods invoked on those objects, and the source code locations from where the objects were created or invoked during their lifetime. These characteristics can be used to identify the source code locations exhibiting different types of runtime behavior which can be used for program comprehension, debugging, performance monitoring and fault detection. In this paper, we define object invocation model based on above-mentioned characteristics. We also propose an implementation framework that can be used to extract key model parameters from any source code. The Java Collections API is one of the most widely used Java APIs. We demonstrate effectiveness of our proposed approach by analyzing object invocation model for Java Collection API in a large open source project.
Keywords :
Java; application program interfaces; object-oriented programming; program debugging; public domain software; software libraries; source code (software); API objects; Java collection API; application programming interface; fault detection; large code base; object invocation model; object-oriented software system; performance monitoring; program comprehension; program debugging; runtime invocation analysis; source code; source code locations; third party libraries; Analytical models; Data mining; Instruments; Java; Object recognition; Runtime; Software systems; Java Collection API analysis; api invocation analysis; api usage analysis; bytecode instrumentation; object invocation model; program comprehension; runtime program analysis;
Conference_Titel :
Computer Sciences and Applications (CSA), 2013 International Conference on
Conference_Location :
Wuhan
DOI :
10.1109/CSA.2013.114