Slide 1

Slide 1 text

The Grimoire system for software development analytics Jesus M. Gonzalez-Barahona [email protected] http://twitter.com/jgbarah Bitergia GSyC/LibreSoft (Universidad Rey Juan Carlos) FLOSS Community Metrics Meeting, Portland, OR, USA, July 21st 2014 http://bit.ly/fcm2-grimoire Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 1 / 35

Slide 2

Slide 2 text

c 2012-2014 Bitergia Some rights reserved. This presentation is distributed under the “Attribution-ShareAlike 3.0” license, by Creative Commons, available at http://creativecommons.org/licenses/by-sa/3.0/ Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 2 / 35

Slide 3

Slide 3 text

Structure of the presentation 1 Me, myself, and my circumstances 2 Open source and beyond 3 Grimoire 4 Examples 5 Why open development analytics? 6 Can we conclude something? Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 3 / 35

Slide 4

Slide 4 text

Me, myself, and my circumstances Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 4 / 35

Slide 5

Slide 5 text

My Uni, my company Uni Rey Juan Carlos: LibreSoft research team Understanding free, open source software development Data analytics approach Bitergia: From research to the real world The software development analytics company Dashboards, reports, consultancy... http://gsyc.es/~jgb http://bitergia.com Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 5 / 35

Slide 6

Slide 6 text

Bitergia: analytics for your peace of mind Started operations in July 2012 Builds on the experience of LibreSoft R&D group Offering professional products and services Focused on: Grimoire Dashboard: software development analytics (including community metrics) Specific studies and reports (based on metrics and facts collection) http://bitergia.com/dashboards http://blog.bitergia.com Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 6 / 35

Slide 7

Slide 7 text

Open source and beyond Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 7 / 35

Slide 8

Slide 8 text

A new dimension of openness When we develop in the open we produce a great deal of data about how we develop “Show me the development data” as a step beyond “show me the code” Let’s do it! Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 8 / 35

Slide 9

Slide 9 text

But data has to be extracted, mined... Data lives in repositories not always designed to release all their data easily: tools are needed to retrieve and extract it Data includes many complexities and details tools are needed to filter, organize it Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 9 / 35

Slide 10

Slide 10 text

But data has to be analyzed, visualized... Casual observation is not enough: tools are needed for statistical and other kinds of analysis Analysis is not enough: tools are needed for interactive visualization Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 10 / 35

Slide 11

Slide 11 text

Grimoire Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 11 / 35

Slide 12

Slide 12 text

Data lives in many different systems Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 12 / 35

Slide 13

Slide 13 text

Grimoire: tools for retrieval, analysis, visualization MetricsGrimoire vizGrimoire Grimoire Dashboard Data retrieval Analysis, User from visualization interaction, repositories panels, views Free software Commercial support available Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 13 / 35

Slide 14

Slide 14 text

The Grimoire Development Dashboard http://dashboard.eclipse.com http://demo.bitergia.com Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 14 / 35

Slide 15

Slide 15 text

MetricsGrimoire Retrieving information repositories: CVSAnalY: source code management (CVS, Subversion, git...) Bicho: issue tracking systems (Bugzilla, Jira, GitHub, Allura, Launchpad...) & code review systems (Gerrit) MLStats: mailing lists (mbox files, Mailman & GMane archives...) MediaWikiAnalysis: wikis IRCAnalysis: IRC logs Organize all the information in SQL databases http://metricsgrimoire.github.io Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 15 / 35

Slide 16

Slide 16 text

vizGrimoire Analyze information in the database (statistical analysis) Visualize results (Grimoire Development Dashboard) GrimoireLib: Python package to access the database vizGrimoireJS: Grimoire Dashboard vizGrimoireJS-lib: supporting JavaScript library for the dashboard (can be used standalone) https://vizgrimoire.github.io Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 16 / 35

Slide 17

Slide 17 text

Examples Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 17 / 35

Slide 18

Slide 18 text

How is corporate involvement evolving? [Main companies contributing to Eclipse (no. of commits)] http://dashboard.eclipse.org/5y/browser/ scm-companies-summary.html Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 18 / 35

Slide 19

Slide 19 text

How are you attracting / retaining talent? [OpenStack authors community: Attraction / retention, July 2014] Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 19 / 35

Slide 20

Slide 20 text

How active are your chat channels? [Puppet IRC channels] http://bitergia.dev.puppetlabs.com/ Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 20 / 35

Slide 21

Slide 21 text

Who is contributing? [MediaWiki top contributors (January 2013)] http://korma.wmflabs.org Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 21 / 35

Slide 22

Slide 22 text

When were your tickets born? [Time of birth of Ceph tickets] http://metrics.ceph.com/its-states.html Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 22 / 35

Slide 23

Slide 23 text

How are your mailing lists working? [MediaWiki development mailing lists] http://korma.wmflabs.org Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 23 / 35

Slide 24

Slide 24 text

How much neutral is your community? q q q q q q q q 0 1 2 3 250 500 1000 2000 4000 Number of accepted reviews Iterations per accepted review (median) [WebKit code review data per company (2012)] Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 24 / 35

Slide 25

Slide 25 text

Where do developers work? actions authors per actions 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 arch/arc arch/arm arch/i386 arch/mips arch/powerpc arch/s390 arch/tile arch/x86 drivers/acpi drivers/char drivers/dma drivers/gpu drivers/media drivers/net drivers/scsi drivers/spi drivers/staging drivers/tty drivers/usb fs/btrfs fs/ceph fs/cifs fs/ext4 fs/f2fs fs/nfs fs/xfs include/linux net/ipv4 arch Documentation drivers fs include kernel net sound tools virt http://bit.ly/kernel-dev Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 25 / 35

Slide 26

Slide 26 text

A future line: integration Integration with forges (Allura) in the context of the Prose FP7 project Integration with software analytics (Sonar) work in progress Integration with project crawlers exploring in the context of the Markos FP7 project Integration with IDEs (Eclipse) future work ...your preferred system here... http://prose.eu http://markos-project.eu both funded by the European Commission under FP7-ICT Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 26 / 35

Slide 27

Slide 27 text

Why open development analytics? Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 27 / 35

Slide 28

Slide 28 text

From open development to open development analytics Information about code, community, development for open development projects can be retrieved, organized, analyzed Let’s publish analytics results & data Open Development Analytics: A new standard for transparency Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 28 / 35

Slide 29

Slide 29 text

Open development analytics Who is interested? Large & small free software communities ...and thousands of large & small companies, public administrations, foundations participating in them, depending on their software [Who can afford not to be interested? It is a key strategic need for many actors] Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 29 / 35

Slide 30

Slide 30 text

Open development analytics Why? Free software produced with open development models is more and more important for IT users, producers, integrators It is different & complex, yet transparent, many details are public, and it can be improved Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 30 / 35

Slide 31

Slide 31 text

Some areas of interest Performance (understanding activity) Company participation (beyond copyright notices) Transparency (available information) Auditing (certify participation, experience, etc.) Profiling (key people, companies) Neutrality (fair treatment) Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 31 / 35

Slide 32

Slide 32 text

Can we conclude something? Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 32 / 35

Slide 33

Slide 33 text

In summary... Let’s analyze free software with free software, and let’s publish the results! MetricsGrimoire extracts data from repositories vizGrimoire analyzes it and produces dashboards They’re simple to use, and becoming simpler We can incrementally develop a powerful platform Make your pet project open-development-data ready! Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 33 / 35

Slide 34

Slide 34 text

The *Grimoire community Thanks go to... LibreSoft developers who developed a sizable part of MetricsGrimoire The community maintaining MetricsGrimoire Bitergia developers producing vizGrimoire The (future) community maintaining vizGrimoire The many free software developers that produced all the software on which these tools rely The many free software developers that produced all the software that gives us projects to analyze Join us! Visit http://metricsgrimoire.github.io for more info! http://libresoft.es http://bitergia.com Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 34 / 35

Slide 35

Slide 35 text

This is not the end You can use *Grimoire, contribute to *Grimoire Slides: http://bit.ly/fcm2-grimoire Jesus Gonzalez-Barahona (Bitergia) The Grimoire system for software development analytics FCM2 2014 35 / 35