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
Slide 2
Slide 2 text
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
Slide 3
Slide 3 text
3
There is a growing concern on OSS sustainability
Slide 4
Slide 4 text
4
Slide 5
Slide 5 text
5
Millions of OSS repositories
Slide 6
Slide 6 text
6
Open Source Libraries
Slide 7
Slide 7 text
7
Who are maintaining the OSS projects we use?
Slide 8
Slide 8 text
8
How reliable are these communities?
Slide 9
Slide 9 text
9
Slide 10
Slide 10 text
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
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."
Slide 14
Slide 14 text
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."
Slide 15
Slide 15 text
On the
abandonment
and survival of
open source
projects
Slide 16
Slide 16 text
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
Slide 17
Slide 17 text
17
Dataset
▪ Top-500 in 6 languages
▪ Filtering step
1,932
Slide 18
Slide 18 text
18
Identifying TFDDs
TFDD = all TF developers abandoned the system
(more details in the paper)
Slide 19
Slide 19 text
19
Identifying TFDDs
Jan/2015 Jan/2016 Today
TF = 1
{Alice}
...
Bob
last commit
...
TF = 2
{Alice, Bob}
Alice
last commit
TFDD
Slide 20
Slide 20 text
20
RQ1. How common are TFDDs?
315 projects
▪ TFDDs:
▪ 66% => TF = 1
▪ 59% => < 2 yrs of development
Slide 21
Slide 21 text
21
Identifying Surviving Projects
Surviving project
=
new TF developer(s) assumed the project after TFDDs
31
Takeaways
▪ 16% of the projects face TF events
▪ 41% of the projects survive these events
▪ Key characteristic of surviving projects: friendly community