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.
翻译:使用云基计算机愿景服务的开发者正在通过熟悉的RESTful API获得AI动力组件,不需要协调大型培训和推断基础设施或翻译/标签培训数据集,然而,虽然这些API似乎熟悉使用,但其非决定性的运行时间行为和演变情况没有适当地传达给开发者,因此,改进这些服务的API文件是范围更广的文献,有利于智能软件的开发过程。在先前的一项研究中,我们从21种半成品中提取了34种AI动力文件制品,设计了制作高质量API文件的5种关键要求的分类。我们以两种方式扩展了这项研究。首先,调查了104个具有不同经验的开发者,以了解API文件对从业人员的价值最大。第二,通过对新兴计算机愿景服务领域的案例研究,确定这些高价值艺术品中哪些是或没有很好地记录。我们查明:(一)软件工程文献中存在若干差距,对API文件的各个方面没有进行广泛的调查;以及(二)工业供应商(对比)如何改进其智能软件,以便更好地制定社区文件。