Automatic Detection and Update Suggestion for Outdated API Names in Documentation
Application programming interfaces (APIs) continually evolve to meet ever-changing user needs, and documentation provides an authoritative reference for their usage. However, API documentation is commonly outdated because nearly all of the associated updates are performed manually. Such outdated documentation, especially with regard to API names, causes major software development issues. In this paper, we propose a method for automatically updating outdated API names in API documentation. Our insight is that API updates in documentation can be derived from API implementation changes between code revisions. To evaluate the proposed method, we applied it to four open source projects. Our evaluation results show that our method, FreshDoc, detects outdated API names in API documentation with 48% higher accuracy than the existing state-of-the-art methods do. Moreover, when we checked the updates suggested by FreshDoc against the developers? manual updates in the revised documentation, FreshDoc addressed 82% of the outdated names. When we reported 40 outdated API names found by FreshDoc via issue tracking systems, developers accepted 75% of the suggestions. These evaluation results indicate that FreshDoc can be used as a practical method for the detection and updating of API names in the associated documentation.
Wed 13 Nov
16:00 - 17:40: Papers - API and Renaming at Cortez 2&3 Chair(s): Massimiliano Di PentaUniversity of Sannio | ||||||||||||||||||||||||||||||||||||||||||
16:00 - 16:20 Talk | CodeKernel: A Graph Kernel based Approach to the Selection of API Usage Examples Xiaodong GuThe Hong Kong University of Science and Technology, Hongyu ZhangThe University of Newcastle, Sunghun KimHong Kong University of Science and Technology Pre-print | |||||||||||||||||||||||||||||||||||||||||
16:20 - 16:40 Talk | Machine Learning Based Automated Method Name Recommendation: How Far Are We Lin Jiangbeijing university of posts and telecommunication, Hui LiuBeijing Institute of Technology, He JiangSchool of Software, Dalian University of Technology Link to publication Pre-print | |||||||||||||||||||||||||||||||||||||||||
16:40 - 17:00 Talk | MARBLE: Mining for Boilerplate Code to Identify API Usability Problems Daye NamCarnegie Mellon University, Amber HorvathCarnegie Mellon University, Andrew MacveanGoogle, Inc., Brad MyersCarnegie Mellon University, Bogdan VasilescuCarnegie Mellon University Pre-print | |||||||||||||||||||||||||||||||||||||||||
17:00 - 17:20 Talk | DIRE: A Neural Approach to Decompiled Identifier Renaming Jeremy LacomisCarnegie Mellon University, Pengcheng YinCarnegie Mellon University, Edward J. SchwartzCarnegie Mellon University Software Engineering Institute, Miltiadis AllamanisMicrosoft Research, Cambridge, Claire Le GouesCarnegie Mellon University, Graham NeubigCarnegie Mellon University, Bogdan VasilescuCarnegie Mellon University Pre-print Media Attached | |||||||||||||||||||||||||||||||||||||||||
17:20 - 17:40 Talk | Automatic Detection and Update Suggestion for Outdated API Names in Documentation Seonah LeeGyeongsang National University, Rongxin WuDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology, Shing-Chi CheungDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology, Sungwon KangKorea Advanced Institute of Science and Technology Link to publication |