Requirements of API Documentation: A Case Study into Computer Vision Services

by   Alex Cummaudo, et al.

Using cloud-based computer vision services is gaining traction, where developers access AI-powered components through familiar RESTful APIs, not needing to orchestrate large training and inference infrastructures or curate/label training datasets. However, while these APIs seem familiar to use, their non-deterministic run-time behaviour and evolution is not adequately communicated to developers. Therefore, improving these services' API documentation is paramount-more extensive documentation facilitates the development process of intelligent software. In a prior study, we extracted 34 API documentation artefacts from 21 seminal works, devising a taxonomy of five key requirements to produce quality API documentation. We extend this study in two ways. Firstly, by surveying 104 developers of varying experience to understand what API documentation artefacts are of most value to practitioners. Secondly, identifying which of these highly-valued artefacts are or are not well-documented through a case study in the emerging computer vision service domain. We identify: (i) several gaps in the software engineering literature, where aspects of API documentation understanding is/is not extensively investigated; and (ii) where industry vendors (in contrast) document artefacts to better serve their end-developers. We provide a set of recommendations to enhance intelligent software documentation for both vendors and the wider research community.



There are no comments yet.


page 12

page 18

page 19


Beware the evolving 'intelligent' web service! An integration architecture tactic to guard AI-first components

Intelligent services provide the power of AI to developers via simple RE...

Addressing the non-functional requirements of computer vision systems: A case study

Computer vision plays a major role in the robotics industry, where visio...

Don't forget your classics: Systematizing 45 years of Ancestry for Security API Usability Recommendations

Producing secure software is challenging. The poor usability of security...

What should I document? A preliminary systematic mapping study into API documentation knowledge

Background: Good API documentation facilities the development process, i...

A Feature Table approach to decomposing monolithic applications into microservices

Microservice architecture refers to the use of numerous small-scale and ...

Interpreting Cloud Computer Vision Pain-Points: A Mining Study of Stack Overflow

Intelligent services are becoming increasingly more pervasive; applicati...

Ranking Computer Vision Service Issues using Emotion

Software developers are increasingly using machine learning APIs to impl...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.