collaboration and governance of open source projects
Post on 28-Aug-2014
382 Views
Preview:
DESCRIPTION
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