• DocumentCode
    2008454
  • Title

    Improving API documentation using API usage information

  • Author

    Stylos, Jeffrey ; Faulring, Andrew ; Yang, Zizhuang ; Myers, Brad A.

  • fYear
    2009
  • fDate
    20-24 Sept. 2009
  • Firstpage
    119
  • Lastpage
    126
  • Abstract
    Jadeite is a new Javadoc-like API documentation system that takes advantage of multiple users´ aggregate experience to reduce difficulties that programmers have learning new APIs. Previous studies have shown that programmers often guessed that certain classes or methods should exist, and looked for these in the API. Jadeite´s ldquoplaceholdersrdquo let users add new ldquopretendrdquo classes or methods that are displayed in the actual API documentation, and can be annotated with the appropriate APIs to use instead. Since studies showed that programmers had difficulty finding the right classes from long lists in documentation, Jadeite takes advantage of usage statistics to display commonly used classes more prominently. Programmers had difficulty discovering how to instantiate objects, so Jadeite uses a large corpus of sample code to automatically the most common ways to construct an instance of any given class. An evaluation showed that programmers were about three times faster at performing common tasks with Jadeite than with standard Javadoc.
  • Keywords
    Java; application program interfaces; document handling; system documentation; API documentation; API usage information; Jadeite; application program interfaces; standard Javadoc; Aggregates; Displays; Documentation; Functional programming; Java; Performance evaluation; Programming profession; Search engines; Statistics; Usability;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Visual Languages and Human-Centric Computing, 2009. VL/HCC 2009. IEEE Symposium on
  • Conference_Location
    Corvallis, OR
  • ISSN
    1943-6092
  • Print_ISBN
    978-1-4244-4876-0
  • Type

    conf

  • DOI
    10.1109/VLHCC.2009.5295283
  • Filename
    5295283