arrow
返回

Understanding Roxygen package documentation in R

delete2022-06-01
delete3
PRE
AI
M
Melina Vidoni *
DOI:10.1016/j.jss.2022.111265delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
R is a package-based programming ecosystem that provides an easy way to install third-party code, datasets, and examples. Thus, R developers rely heavily on the documentation of the packages they import to use them correctly and accurately. This documentation is often written using Roxygen, equivalent to Java's well-known Javadoc. This two-part study provides the first analysis in this area. First, 379 systematically-selected, open-source R packages were mined and analysed to address the quality of their documentation in terms of presence, distribution, and completeness to identify potential sources of documentation debt of technical debt that describes problems in the documentation. Second, a survey addressed how R package developers perceive documentation and face its challenges (with a response rate of 10.04%). Results show that incomplete documentation is the most common smell, with several cases of incorrect use of the Roxygen utilities. Unlike in traditional API documentation, developers do not focus on how behaviour is implemented but on common use cases and parameter documentation. Respondents considered the examples section the most useful, and commonly perceived challenges were unexplained examples, ambiguity, incompleteness and fragmented information. (C) 2022 Elsevier Inc. All rights reserved.
Keyword:
Software engineering
Roxygen
Api documentation
Technical debt
Mining software repositories
Developers' survey

期刊

Journal of Systems and Software 封面图
Journal of Systems and Software
IF:
4.1
论文数:
5.4K
被引数:
8.4K

机构

A
Australian National University
学者数:
2.1W
论文数: 2.3W
被引数: 3.9W
引用论文

引用论文

How API Documentation Fails
err2015-07-01
err136
PREAI
errUddin, Gias; Robillard, Martin P.
err分享
err收藏
err分享
err收藏
Why and how developers fork what from whom in GitHub开发人员为什么以及如何在GitHub中从谁那里分叉
err2016-05-31
err86
PREAI
errJiang, Jing; Lo, David; He, Jiahuan; Xia, Xin; Kochhar, Pavneet Singh; Zhang, Li
err分享
err收藏
没有更多内容