# Extracting Rationale for Open Source Software Development Decisions -- A Study of Python Email Archives

**Authors:** Pankajeshwara Nand Sharma, Bastin Tony Roy Savarimuthu, Nigel Stanger  
**arXiv:** [2102.05232](https://arxiv.org/abs/2102.05232)  
**Date:** 2021-02-10  
**Summary page:** https://www.summarizepaper.com/en/arxiv-id/2102.05232v1/

## Key points

- Importance of sound decision-making processes in software project governance, specifically in Open Source Software Development (OSSD) communities
- Lack of exploration into the rationale behind decision-making processes in OSSD communities
- Introduction of Rationale Miner, a heuristics-based rationale extraction system for Python development email archives
- Contribution of knowledge and methodology to the field through large-scale study
- Discussion on limitations of prior works that did not capture rationale behind state transitions in OSSD communities
- Three research questions related to identifying different rationales for decisions, designing an automated approach for extracting rationales, and evaluating effectiveness of this approach
- Revelation of various rationales for Python Enhancement Proposal (PEP) decisions and their prevalence in Python email archives
- Comparison with prior work on Apache decision-making processes and highlighting additional rationales uncovered in this study
- Valuable insights into understanding decision-making processes in OSSD communities and framework for extracting rationales applicable to similar communities.

## Summary

This paper focuses on the importance of sound decision-making (DM) processes in the governance of software projects, particularly in Open Source Software Development (OSSD) communities. While there have been efforts to extract DM processes from publicly available data, the rationale behind how decisions are made has not been explored extensively. This study aims to bridge this gap by unearthing and presenting the rationale behind decisions made in Python development email archives. The paper introduces a heuristics-based rationale extraction system called Rationale Miner, which employs multiple heuristics and follows a data-driven, bottom-up approach to infer the rationale behind specific decisions. The results of this large-scale study contribute both knowledge and methodology to the field. The paper also discusses the limitations of prior works that did not capture the rationale behind state transitions in OSSD communities. It poses three research questions related to identifying different rationales for decisions, designing an automated approach for extracting rationales, and evaluating the effectiveness of this approach. The study reveals various rationales for Python Enhancement Proposal (PEP) decisions and their prevalence in Python email archives. It also compares its findings with prior work on Apache decision-making processes and highlights additional rationales uncovered in this study. Overall, this paper provides valuable insights into understanding decision-making processes in OSSD communities and offers a framework for extracting rationales that can be applied to other similar communities with similar governance structures.
