Abstract


 
 
 Application Programming Interface (API) is a core technology that facilitates developers’ productivity by enabling the reuse of software components. Understanding APIs and gaining knowledge about their usage are therefore fundamental needs for developers. Here, API documentation plays a pivotal role in enabling developers to take full advantage of the benefits brought by APIs. The quality of API documentation has therefore become an important concern given the celerity and dynamics at which APIs are now being made available to users. This article aims at exploring existing research in the area of API documentation in order to identify the associated quality dimensions addressed by the literature. The research is carried out as a systematic mapping study where 103 research papers selected from the literature were reviewed and a total of 5 core quality dimensions were identified and analyzed. By focusing on the two most relevant quality dimensions (understandability and completeness), this article presents an approach to enable API users to explore, discover and learn about APIs through API topic issues discussed in Stack Overflow (SO). We demonstrate the feasibility of our approach through Scout-bot, our tool for exploration and discovery of API topic issues.
 
 

Highlights

  • Developers rely on several Application Programming Interface (API) for their day-to-day software development tasks [1] in a wide variety of scenarios, including cognitive services [2], Internet-Of-Things (IoT) services [3], data services [4], mashups [5], service-based business processes [6] and more

  • We focused on API topic issues, as opposed to traditional, plain keyword-based search, because it is more appropriate for discovery and learning purposes, in unfamiliar spaces [30]

  • We first focus on addressing RQ1 - What quality dimensions are being addressed in the literature in the context of API documentation? In order to answer this question, we followed the steps of thematic analysis [47] to analyze each of the 103 papers obtained from our search

Read more

Summary

Introduction

Developers rely on several APIs for their day-to-day software development tasks [1] in a wide variety of scenarios, including cognitive services [2], Internet-Of-Things (IoT) services [3], data services [4], mashups [5], service-based business processes [6] and more. In this context, there are several studies in the literature on the analysis [9], extraction [10] and recommendation [8] of API-related knowledge such as usage examples and reference documentation. There are several studies in the literature on the analysis [9], extraction [10] and recommendation [8] of API-related knowledge such as usage examples and reference documentation One such line of studies includes the improvement of API documentation and learning resources. Further topics of interest in the literature include the production [15, 16, 17, 18, 19], problems/issues [20, 21, 22, 23] and enrichment [12, 13, 24, 25, 26] of API learning resources

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call