SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
Ecological Studies of Open Source Software Ecosystems
Empirical case studies with Gnome and R
Ma¨lick Claes, Tom Mens
e
Software Engineering Lab, Computer Science Department
Faculty of Science, University of Mons

18th September 2013
Research context

Ecosystems

Gnome studies

R studies

1 Research context

2 Ecosystems

3 Gnome studies

4 R studies

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

2 / 23
Research context

Ecosystems

Gnome studies

R studies

ECOS (bit.ly/ecos-project)

Interdisciplinary project called “Ecological Studies of Open Source
Software Ecosystems” at the University of Mons (Belgium)
Tom Mens - Software Engineering Lab
Philippe Grosjeans - Numerical Ecology of Aquatic Systems Lab
(ECONUM)

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

3 / 23
Research context

Ecosystems

Gnome studies

R studies

Long-term goals

How far can we drive the analogy between natural and software
ecosystems?
Determine the main factors that drive the success or failure of OSS
projects within their ecosystem
Investigate new techniques and mechanisms to predict and/or
improve survivability of OSS projects
Inspired by research in biological ecology

Use these insights to help
the developer community to improve upon their practices
companies and users to compare and adopt OSS projects

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

4 / 23
Research context

Ecosystems

Gnome studies

R studies

1 Research context

2 Ecosystems

3 Gnome studies

4 R studies

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

5 / 23
Research context

Ecosystems

Gnome studies

R studies

Biological Ecosystem
Ecosystem

Example: coral reef

Physical and biological components of an
environment considered in relation to each
other as a unit

High biodiversity:
polyps, sea
anemones, fish,
mollusks, sponges,
algae

combines all living organisms (plants,
animals, micro-organisms) and
physical components (light, water,
soil, rocks, minerals)

Ecology
Scientific study of the interactions that
determine the distribution and abundance
of organisms
Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

6 / 23
Research context

Ecosystems

Gnome studies

R studies

Software Ecosystem
Business-oriented software ecosystem
“a set of actors functioning as a unit and interacting with a shared market
for software and services, together with the relationships among them.”
(Jansen et al. 2009)

Examples
“App Stores” (Android, iOS)

Ma¨lick Claes (UMONS)
e

Eclipse platform & plugins

Ecological Studies of Open Source Software Ecosystems

2013/09/18

7 / 23
Research context

Ecosystems

Gnome studies

R studies

Software Ecosystem
Development-centric view
“a collection of software products that have some given degree of
symbiotic relationships.” (MesserschmiK & Szyperski 2003)
“a collection of software projects that are developed and evolve
together in the same environment.” (Lungu 2008)

Examples
GNOME &

KDE

Linux distributions (

Debian,

Ubuntu)

’s CRAN and others (CPAN, CTAN, . . . )

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

8 / 23
Research context

Ecosystems

Gnome studies

R studies

Biological and Software Ecosystems in Summary

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

9 / 23
Research context

Ecosystems

Gnome studies

R studies

Biological and Software Ecosystems in Summary

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

9 / 23
Research context

Ecosystems

Gnome studies

R studies

1 Research context

2 Ecosystems

3 Gnome studies

4 R studies

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

10 / 23
Research context

Ecosystems

Gnome studies

R studies

Reticulate evolution
Darwinian evolution cannot
Scleractinian coral polyps
always explain evolution of some
species: causes are not always
related to natural selection
The evolution tree of life:
acyclic graph
Reticulation: hybrid speciation,
horizontal gene transfer

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

11 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Initial motivation
Horizontal gene transfer between projects?
Genotype of a project: contributors
Phenotype of a project: code
Can we make a parallel between code duplication and contributors?

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

12 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Initial motivation
Horizontal gene transfer between projects?
Genotype of a project: contributors
Phenotype of a project: code
Can we make a parallel between code duplication and contributors?

Questions
Do joiners come from other GNOME projects or from outside the
ecosystem?
Do leavers tend to stay within other GNOME projects?
Does migration patterns change over time?
Do some projects attract or loose more contributors than others?
Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

12 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
GNOME git repositories
16 years of history (1997 to 2012)
1,418 projects (stored in git repositories)
1,315,997 commits
11,094 identities, 5,923 distinct persons after identity merging

Metrics for 6-month periods
Local joiners
Global joiners
Local leavers
Global leavers
Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

13 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Local vs. global trend

−20

−10

0

10

Difference between global and local joiners

gimp
evolution
gtk+
1997

1998

1999

2000

2001

2002

2003

2004

2005

2006

2007

2008

2009

2010

2011

2012

Time

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

14 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Local vs. global trend

−20

−15

−10

−5

0

5

10

Difference between global and local leavers

gimp
evolution
gtk+
1997

1998

1999

2000

2001

2002

2003

2004

2005

2006

2007

2008

2009

2010

2011

2012

Time

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

15 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Collaboration factor
CF (p) = Collaboration factor for project p = percentage of coders in p
having contributed to other GNOME projects

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

16 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations
Collaboration factor
CF (p) = Collaboration factor for project p = percentage of coders in p
having contributed to other GNOME projects

10

Difference between global and local joiners

0

GIMP = 65.3%

−20

GTK+ = 94.8%

−10

Evolution = 85.1%
gimp
evolution
gtk+
1997

1998

1999

2000

2001

2002

2003

2004

2005

2006

2007

2008

2009

2010

2011

2012

Time

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

16 / 23
Research context

Ecosystems

Gnome studies

R studies

Migrations

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

17 / 23
Research context

Ecosystems

Gnome studies

R studies

Project clustering
Hierarchical clustering
Distance between two projects represents the similarity of their community
and the intensity of their members

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

18 / 23
Research context

gnome.boxes
Gnome studies

Ecosystems
gupnp.tools
gupnp.av
gupnp.vala

muine
monkey.media
gssdp
gupnp

Project clustering

Hierarchical clustering
postr

contact.lookup.applet
devilspie
librest

accounts.dialog
R studies

gnome.vfs

tasks

libsocialweb
Distance between two projects represents the similarity of their community
sound.juicer
pygobject
pygtk
and the intensity of their members
flow
gnome.admin.tools
system.tools.backends

Python clustering

gazpacho

gnoetry.extra
gnome.chart

pygio

bonobo.python
pybank

gnome.python.extras
pygda

gnome.python.desktop

release.notes
pygoocanvas

gnome.python

mhonarc
gael
libglade
dia.newcanvas
gnorpm

fontilus
nautilus.rpm

pygnome
pyorbit
viewcvs.web
blogs.web
jhmenu

gnome.web.photo

Ma¨lick Claes (UMONS)
e

d.feet
pygtk.web
gir.repository
pygi

gnome.webkit
Ecological Studies of Open Source Software Ecosystems
drwright

gfloppy
2013/09/18

18 / 23
libgnomeservice
Research context

Ecosystems

evolution.xmltv
gjobs

gnome.sharing
Gnome
gnomepedia studies

R studies

atomato
gnome.reset
Project clustering
gnome.backup

Perl clustering

libgda.perl
bonobo.support
gda.evolution

perl.Glib
perl.Gtk2
glib.controller
perl.Gtk2.SourceView
perl.Gtk2.Recent
gtkunique
perl.Clutter

json.glib
pyclutter
unique
perl.Gnome2.GConf
perl.Gnome2.Print
clutter.gtk
gnome.dictionary
perl.Gnome2.Notify
perl.Gtk2.TrayManager
perl.Cairo.GObject
perl.GStreamer.GConf
perl.Gnome2.Canvas
perl.Gtk2.Spell
perl.Gtk2.GladeXML
perl.ExtUtils.Depends
perl.Cairo
perl.Glib.Object.Introspection
perl.Gnome2
perl.GStreamer
perl.Gnome2.VFS
perl.ExtUtils.PkgConfig
perl.Gnome2.Wnck
perl.Gtk3
perl.Gnome2.Rsvg
perl.Gnome2.Vte
gnome.perl.introspection
perl.Gtk2.MozEmbed
perl.GStreamer.Interfaces
perl.Pango
perl.Gnome2.PanelApplet
perl.Glib.IO
perl.Gnome2.Dia
perl.Gtk2.TrayIcon
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems

litespeed
libzvt
gtk.vnc

2013/09/18

19 / 23
Research context

Ecosystems

Gnome studies

R studies

Project clustering
Language clustering
C●

1e+07

● C++

C/C++ Header
●

C#● ●Python
Perl
JS● ●
PHP
●

LOC

Visual
●

Basic
Lisp

●

1e+05

●Java
●

IDL

yacc

●

Ruby
Objective C
●

●

Tcl/Tk Assembly
●
●
●
lex
●ASP.Net
●

Objective C++

●Haskell

100

Ma¨lick Claes (UMONS)
e

1000
Files

Ecological Studies of Open Source Software Ecosystems

10000

2013/09/18

20 / 23
Research context

Ecosystems

Gnome studies

R studies

1 Research context

2 Ecosystems

3 Gnome studies

4 R studies

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

21 / 23
Research context

Ecosystems

Gnome studies

R studies

R Ecosystem

Open Source statistical analysis environment based on the S language
Highly used by (non computer) scientists
Modules, libraries and software installed using a package system
Comprehensive R Archive Network (CRAN):
∼ 4500 maintained packages
∼10 years of history
Very strict policy: unmaintained or buggy packages are archived
⇒ problems arises: dependency breaks, scientific studies reproducibility

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

22 / 23
Research context

Ecosystems

Gnome studies

R studies

Dependency graphs

Ma¨lick Claes (UMONS)
e

Ecological Studies of Open Source Software Ecosystems

2013/09/18

23 / 23

Weitere ähnliche Inhalte

Ähnlich wie 130918 maelick claes - ecological studies of open source software ecosystems

Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009pdalby
 
Applying biological evolution to software ecosystems: A case study with Gnome
Applying biological evolution to software ecosystems: A case study with GnomeApplying biological evolution to software ecosystems: A case study with Gnome
Applying biological evolution to software ecosystems: A case study with GnomeTom Mens
 
Engineering computational ecosystems (2nd year PhD seminar)
Engineering computational ecosystems (2nd year PhD seminar)Engineering computational ecosystems (2nd year PhD seminar)
Engineering computational ecosystems (2nd year PhD seminar)Danilo Pianini
 
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdf
Advancing Spatio-temporal Analysis of Ecological Data  Examples in R.pdfAdvancing Spatio-temporal Analysis of Ecological Data  Examples in R.pdf
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdfSabrina Green
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemTom Mens
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystemeconst
 
MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2Tom Mens
 
Towards a comprehensive approach to spontaneous self-composition in pervasive...
Towards a comprehensive approach to spontaneous self-composition in pervasive...Towards a comprehensive approach to spontaneous self-composition in pervasive...
Towards a comprehensive approach to spontaneous self-composition in pervasive...Danilo Pianini
 
Open Source Software for GIS
Open Source Software for GISOpen Source Software for GIS
Open Source Software for GISRobin Lovelace
 
Migration patterns of open source ecosystem contributors - An empirical case ...
Migration patterns of open source ecosystem contributors - An empirical case ...Migration patterns of open source ecosystem contributors - An empirical case ...
Migration patterns of open source ecosystem contributors - An empirical case ...Tom Mens
 
Citizen science project list (Europe & worldwide) v1
Citizen science project list (Europe & worldwide) v1Citizen science project list (Europe & worldwide) v1
Citizen science project list (Europe & worldwide) v1Egle Marija Ramanauskaite
 
Blue Green Toolkit
Blue Green ToolkitBlue Green Toolkit
Blue Green ToolkitLan Hoang
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for SustainabilityBenoit Combemale
 
MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1Tom Mens
 
Software Sustainability Institute
Software Sustainability InstituteSoftware Sustainability Institute
Software Sustainability InstituteNeil Chue Hong
 
Oliver Sola 7486
Oliver Sola 7486Oliver Sola 7486
Oliver Sola 7486ecocity2008
 

Ähnlich wie 130918 maelick claes - ecological studies of open source software ecosystems (20)

Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009
 
Applying biological evolution to software ecosystems: A case study with Gnome
Applying biological evolution to software ecosystems: A case study with GnomeApplying biological evolution to software ecosystems: A case study with Gnome
Applying biological evolution to software ecosystems: A case study with Gnome
 
Engineering computational ecosystems (2nd year PhD seminar)
Engineering computational ecosystems (2nd year PhD seminar)Engineering computational ecosystems (2nd year PhD seminar)
Engineering computational ecosystems (2nd year PhD seminar)
 
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdf
Advancing Spatio-temporal Analysis of Ecological Data  Examples in R.pdfAdvancing Spatio-temporal Analysis of Ecological Data  Examples in R.pdf
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdf
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
 
Modelling tools
Modelling toolsModelling tools
Modelling tools
 
Slides Sustainable Urban Environments
Slides Sustainable Urban EnvironmentsSlides Sustainable Urban Environments
Slides Sustainable Urban Environments
 
MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2
 
Towards a comprehensive approach to spontaneous self-composition in pervasive...
Towards a comprehensive approach to spontaneous self-composition in pervasive...Towards a comprehensive approach to spontaneous self-composition in pervasive...
Towards a comprehensive approach to spontaneous self-composition in pervasive...
 
Open Source Software for GIS
Open Source Software for GISOpen Source Software for GIS
Open Source Software for GIS
 
Migration patterns of open source ecosystem contributors - An empirical case ...
Migration patterns of open source ecosystem contributors - An empirical case ...Migration patterns of open source ecosystem contributors - An empirical case ...
Migration patterns of open source ecosystem contributors - An empirical case ...
 
Citizen science project list (Europe & worldwide) v1
Citizen science project list (Europe & worldwide) v1Citizen science project list (Europe & worldwide) v1
Citizen science project list (Europe & worldwide) v1
 
Future direction of geoinfomatics
Future direction of geoinfomaticsFuture direction of geoinfomatics
Future direction of geoinfomatics
 
Blue Green Toolkit
Blue Green ToolkitBlue Green Toolkit
Blue Green Toolkit
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for Sustainability
 
Sustainable domestic wastewater treatment in urban areas
Sustainable domestic wastewater treatment in urban areasSustainable domestic wastewater treatment in urban areas
Sustainable domestic wastewater treatment in urban areas
 
MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1
 
Software Sustainability Institute
Software Sustainability InstituteSoftware Sustainability Institute
Software Sustainability Institute
 
Oliver Sola 7486
Oliver Sola 7486Oliver Sola 7486
Oliver Sola 7486
 

Mehr von Ptidej Team

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software MiniaturisationPtidej Team
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel BriandPtidej Team
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel AbdellatifPtidej Team
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh KermansaraviPtidej Team
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel GrichiPtidej Team
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano PolitowskiPtidej Team
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisisPtidej Team
 
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptPtidej Team
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptPtidej Team
 

Mehr von Ptidej Team (20)

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software Miniaturisation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel Briand
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel Abdellatif
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh Kermansaravi
 
Mouna Abidi
Mouna AbidiMouna Abidi
Mouna Abidi
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel Grichi
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano Politowski
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisis
 
MIPA
MIPAMIPA
MIPA
 
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.ppt
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.ppt
 
Medicine15.ppt
Medicine15.pptMedicine15.ppt
Medicine15.ppt
 
Qrs17b.ppt
Qrs17b.pptQrs17b.ppt
Qrs17b.ppt
 
Icpc11c.ppt
Icpc11c.pptIcpc11c.ppt
Icpc11c.ppt
 
Icsme16.ppt
Icsme16.pptIcsme16.ppt
Icsme16.ppt
 
Msr17a.ppt
Msr17a.pptMsr17a.ppt
Msr17a.ppt
 
Icsoc15.ppt
Icsoc15.pptIcsoc15.ppt
Icsoc15.ppt
 

Kürzlich hochgeladen

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 

Kürzlich hochgeladen (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

130918 maelick claes - ecological studies of open source software ecosystems

  • 1. Ecological Studies of Open Source Software Ecosystems Empirical case studies with Gnome and R Ma¨lick Claes, Tom Mens e Software Engineering Lab, Computer Science Department Faculty of Science, University of Mons 18th September 2013
  • 2. Research context Ecosystems Gnome studies R studies 1 Research context 2 Ecosystems 3 Gnome studies 4 R studies Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 2 / 23
  • 3. Research context Ecosystems Gnome studies R studies ECOS (bit.ly/ecos-project) Interdisciplinary project called “Ecological Studies of Open Source Software Ecosystems” at the University of Mons (Belgium) Tom Mens - Software Engineering Lab Philippe Grosjeans - Numerical Ecology of Aquatic Systems Lab (ECONUM) Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 3 / 23
  • 4. Research context Ecosystems Gnome studies R studies Long-term goals How far can we drive the analogy between natural and software ecosystems? Determine the main factors that drive the success or failure of OSS projects within their ecosystem Investigate new techniques and mechanisms to predict and/or improve survivability of OSS projects Inspired by research in biological ecology Use these insights to help the developer community to improve upon their practices companies and users to compare and adopt OSS projects Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 4 / 23
  • 5. Research context Ecosystems Gnome studies R studies 1 Research context 2 Ecosystems 3 Gnome studies 4 R studies Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 5 / 23
  • 6. Research context Ecosystems Gnome studies R studies Biological Ecosystem Ecosystem Example: coral reef Physical and biological components of an environment considered in relation to each other as a unit High biodiversity: polyps, sea anemones, fish, mollusks, sponges, algae combines all living organisms (plants, animals, micro-organisms) and physical components (light, water, soil, rocks, minerals) Ecology Scientific study of the interactions that determine the distribution and abundance of organisms Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 6 / 23
  • 7. Research context Ecosystems Gnome studies R studies Software Ecosystem Business-oriented software ecosystem “a set of actors functioning as a unit and interacting with a shared market for software and services, together with the relationships among them.” (Jansen et al. 2009) Examples “App Stores” (Android, iOS) Ma¨lick Claes (UMONS) e Eclipse platform & plugins Ecological Studies of Open Source Software Ecosystems 2013/09/18 7 / 23
  • 8. Research context Ecosystems Gnome studies R studies Software Ecosystem Development-centric view “a collection of software products that have some given degree of symbiotic relationships.” (MesserschmiK & Szyperski 2003) “a collection of software projects that are developed and evolve together in the same environment.” (Lungu 2008) Examples GNOME & KDE Linux distributions ( Debian, Ubuntu) ’s CRAN and others (CPAN, CTAN, . . . ) Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 8 / 23
  • 9. Research context Ecosystems Gnome studies R studies Biological and Software Ecosystems in Summary Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 9 / 23
  • 10. Research context Ecosystems Gnome studies R studies Biological and Software Ecosystems in Summary Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 9 / 23
  • 11. Research context Ecosystems Gnome studies R studies 1 Research context 2 Ecosystems 3 Gnome studies 4 R studies Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 10 / 23
  • 12. Research context Ecosystems Gnome studies R studies Reticulate evolution Darwinian evolution cannot Scleractinian coral polyps always explain evolution of some species: causes are not always related to natural selection The evolution tree of life: acyclic graph Reticulation: hybrid speciation, horizontal gene transfer Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 11 / 23
  • 13. Research context Ecosystems Gnome studies R studies Migrations Initial motivation Horizontal gene transfer between projects? Genotype of a project: contributors Phenotype of a project: code Can we make a parallel between code duplication and contributors? Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 12 / 23
  • 14. Research context Ecosystems Gnome studies R studies Migrations Initial motivation Horizontal gene transfer between projects? Genotype of a project: contributors Phenotype of a project: code Can we make a parallel between code duplication and contributors? Questions Do joiners come from other GNOME projects or from outside the ecosystem? Do leavers tend to stay within other GNOME projects? Does migration patterns change over time? Do some projects attract or loose more contributors than others? Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 12 / 23
  • 15. Research context Ecosystems Gnome studies R studies Migrations GNOME git repositories 16 years of history (1997 to 2012) 1,418 projects (stored in git repositories) 1,315,997 commits 11,094 identities, 5,923 distinct persons after identity merging Metrics for 6-month periods Local joiners Global joiners Local leavers Global leavers Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 13 / 23
  • 16. Research context Ecosystems Gnome studies R studies Migrations Local vs. global trend −20 −10 0 10 Difference between global and local joiners gimp evolution gtk+ 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 Time Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 14 / 23
  • 17. Research context Ecosystems Gnome studies R studies Migrations Local vs. global trend −20 −15 −10 −5 0 5 10 Difference between global and local leavers gimp evolution gtk+ 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 Time Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 15 / 23
  • 18. Research context Ecosystems Gnome studies R studies Migrations Collaboration factor CF (p) = Collaboration factor for project p = percentage of coders in p having contributed to other GNOME projects Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 16 / 23
  • 19. Research context Ecosystems Gnome studies R studies Migrations Collaboration factor CF (p) = Collaboration factor for project p = percentage of coders in p having contributed to other GNOME projects 10 Difference between global and local joiners 0 GIMP = 65.3% −20 GTK+ = 94.8% −10 Evolution = 85.1% gimp evolution gtk+ 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 Time Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 16 / 23
  • 20. Research context Ecosystems Gnome studies R studies Migrations Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 17 / 23
  • 21. Research context Ecosystems Gnome studies R studies Project clustering Hierarchical clustering Distance between two projects represents the similarity of their community and the intensity of their members Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 18 / 23
  • 22. Research context gnome.boxes Gnome studies Ecosystems gupnp.tools gupnp.av gupnp.vala muine monkey.media gssdp gupnp Project clustering Hierarchical clustering postr contact.lookup.applet devilspie librest accounts.dialog R studies gnome.vfs tasks libsocialweb Distance between two projects represents the similarity of their community sound.juicer pygobject pygtk and the intensity of their members flow gnome.admin.tools system.tools.backends Python clustering gazpacho gnoetry.extra gnome.chart pygio bonobo.python pybank gnome.python.extras pygda gnome.python.desktop release.notes pygoocanvas gnome.python mhonarc gael libglade dia.newcanvas gnorpm fontilus nautilus.rpm pygnome pyorbit viewcvs.web blogs.web jhmenu gnome.web.photo Ma¨lick Claes (UMONS) e d.feet pygtk.web gir.repository pygi gnome.webkit Ecological Studies of Open Source Software Ecosystems drwright gfloppy 2013/09/18 18 / 23
  • 23. libgnomeservice Research context Ecosystems evolution.xmltv gjobs gnome.sharing Gnome gnomepedia studies R studies atomato gnome.reset Project clustering gnome.backup Perl clustering libgda.perl bonobo.support gda.evolution perl.Glib perl.Gtk2 glib.controller perl.Gtk2.SourceView perl.Gtk2.Recent gtkunique perl.Clutter json.glib pyclutter unique perl.Gnome2.GConf perl.Gnome2.Print clutter.gtk gnome.dictionary perl.Gnome2.Notify perl.Gtk2.TrayManager perl.Cairo.GObject perl.GStreamer.GConf perl.Gnome2.Canvas perl.Gtk2.Spell perl.Gtk2.GladeXML perl.ExtUtils.Depends perl.Cairo perl.Glib.Object.Introspection perl.Gnome2 perl.GStreamer perl.Gnome2.VFS perl.ExtUtils.PkgConfig perl.Gnome2.Wnck perl.Gtk3 perl.Gnome2.Rsvg perl.Gnome2.Vte gnome.perl.introspection perl.Gtk2.MozEmbed perl.GStreamer.Interfaces perl.Pango perl.Gnome2.PanelApplet perl.Glib.IO perl.Gnome2.Dia perl.Gtk2.TrayIcon Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems litespeed libzvt gtk.vnc 2013/09/18 19 / 23
  • 24. Research context Ecosystems Gnome studies R studies Project clustering Language clustering C● 1e+07 ● C++ C/C++ Header ● C#● ●Python Perl JS● ● PHP ● LOC Visual ● Basic Lisp ● 1e+05 ●Java ● IDL yacc ● Ruby Objective C ● ● Tcl/Tk Assembly ● ● ● lex ●ASP.Net ● Objective C++ ●Haskell 100 Ma¨lick Claes (UMONS) e 1000 Files Ecological Studies of Open Source Software Ecosystems 10000 2013/09/18 20 / 23
  • 25. Research context Ecosystems Gnome studies R studies 1 Research context 2 Ecosystems 3 Gnome studies 4 R studies Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 21 / 23
  • 26. Research context Ecosystems Gnome studies R studies R Ecosystem Open Source statistical analysis environment based on the S language Highly used by (non computer) scientists Modules, libraries and software installed using a package system Comprehensive R Archive Network (CRAN): ∼ 4500 maintained packages ∼10 years of history Very strict policy: unmaintained or buggy packages are archived ⇒ problems arises: dependency breaks, scientific studies reproducibility Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 22 / 23
  • 27. Research context Ecosystems Gnome studies R studies Dependency graphs Ma¨lick Claes (UMONS) e Ecological Studies of Open Source Software Ecosystems 2013/09/18 23 / 23