seconda: a tool for analysing software ecosystems

15
SECONDA (A tool for analysing software ecosystems) Javier P´ erez, Romuald Deshayes, Mathieu Goeminne, Tom Mens Software Engineering Lab. Service de G´ enie Logiciel, Institut d’Informatique Universit´ e de Mons March 28, 2012

Upload: tom-mens

Post on 18-Nov-2014

720 views

Category:

Technology


2 download

DESCRIPTION

Presentation by Javier Perez, Software Engineering Lab, University of Mons, Belgium. Presented during the CSMR 2012 conference in Szeged, Hungary. Software ecosystems are coherent collections of software projects that evolve together and are main- tained by the same developer community. They exhibit some particular evolution features because of the dependencies between the software projects and the interactions between the community members. Tools for analysing and visualising the evolution of software ecosystems must take these aspects into account. SECONDA is a software ecosys- tem visualization and analysis dashboard that offers both individual and grouped analysis of the evolution of projects and developers belonging to the software ecosystem, at coarse-grained and fine-grained level. Using GNOME as a case study, we use SECONDA to study these ecosystem and community aspects.

TRANSCRIPT

Page 1: Seconda: A tool for analysing software ecosystems

SECONDA(A tool for analysing software ecosystems)

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab.

Service de Genie Logiciel, Institut d’InformatiqueUniversite de Mons

March 28, 2012

Page 2: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Purpose

SECONDA

integrates a collection of tools

aimed at studying software quality

by analysing software ecosystems

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 2 / 15

Page 3: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Software Ecosystems

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 3 / 15

Page 4: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Gnome Ecosystem

Tool is currently tailored to analyze Gnome ecosystem:

> 1300 projects> 5000 contributors> one decade (since 1997) development history2 months < project’s lifetime < 14 years

authors committers commits files

minimum 1 1 1 25

Q1 3 2 23 61

median 12 9 131 112

Q3 59 46 517 237

maximum 1142 692 35191 7097

mean 62.07 45.78 760.2 252.3

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 4 / 15

Page 5: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

SECONDA

ExtractMeasureVisualiseAnalyse

ProjectsEnvironmentDevelopersCommunity

Tools:

Data extraction

Preprocessing - Identity matching

Community member profiling (under development)

Metrics

Visualisation

Statistics (planned)

Reporting (planned)

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 5 / 15

Page 6: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Identity Matching

Identification of the different identities of a developer to provide:Better identification of each developer activitiesMore accurate analyses

2 different matching algorithms implemented so fareasy integration of other algorithms

Manual interaction for fixing false positives / negatives

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 6 / 15

Page 7: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Identity Matching Panel

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 7 / 15

Page 8: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Ecosystem Visualisation

General metrics (number of authors, committers, commits, number offiles, LOC, ...)

Project’s metrics correlation (scatterplots)

Programming languages usage distribution (boxplots)

Ecosystem metrics distribution (boxplots)

Projects’s metrics comparison (spider web charts)

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 8 / 15

Page 9: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 9 / 15

Page 10: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 10 / 15

Page 11: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Project Visualisation

General metrics + complexity metrics for each project revision

Visualisation of a project’s file size evolution (histogram + rev.selection)

Visualisation of a project’s metrics evolution (boxplot + rev.selection)

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 11 / 15

Page 12: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 12 / 15

Page 13: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

SECONDA architecture overview

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 13 / 15

Page 14: Seconda: A tool for analysing software ecosystems

Introduction Preprocessing Ecosystem visualisation Project visualisation Architecture Future work

Future Work

Statistics module

Reporting module

More individual developer metrics

Other ecosystems (KDE, Eclipse, . . . )

Incremental and automatic data extraction and analysis

Support for other data sources (repositories, bug trackers, mailinglists, dev. fora)

. . .

Suggestions?

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab. (UMONS)SECONDA March 28, 2012 14 / 15

Page 15: Seconda: A tool for analysing software ecosystems

SECONDA(A tool for analysing software ecosystems)

Javier Perez, Romuald Deshayes, Mathieu Goeminne, Tom MensSoftware Engineering Lab.

Service de Genie Logiciel, Institut d’InformatiqueUniversite de Mons

March 28, 2012