An Exploratory Study of Documentation Strategies for Product Features in Popular GitHub Projects (Replication Package)
收藏资源简介:
This is the replication package for the paper titled 'An Exploratory Study of Documentation Strategies for Product Features in Popular GitHub Projects' accepted for the NIER track at ICSME 2022. Full abstract:<br> [Background] In large open-source software projects, development knowledge is often fragmented across multiple artefacts and contributors such that individual stakeholders are generally unaware of the full breadth of the product features. However, users want to know what the software is capable of, while contributors need to know where to fix, update, and add features. [Objective] This work aims at understanding how feature knowledge is documented in GitHub projects and how it is linked (if at all) to the source code. [Method] We conducted an in-depth qualitative exploratory content analysis of 25 popular GitHub repositories that provided the documentation artefacts recommended by GitHub’s Community Standards indicator. We extracted strategies used to document software features in textual artefacts and which strategies were used to link the feature documentation with source code. [Results] We observed feature documentation in all studied projects in artefacts such as READMEs, wikis, and website resource files. However, the features were often described in an unstructured way. Additionally, tracing techniques to connect feature documentation and source code were rarely used. [Conclusions] Our results suggest a lacking (or a low-prioritised) feature documentation in open-source projects, little use of normalised structures, and a rare explicit referencing to source code. As a result, product feature traceability is likely to be very limited, and maintainability to suffer over time. Citation information:<br> coming soon
本数据集为收录于2022年国际软件维护与进化会议(International Conference on Software Maintenance and Evolution, ICSME 2022)新思路与新兴成果(New Ideas and Emerging Results, NIER)赛道的论文《热门GitHub项目中产品功能文档化策略的探索性研究》的复现包。完整摘要: [研究背景] 在大型开源软件项目中,开发知识往往分散于多种工件与多位贡献者之间,导致各类项目涉众普遍难以全面掌握产品的全部功能。然而,用户期望知晓软件所能实现的功能,而贡献者则需要明确修复、更新与新增功能的具体位置。 [研究目标] 本研究旨在探究GitHub项目中功能知识的文档化方式,以及功能文档与源代码之间的关联情况(若存在关联)。 [研究方法] 我们针对25个符合GitHub社区标准指标推荐要求、且提供了文档化工件的热门GitHub仓库开展了深入的定性探索性内容分析,提取了在各类文本工件中记录软件功能所采用的策略,以及用于连接功能文档与源代码的相关策略。 [研究结果] 我们在所有被研究项目的README文件、维基页面及网站资源文件等工件中均发现了功能相关文档,但这些功能描述往往以非结构化的方式呈现。此外,用于连接功能文档与源代码的溯源技术极少被使用。 [研究结论] 我们的研究结果表明,开源项目中存在产品功能文档缺失(或优先级极低)的问题,规范化结构的使用程度较低,且极少显式引用源代码。由此可见,产品功能可追溯性往往极为有限,项目的可维护性也会随时间推移受到负面影响。 引用信息:即将公布



