How does Software Change?

by Rastogi, Ayushi and Gousios, Georgios

You can get a pre-print version from here.

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.

Bibtex record

@misc{RG21pp,
  title = {How does Software Change?},
  author = {Rastogi, Ayushi and Gousios, Georgios},
  year = {2021},
  eprint = {2106.01885},
  archiveprefix = {arXiv},
  primaryclass = {cs.SE},
  url = {https://arxiv.org/pdf/2106.01885.pdf}
}

The paper