Transcript

Open Development AnalyticsA Step Towards More Project Transparency

(Reduced version)

Jesus M. Gonzalez-Barahona

[email protected] @jgbarah http://speakerdeck.com/jgbarah

Bitergia / LibreSoft (URJC)

Open Source SummitParis (France), November 16th 2016

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 1 / 54

Open

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 2 / 54

Software development

http://xkcd.com/844/

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 3 / 54

Analytics

https://en.wikipedia.org/wiki/Charles_Joseph_Minard

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 4 / 54

Open Development Analytics

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 5 / 54

Structure of the presentation

1 A bit of context

2 Transparency and governance

3 Open development analytics

4 How are changes being reviewed?

5 Dependency

6 Dealing with issues?

7 Diversity

8 The end

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 6 / 54

A bit of context

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 7 / 54

Me and my two hats

Uni Rey Juan Carlos:

LibreSoft research team

Understanding free, open source software

Data analytics approach

Bitergia:

From research to the real world

Understanding software development

Data analytics approach

http://gsyc.es/~jgb

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 8 / 54

The company

The software development analytics company

dashboards

reports

consultancy

...

http://bitergia.comJesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 9 / 54

Transparency and governance

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 10 / 54

Who drives open software developoment?

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 11 / 54

Who drives open software development

A community

Persons (and organizations) with

common goals

different interests

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 12 / 54

Working together

Self-awareness

Governance

Transparency

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 13 / 54

Self-awareness

Open development communitiesneed to be self-aware

data is the source for awareness...when it can be used for “sensing”

The same appliesto any open organization

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 14 / 54

Governance

“Establishment of policies, and continuousmonitoring of their proper implementation, by themembers of the governing body of anorganization. It includes the mechanisms requiredto balance the powers of the members (with theassociated accountability), and their primary dutyof enhancing the prosperity and viability of theorganization.”

http://businessdictionary.com

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 15 / 54

Governance

“Establishment of policies, and continuousmonitoring of their proper implementation, bythe members of the governing body of anorganization. It includes the mechanisms requiredto balance the powers of the members (with theassociated accountability), and their primaryduty of enhancing the prosperity and viability ofthe organization.”

http://businessdictionary.com

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 16 / 54

Transparency

It comes in two flavors

Transparency to the community(fairness)

Transparency to third parties(trust)

Which for open organizations are kind of the same

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 17 / 54

Transparency

Example of rationale (OpenStack):

“OpenStack favors disclosure and transparency topromote sharing and collaboration within theOpenStack community”

https://www.openstack.org/legal/transparency-policy/

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 18 / 54

Transparency: showing the data is not enough

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 19 / 54

Open development analytics

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 20 / 54

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”

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 21 / 54

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 transparencyJesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 22 / 54

Open development analytics

Who may benefit?

Developers

Project managers

Community managers

Evaluators

...

Anyone interested in the health of the project

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 23 / 54

Who may benefit?

Slide used by Jim Zemlin at LF Collab 2016

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 24 / 54

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) Open Development Analytics Paris, Nov 2016 25 / 54

How are changes beingreviewed?

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 26 / 54

Some reviewers are more equal than others

http://blog.bitergia.com/2015/12/30/

some-developers-are-more-equal-than-others/

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 27 / 54

Neutrality?

●●

● ●●

● ●

0

1

2

3

250 500 1000 2000 4000Number of accepted reviews

Itera

tions

per

acc

epte

d re

view

(m

edia

n)

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 28 / 54

Dependency

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 29 / 54

Apache Pony Factor

In words of Daniel Gruno:

We [the ASF] created a term we have coined“Pony Factor” (because ASF is full of ponies, orpeople who think they are ponies). Pony Factor(PF) shows the diversity of a project in terms ofthe division of labor among committers in aproject.

Pony Factor is determined as:“The lowest number of committers whosetotal contribution constitutes the majority ofthe codebase”

https://ke4qqq.wordpress.com/2015/02/08/pony-factor-math/Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 30 / 54

Bitergia Elephant Factor

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 31 / 54

Bitergia Elephant Factor

Projects can benefit from powerful collaborationsfrom companies (elephants). The elephant factorshows the diversity of a project in terms of thedivision of labor among companies (by mean ofdevelopers affiliated with them).

Elephant factor is determined as:“The lowest number of companies whosetotal contribution (in commits by theiremployees) constitutes the majority of thecommits”

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 32 / 54

Code “owned”

“The land belongsto its workers”

Emiliano Zapata

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 33 / 54

Code “owned”

The code changes over time. The current version is“owned” by the people who produced it.

The code “belongs” to those who wrote it.

Zapata factor (work in progress):“The lowest number of developers for whomthe total number of lines of code they “own”(were last touched by them) constitutes themajority of the lines of code”

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 34 / 54

Diversity: Code “owned”

[Linux kernel, July 2016, Zapata factor: 200]

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 35 / 54

Code “owned”

The code “belongs” to companies who employdevelopers changing it.

United Fruit factor (work in progress):“The lowest number of companies for whomthe total number of lines of code they “own”(were last touched by their employees)constitutes the majority of the lines of code”

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 36 / 54

Pony / elephant factors for some projects

Pony Factor Elephant Factor Commits (excl bots)

OpenNebula 4 1 12K

Eucalyptus 5 1 25K

CloudStack 14 1 42K

OpenStack >100 6 126K

CloudFoundry 41 1 60K

OpenShift 10 1 15K

Docker 15 1 18K

Kubernetes 12 1 7K[July 2015]

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 37 / 54

Dealing with issues?

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 38 / 54

Issues may be processed not as intended

Policy (or recommendations) may mandate transitionsbut are they real?

Time to close when same company reporting / fixing?

Time to close for external bug reports?

Time to close depending on who reports?

Who opens tickets that nobody cares about?

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 39 / 54

Ej: The “mandated” changes of state

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 40 / 54

The real changes of state

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 41 / 54

Diversity

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 42 / 54

Geography

Geographical diversity is difficult to assess

Companies can keep detailed records, but opencommunties are different

Fortunately, some tools leave traces...

This allows for better knowledge...and better tracking of initiatives

Example: policies to enlarge the number of developersin XXX region

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 43 / 54

Geography: time zones in git records

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 44 / 54

Geography: GitHub profiles

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 45 / 54

Gender: Analyzing by name

Current situation of gender imbalance in OpenStack

Gender Developers Commmits Commits/devel

Female 750 14,647 19.5

Male 4,632 207,112 44.7

Only names with more than 80% of certainty.

[Work in progress, preliminary results]

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 46 / 54

Gender: Analyzing by name

Commits by women: 6.8% (4 Kcommits)Women: 9.9% (330 developers)Linux kernel, Nov 2015 – Oct 2016

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 47 / 54

The end

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 48 / 54

Open Development Analytics Live: OPNFV dashboard

http://opnfv.biterg.io

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 49 / 54

Summary

Open Development AnalyticsA step forward in project

transparency

http://grimoirelab.github.io

http://speakerdeck.com/jgbarah

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 50 / 54

A moment for a commercial: Join us at MSR 2017!!

http://2017.msrconf.org

14th InternationalConference onMining SoftwareRepositories

Co-located with ICSE

Buenos Aires, Argentina

Save the dates:May 20-21 2017

Start the conversation!!!#msr17

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 51 / 54

License

c©2016 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) Open Development Analytics Paris, Nov 2016 52 / 54

Credits (1)

“Man With Two Hats”Statue by Henk Visch, located in Otawa, CanadaPicture by Lezumbalaberenjena in Wikimedia CommonsLicense: Public domain

https://commons.wikimedia.org/wiki/File:

Man_With_Two_Hats_Ottawa_Statue_by_lezumbalaberenjena.jpg

“Napoleon’s Russian campaign of 1812”Original by Charles MinardLicense: Public domain

https://en.wikipedia.org/wiki/Charles_Joseph_Minard#/media/File:

Minard.png

“Aged Come In We’re Open”Picture by Czarina Alegre in FlickrLicense: Creative Commons Attribution 2.0

https://flic.kr/p/fjGamh

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 53 / 54

Credits (2)

“Good code”Comic by Randall Munroe, XKCD 844License: Creative Commons Attribution-NonCommercial 2.5

http://xkcd.com/844/

“Crowd at FOSDEM 2008”Picture by Jesus Corrius in FlickrLicenses: Creative Commmons Attribution 2.0

http://www.flickr.com/photos/jcorrius/2302302707/

“Elephant”Picture by ajoheyhoLicense: Creative Commons Public Domain

https://pixabay.com/en/elephant-african-bush-elephant-114543/

“Emiliano Zapata”

License: Public Domain

Jesus Gonzalez-Barahona (Bitergia) Open Development Analytics Paris, Nov 2016 54 / 54


Recommended