Upgrade to Pro — share decks privately, control downloads, hide ads and more …

On the abandonment and survival of open source projects: An empirical investigation

On the abandonment and survival of open source projects: An empirical investigation

Background: Evolution of open source projects frequently depends on a small number of core developers. The loss of such core developers might be detrimental for projects and even threaten their entire continuation. However, it is possible that new core developers assume the project maintenance and allow the project to survive. Aims: The objective of this paper is to provide empirical evidence on: 1) the frequency of project abandonment and survival, 2) the differences between abandoned and surviving projects, and 3) the motivation and difficulties faced when assuming an abandoned project. Method: We adopt a mixed-methods approach to investigate project abandonment and survival. We carefully select 1,932 popular GitHub projects and recover the abandoned and surviving projects, and conduct a survey with developers that have been instrumental in the survival of the projects. Results: We found that 315 projects (16%) were abandoned and 128 of these projects (41%) survived because of new core developers who assumed the project development. The survey indicates that (i) in most cases the new maintainers were aware of the project abandonment risks when they started to contribute; (ii) their own usage of the systems is the main motivation to contribute to such projects; (iii) human and social factors played a key role when making these contributions; and (iv) lack of time and the difficulty to obtain push access to the repositories are the main barriers faced by them. Conclusions: Project abandonment is a reality even in large open source projects and our work enables a better understanding of such risks, as well as highlights ways in avoiding them.

ASERG, DCC, UFMG

September 20, 2019
Tweet

More Decks by ASERG, DCC, UFMG

Other Decks in Research

Transcript

  1. On the abandonment and survival of open source projects: An

    empirical investigation ESEM 2019 Guilherme Avelino [email protected] UFPI/UFMG, Brazil Eleni Constantinou [email protected] UMONS, Belgium Marco Tulio Valente [email protected] UFMG, Brazil Alexander Serebrenik [email protected] TU/e, The Netherlands
  2. 2 Nearly all software today relies on open source code

    This type of code makes up the digital infrastructure of our society today Roads and Bridges, Nadia Eghbal
  3. 4

  4. 9

  5. Truck Factor The number of people on your team that

    have to be hit by a truck (or abandon) before the project is in serious trouble 10
  6. Discussions 13 "It would be useful to look at this

    when deciding on using a dependency in a project." "This is great avenue for research."
  7. 14 "It shouldn't be in trouble just because the current

    developers get hit by trucks. It's an open source project, anyone can start contributing if they want to."
  8. 16 Research Questions RQ1: How common are TFDDs? RQ2: How

    often the projects survive TFDDs? RQ3: How surviving projects differ from non-surviving ones? TFDD = Truck Factor Developers Detachment
  9. 19 Identifying TFDDs Jan/2015 Jan/2016 Today TF = 1 {Alice}

    ... Bob last commit ... TF = 2 {Alice, Bob} Alice last commit TFDD
  10. 20 RQ1. How common are TFDDs? 315 projects ▪ TFDDs:

    ▪ 66% => TF = 1 ▪ 59% => < 2 yrs of development
  11. 22 Identifying Surviving Projects Jan/2012 Today ... TFDD ... TF

    = 2 {Alice, Bob} Jan/2017 TF = 2 {Bob, Charlotte} System Survived New TF developer
  12. 23 RQ2. Survival Rate 128 surviving projects ▪ Surviving projects

    ▪ 64% => one year after TFDD ▪ 48% => with newcomers
  13. 27 Survey ▪ Target: new TF developers ▪ 140 emails

    sent ▪ 33 answers (response rate of 24%)
  14. 31 Takeaways ▪ 16% of the projects face TF events

    ▪ 41% of the projects survive these events ▪ Key characteristic of surviving projects: friendly community