How does Software Change?
Ayushi Rastogi, Georgios Gousios

TL;DR
This paper develops a theory of software change based on empirical evidence from GitHub, explaining how project governance, people, and ecosystem influence software evolution decisions.
Contribution
It introduces a novel theory of software change grounded in empirical data, linking project concepts and ecosystem factors to change decisions.
Findings
Software change is influenced by project governance and ecosystem factors.
Empirical evidence from GitHub supports the proposed theory.
The theory explains decision-making processes in software evolution.
Abstract
Software evolves with changes to its codebase over time. Internally, software changes in response to decisions to include some code change into the codebase and discard others. Explaining the mechanism of software evolution, this paper presents a theory of software change. Our theory is grounded in multiple evidence sources (e.g., GitHub documentation and relevant scientific literature) relating to the pull-based development model in GitHub. The resulting theory explains the influence of project-related core concepts (e.g., people and governance) as well as its ecosystem on the decision of software change.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOpen Source Software Innovations · Software Engineering Techniques and Practices · Information Systems Theories and Implementation
