How Do OSS Developers Utilize Architectural Solutions from Q&A Sites: An Empirical Study
- URL: http://arxiv.org/abs/2404.05041v1
- Date: Sun, 7 Apr 2024 18:53:30 GMT
- Title: How Do OSS Developers Utilize Architectural Solutions from Q&A Sites: An Empirical Study
- Authors: Musengamana Jean de Dieu, Peng Liang, Mojtaba Shahin,
- Abstract summary: Developers utilize programming-related knowledge (e.g., code snippets) on Q&A sites (e.g., Stack Overflow)
architectural solutions (e.g., architecture tactics) and their utilization are rarely explored.
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.
For the survey study, we surveyed 227 of them to further understand how practitioners utilize architectural solutions from Q&A sites in their OSS development.
- Score: 5.568316292260523
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: 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.
Related papers
- Architecture Decisions in Quantum Software Systems: An Empirical Study on Stack Exchange and GitHub [4.805163442157039]
The study aims to empirically investigate and analyze architecture decisions made during the development of quantum software systems.
We collected data from 385 issues (from 87 GitHub projects) and 70 posts (from three Stack Exchange sites) related to architecture decisions in quantum software development.
arXiv Detail & Related papers (2023-12-09T00:29:26Z) - What rationales drive architectural decisions? An empirical inquiry [0.7499722271664147]
There is a rationale behind every architectural decision that motivates an architect to choose one architectural solution out of a set of options.
This study aims to identify which categories of rationale most frequently impact architectural decisions and investigates why these are important to practitioners.
arXiv Detail & Related papers (2023-09-25T14:18:51Z) - Architecture Knowledge Representation and Communication Industry Survey [0.0]
We aim to understand the current practice in architecture knowledge, and to explore where sustainability can be applied to address sustainability in software architecture in the future.
We used a survey, which utilized a questionnaire containing 34 questions and collected responses from 45 architects working at a prominent bank in the Netherlands.
arXiv Detail & Related papers (2023-09-20T18:17:16Z) - Machine Learning-Enabled Software and System Architecture Frameworks [48.87872564630711]
The stakeholders with data science and Machine Learning related concerns, such as data scientists and data engineers, are yet to be included in existing architecture frameworks.
We surveyed 61 subject matter experts from over 25 organizations in 10 countries.
arXiv Detail & Related papers (2023-08-09T21:54:34Z) - Learning From Each Other: How Are Architectural Mistakes Communicated in
Industry? [1.5839621757142597]
This study investigates the handling and particularly communication of mistakes by software architects.
We identified software architects' definitions of architectural mistakes, their handling of these mistakes, and their preferred communication strategies regarding these mistakes.
We found that architects communicate mistakes mainly within their project teams and seldom within or across companies.
arXiv Detail & Related papers (2023-07-10T11:37:15Z) - PyRCA: A Library for Metric-based Root Cause Analysis [66.72542200701807]
PyRCA is an open-source machine learning library of Root Cause Analysis (RCA) for Artificial Intelligence for IT Operations (AIOps)
It provides a holistic framework to uncover the complicated metric causal dependencies and automatically locate root causes of incidents.
arXiv Detail & Related papers (2023-06-20T09:55:10Z) - OpenAGI: When LLM Meets Domain Experts [51.86179657467822]
Human Intelligence (HI) excels at combining basic skills to solve complex tasks.
This capability is vital for Artificial Intelligence (AI) and should be embedded in comprehensive AI Agents.
We introduce OpenAGI, an open-source platform designed for solving multi-step, real-world tasks.
arXiv Detail & Related papers (2023-04-10T03:55:35Z) - Mining Architectural Information: A Systematic Mapping Study [7.3755596064775215]
There is a lack of clarity on what literature on mining architectural information is available.
We aim to identify, analyze, and synthesize the literature on mining architectural information.
arXiv Detail & Related papers (2022-12-26T14:57:38Z) - Breaking the Curse of Space Explosion: Towards Efficient NAS with
Curriculum Search [94.46818035655943]
We propose a curriculum search method that starts from a small search space and gradually incorporates the learned knowledge to guide the search in a large space.
With the proposed search strategy, our Curriculum Neural Architecture Search (CNAS) method significantly improves the search efficiency and finds better architectures than existing NAS methods.
arXiv Detail & Related papers (2020-07-07T02:29:06Z) - Understanding Deep Architectures with Reasoning Layer [60.90906477693774]
We show that properties of the algorithm layers, such as convergence, stability, and sensitivity, are intimately related to the approximation and generalization abilities of the end-to-end model.
Our theory can provide useful guidelines for designing deep architectures with reasoning layers.
arXiv Detail & Related papers (2020-06-24T00:26:35Z) - RC-DARTS: Resource Constrained Differentiable Architecture Search [162.7199952019152]
We propose the resource constrained differentiable architecture search (RC-DARTS) method to learn architectures that are significantly smaller and faster.
We show that the RC-DARTS method learns lightweight neural architectures which have smaller model size and lower computational complexity.
arXiv Detail & Related papers (2019-12-30T05:02:38Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.