• DocumentCode
    690384
  • 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
  • fYear
    2013
  • fDate
    14-15 Dec. 2013
  • Firstpage
    463
  • Lastpage
    468
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Sciences and Applications (CSA), 2013 International Conference on
  • Conference_Location
    Wuhan
  • Type

    conf

  • DOI
    10.1109/CSA.2013.114
  • Filename
    6835641