collaboration and governance of open source projects

Post on 28-Aug-2014

382 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Our proposal for improving the collaboration and governance of open source software projects

TRANSCRIPT

Collaboration and Governance in OSS

projects(Preliminary work)

Javier Cánovas, Jordi Cabotjordi.cabot@inria.fr

http://modeling-languages.com

Background We can all agree that development is a collaboration

process

We didn’t see this collaboration taking place in the development of MDE artefacts (not talking about synch development)

We built Collaboro, a tool to enable the collaboration of domain experts and technical people when building a DSL. See http://modeling-languages.com/enabling-the-collaborative-definition-of-dsls/

2© AtlanMod - atlanmod-contact@mines-nantes.fr

Collaboro

DSL

Abstract Syntax

Concepts & relationship

s

Well-formed rules

Concrete Syntax

Textual Graphical

Semantics

Denotational Pragmatic Translationa

l Operational

Collaboro

• Providing means to discuss about language elements

• Overcoming technical barriers

Participation

• Facilitating voting and decision processes• Keeping traceability

Collaboration

Representing collaborations

Collaboro process

Effective Collaboration requires Governance

How does the community make a decision?– Majority? Unanimity? Dictatorship?– Minimal participation level?– Depending on the phase? (proposals,

comments, solution)

This is NOT a MDE problem – Switched to study OSS projects

7© AtlanMod - atlanmod-contact@mines-nantes.fr

How? Existing tools only store facts

- No support for the decision process

- No traceability of the decisions

OSS development

9© AtlanMod - atlanmod-contact@mines-nantes.fr

Each phase implies decisions

Is governance a real challenge in OSS

10© AtlanMod - atlanmod-contact@mines-nantes.fr

In a survey among OSS contributors, they said:1. Understanding the governance model (e.g.

who/when/how decides to accept a patch) was very difficult (implicit, scattered,…)

2. A clear view of this model would attract more contributors

3. They believed it was feasible to define the governance model

A manual analysis of several well-known ones confirmed 1) and the extreme variability among them (also in terms of tools: forums, email,…)

Let’s help all OSS projects define their governance rules!

11© AtlanMod - atlanmod-contact@mines-nantes.fr

By providing a DSL that facilitates the specification of governance rules in a “standard” format

And a decision engine able to interpret and apply these rules to evolve a project status

Relying on Collaboro to store the collaboration information

Governance metamodel

12© AtlanMod - atlanmod-contact@mines-nantes.fr

Example

13© AtlanMod - atlanmod-contact@mines-nantes.fr

Project myProject {Roles: CommittersDeadlines:

myDeadline : 7 daysRules:

myMajorityRule : Majority {applied to Taskwhen TaskReviewpeople Committersrange PresentminVotes 0deadline myDeadline

}}

Enforcing the rules (Optional)

14© AtlanMod - atlanmod-contact@mines-nantes.fr

Architecture

15© AtlanMod - atlanmod-contact@mines-nantes.fr

Mining governance models

16© AtlanMod - atlanmod-contact@mines-nantes.fr

Taking OSS projects in GitHub

Goal: get an idea of the (often implicit) popular governance models adopted

Study possible correlations between the governance models and the “success” of a project– Is democracy better???

A word of caution

17© AtlanMod - atlanmod-contact@mines-nantes.fr

Many OSS projects are “fake” /dead (i.e. they do not really want collaborators: backup, CV)

85% of projects have never been forked

top related