• DocumentCode
    660601
  • Title

    ExPort: Detecting and visualizing API usages in large source code repositories

  • Author

    Moritz, E. ; Linares-Vasquez, Mario ; Poshyvanyk, Denys ; Grechanik, Mark ; McMillan, Collin ; Gethers, Malcom

  • Author_Institution
    Coll. of William & Mary, Williamsburg, VA, USA
  • fYear
    2013
  • fDate
    11-15 Nov. 2013
  • Firstpage
    646
  • Lastpage
    651
  • Abstract
    This paper presents a technique for automatically mining and visualizing API usage examples. In contrast to previous approaches, our technique is capable of finding examples of API usage that occur across several functions in a program. This distinction is important because of a gap between what current API learning tools provide and what programmers need: current tools extract relatively small examples from single files/functions, even though programmers use APIs to build large software. The small examples are helpful in the initial stages of API learning, but leave out details that are helpful in later stages. Our technique is intended to fill this gap. It works by representing software as a Relational Topic Model, where API calls and the functions that use them are modeled as a document network. Given a starting API, our approach can recommend complex API usage examples mined from a repository of over 14 million Java methods.
  • Keywords
    application program interfaces; data mining; learning (artificial intelligence); program visualisation; source code (software); API learning tools; API usage detection; API usage visualization; ExPort; Java methods; automatic API usage mining; document network; large source code repositories; relational topic model; Concrete; Databases; Java; Portfolios; Prototypes; Software; Visualization; API usage; call graph; code search; visualization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
  • Conference_Location
    Silicon Valley, CA
  • Type

    conf

  • DOI
    10.1109/ASE.2013.6693127
  • Filename
    6693127