Automated Extraction and Analysis of Developer's Rationale in Open Source Software
Mouna Dhaouadi, Bentley Oakes, Michalis Famelis
Abstract
Contributors to open source software must deeply understand a project's history to make coherent decisions which do not conflict with past reasoning. However, inspecting all related changes to a proposed contribution requires intensive manual effort, and previous research has not yet produced an automated mechanism to expose and analyze these conflicts. In this article, we propose such an automated approach for rationale analyses, based on an instantiation of Kantara, an existing high-level rationale extraction and management architecture. Our implementation leverages pre-trained models and Large Language Models, and includes structure-based mechanisms to detect reasoning conflicts and problems which could cause design erosion in a project over time. We show the feasibility of our extraction and analysis approach using the OOM-Killer module of the Linux Kernel project, and investigate the approach's generalization to five other highly active open source projects. The results confirm that our automated approach can support rationale analyses with reasonable performance, by finding interesting relationships and to detect potential conflicts and reasoning problems. We also show the effectiveness of the automated extraction of decision and rationale sentences and the prospects for generalizing this to other open source projects. This automated approach could therefore be used by open source software developers to proactively address hidden issues and to ensure that new changes do not conflict with past decisions. CCS Concepts: • Software and its engineering → Documentation; Maintaining software.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 3dfaa67a-9b35-4de1-b4d9-e17886d46adbBuilds on10
- ALBERT: A Lite BERT for Self-supervised Learning of Language RepresentationsZhenzhong Lan, Mingda Chen, Sebastian Goodman, Kevin Gimpel et al.ICLR 2020 · 7,418 citations
- Evaluating Large Language Models in Class-Level Code GenerationXueying Du, Mingwei Liu, Kaixin Wang, Hanlin Wang et al.ICSE 2024 · 118 citations
- An Empirical Study on Fine-Tuning Large Language Models of Code for Automated Program RepairKai Huang, Xiangxin Meng, Jian Zhang, Yang Liu et al.ASE 2023 · 91 citations
- What Makes a Good Commit Message?Yingchen Tian, Yuxia Zhang, Klaas-Jan Stol, Lin Jiang et al.ICSE 2022 · 90 citations
- Commit Message Matters: Investigating Impact and Evolution of Commit Message QualityJiawei Li, Iftekhar AhmedICSE 2023 · 26 citations
Related papers
- Extracting Rationale for Open Source Software Development Decisions - A Study of Python Email ArchivesPankajeshwara Nand Sharma, Bastin Tony Roy Savarimuthu, Nigel StangerICSE 2021 · 4 citations
- DRMiner: Extracting Latent Design Rationale from Jira Issue LogsJiuang Zhao, Zitian Yang, Li Zhang, Xiaoli Lian et al.ASE 2024 · 4 citations
- SPINFER: Inferring Semantic Patches for the Linux KernelLucas Serrano, Van-Anh Nguyen, Ferdian Thung, Lingxiao Jiang et al.USENIX ATC 2020 · 16 citations
- Open RAN Conflict Agents: Detecting and Mitigating xApp Conflicts with Generative AgentsDae Cheol Kwon, Xinyu ZhangINFOCOM 2026 · 1 citation
- ArguLens: Anatomy of Community Opinions On Usability Issues Using Argumentation ModelsWenting Wang, Deeksha M. Arya, Nicole Novielli, Jinghui Cheng et al.CHI 2020 · 29 citations
