How Do OSS Developers Utilize Architectural Solutions from Q A Sites: An Empirical Study
arxiv(2024)
摘要
Developers utilize programming-related knowledge (e.g., code snippets) on Q A
sites (e.g., Stack Overflow) that functionally matches the programming problems
they encounter in their development. Despite extensive research on Q A sites,
being a high-level and important type of development-related knowledge,
architectural solutions (e.g., architecture tactics) and their utilization are
rarely explored. To fill this gap, we conducted a mixed-methods study that
includes a mining study and a survey study. For the mining study, we mined 984
commits and issues (i.e., 821 commits and 163 issues) from 893 Open-Source
Software (OSS) projects on GitHub that explicitly referenced architectural
solutions from Stack Overflow (SO) and Software Engineering Stack Exchange
(SWESE). For the survey study, we identified practitioners involved in the
utilization of these architectural solutions and surveyed 227 of them to
further understand how practitioners utilize architectural solutions from Q A
sites in their OSS development. Our main findings are that: (1) OSS
practitioners use architectural solutions from Q A sites to solve a large
variety (15 categories) of architectural problems, wherein Component design
issue, Architectural anti-pattern, and Security issue are dominant; (2) Seven
categories of architectural solutions from Q A sites have been utilized to
solve those problems, among which Architectural refactoring, Use of frameworks,
and Architectural tactic are the three most utilized architectural solutions;
(3) Using architectural solutions from SO comes with a variety of challenges,
e.g., OSS practitioners complain that they need to spend significant time to
adapt such architectural solutions to address design concerns raised in their
OSS development, and it is challenging to use architectural solutions that are
not tailored to the design context of their OSS projects.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要