gonzalez barahona community_board_metrics_0415162

20
Using *Grimoire to analyze OpenStack Jesus M. Gonzalez-Barahona [email protected] http://identi.ca/jgbarah http://twitter.com/jgbarah Bitergia GSyC/LibreSoft (Universidad Rey Juan Carlos) OpenStack Summit, Portland, April 15th, 2013 Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 1/ 20

Upload: openstack-foundation

Post on 20-May-2015

335 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Gonzalez barahona community_board_metrics_0415162

Using *Grimoire to analyze OpenStack

Jesus M. Gonzalez-Barahona

[email protected]://identi.ca/jgbarah http://twitter.com/jgbarah

BitergiaGSyC/LibreSoft (Universidad Rey Juan Carlos)

OpenStack Summit, Portland, April 15th, 2013

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 1 /

20

Page 2: Gonzalez barahona community_board_metrics_0415162

c©2012, 2013 BitergiaSome rights reserved. This presentation is distributed under the

“Attribution-ShareAlike 3.0” license, by Creative Commons, available athttp://creativecommons.org/licenses/by-sa/3.0/

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 2 /

20

Page 3: Gonzalez barahona community_board_metrics_0415162

We’ve done the Grizzly companies analysis

http://blog.bitergia.com/2013/04/04/

companies-contributing-to-openstack-grizzly-analysis/

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 3 /

20

Page 4: Gonzalez barahona community_board_metrics_0415162

We’re deploying the OpenStack activity dashboard

http://activity.openstack.org/dash/

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 4 /

20

Page 5: Gonzalez barahona community_board_metrics_0415162

We’re deploying the OpenStack activity dashboard (2)

This is a (preliminary) preview!!!

http://activity.openstack.org/dash/dashboard/

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 5 /

20

Page 6: Gonzalez barahona community_board_metrics_0415162

Measuring OpenStack activity

Information about code, community, development

for OpenStack

can be retrieved, organized, analyzed

Let’s do it!

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 6 /

20

Page 7: Gonzalez barahona community_board_metrics_0415162

Measuring OpenStack activity (why?)

Why?

Open development: transparency

Complex information: knowledge extraction

Community-based decisions: objective information

Decision tracking: parameters to decide

...

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 7 /

20

Page 8: Gonzalez barahona community_board_metrics_0415162

Data has to be extracted, mined

Data lives in repositoriesusually not designed to release it easily:

tools are needed to retrieve and extract

Data includes many complexities and details

tools are needed to assist in mining, analysis

Analyze free software with free software!

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 8 /

20

Page 9: Gonzalez barahona community_board_metrics_0415162

The MetricsGrimoire approach

Set of tools specialized in retrieving information fromdifferent kinds of repositories. Among them:

CVSAnalY: source code management(CVS, Subversion, git, etc.)Bicho: issue tracking systems(Bugzilla, Jira, SourceForge, Allura, Launchpad,Google Code, etc.)& code revision systems (Gerrit)MLStats: mailing lists(mbox files, Mailman archives, etc.)

Store all the information in SQL databases

http://metricsgrimoire.github.com

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 9 /

20

Page 10: Gonzalez barahona community_board_metrics_0415162

vizGrimoire: Milking the databases

Once information is ready for querying:

it can be queried directly in the database

it can be analyzed from R, Python, etc.

it can be filtered, manually inspected, improved

it can be combined, cross-analyzed

it can be visualized

Set of tools to simplify & automate all of this

https://vizgrimoire.github.com

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 10 /

20

Page 11: Gonzalez barahona community_board_metrics_0415162

vizGrimoireR: statistics, charts

R package specialized in managing MetricsGrimoireinformationConnects directly to the database and:

gets the information from it

filters & massages it

does statistical analysis on it

produces charts and WebGL 3D graphs

produces JSON files to export to other tools

...and lets you unleash all the potential of R

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 11 /

20

Page 12: Gonzalez barahona community_board_metrics_0415162

vizGrimoireJS: visualization

JavaScript library producing visualizationsRetrieves JSON files and produces:

live charts: evolution, pies, bars, etc.

tables and text

comparative charts

actionable dashboards

soon to support links to information in forge

Integration with HTML5 applications

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 12 /

20

Page 13: Gonzalez barahona community_board_metrics_0415162

How the OpenStack dashboard is created

Run MetricsGrimoire (CVSAnalY, Bicho, MLStats) onrepositoriesExample: determining which git repositories to mineProduce queries specific for OpenStackExample: condition for deciding who closes a ticketRun customized Python & R scripts to produce JSONfiles Example: produce results per OpenStacksubprojectCustomize vizGrimoireJS to display charts Example:remove bots from top tablesExport the result via HTTP We still have performanceissues...

Do all of this continuously

http://activity.openstack.org/dash/dashboard/

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 13 /

20

Page 14: Gonzalez barahona community_board_metrics_0415162

Future features: tracking other parameters

Time

0.99

(bl

ack)

/ 0.

95 (

gree

n) /

0.5

(red

) / 0

.25

(blu

e)

2000 2002 2004 2006 2008 2010 2012

23

45

6

Time-to-close (quantiles over time): Time in minutes, log 10 scale

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 14 /

20

Page 15: Gonzalez barahona community_board_metrics_0415162

Future features: tracking other parameters (2)

Time-to-close (quantiles over time)

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 15 /

20

Page 16: Gonzalez barahona community_board_metrics_0415162

Future features: tracking other parameters (3)

Demographics (attraction rate, retention rate per generation)

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 16 /

20

Page 17: Gonzalez barahona community_board_metrics_0415162

In summary...

OpenStack repositories have a wealth of information

We all can do (and many do) our own analysis

Free software to analyze free software development

Let’s define common formats to interface to differenttools

We can incrementally develop a powerful platform

What would you like to know about OpenStack?

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 17 /

20

Page 18: Gonzalez barahona community_board_metrics_0415162

Bitergia: an spin-off

Started operations in July 2012Builds on the experience of LibreSoft R&D groupOffering professional products and servicesFocused on:

Metrics about software development(including community metrics)

Specialized support for development forges(including metrics for projects)

http://bitergia.com

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 18 /

20

Page 19: Gonzalez barahona community_board_metrics_0415162

Credits

Thanks go to...

Many LibreSoft developers who developed MetricsGrimoire

The (small) community now maintaining MetricsGrimoire

Some Bitergia developers producing vizGrimoire

The (future) community maintaining vizGrimoire

The many free software developers who produced all the software onwhich these tools rely

You, who are producing OpenStack

http://libresoft.es

http://bitergia.com

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 19 /

20

Page 20: Gonzalez barahona community_board_metrics_0415162

This is the end, my friend

Please, provide *any* feedback

[I would love to know what interested you the most][...and the least]

Final note:Let’s find ways to understand OpenStack a bit better

Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStackOpenStack Summit Portland 2013 20 /

20