This document aims at providing a guide on the actual governance of the ZigBee 4 OSGi project, by defining roles, procedures, and other bits. The governance may chance at anytime, but this page should try to keep track of the changes and it should always provide the active set of roles, and procedures.
The document does not cover the technical procedure which are left to other document(s).
The ZigBee 4 OSGi at the moment defines the following roles: User, Developer, Steering Board Member. Each of them is describe in the next sections.
It is someone that uses the ZigBee 4 OSGi project, either a registered user on this Redmine website (thus it owns a credentials for log in on this Redmine instance) or someone that does not own any credentials for this Redmine website. They can cast theirs vote during the poll, but theirs vote are not binding for the poll results. The action that they can perform on the Redmine website depends only if they are registered or anonymous user as follow.
- They can post message on the developer mailing list, create a new issue , and modify wiki page on Redmine.
- On Subversion they have read only access.
- On Redmine they have only read access, but they cannot modify anything.
- On Subversion they have read only access.
Developer¶This role is given to a person who regularly contributes to develop and maintain the software. Developers have a binding vote.
- On Redmine they can perform almost all the operation
- On Subversion they have bot read and write access.
Steering Board Member (SBM)¶This role is given by the Steering Board to a Developer or to an expert person who can help the project. The member is subscribed to a private mailing-list for the governance and to the public one of the developers. They own binding vote and veto rights. In particular they have right are:
- On Redmine they can perform all the operation.
- On Subversion they have read and write to any area.
This role is given to person with experience as sysadmin so that they can help with sysadmin task. They don't need to be developers or board members.
It has no special rights, but s/he is one of the initial contributor of the project. In general, s/he usually owns the SBM right till she/he decide to drop from contributing to the project.
The communication channel¶
The project uses the mailing-list as main communication channel. In particular it defines three mailing-list one reserved to SBMs, administrators, while the last is open to all the Developer and User community.
The poll system¶The poll are organized by means of the mailing-list, anyone can cast its vote but only Developer and SBMs have binding vote. In general, poll elapse at least in one week, and it is a good practice to provide the poll lifetime with the email that announce the poll
Subject: [VOTE] Do you want this? (Last in 1 week)
The option for the poll are always positive (+1), neutral (+0), or negative (-1). In particular, negative vote should contains arguments which can start a discussion among the community for selection of a better proposal.
The result of a poll is:
- POSITIVE if at least a SB Member has sent a +1 or at least three Developer has sent a +1 and no -1 has been sent by the Developer community.
- NEGATIVE if at least a SB Member has sent a -1 or at least three Developers have sent a -1
- NEUTRAL if none of the above result is reach before the end of the poll.
In case of NEGATIVE or NEUTRAL results, the community can discuss the poll topic to modify it so that a new poll can be proposed for seeking a POSITIVE poll.
Promoting a User to Developer¶
When a user has been proven a fair knowledge to the project codebase (i.e. by sending some patches to the project), or to they send a big contribution to the project one of the Developers can propose the promotion of she/he to the Developer role. The Steering board must create a poll for promoting a User to Developer
Promoting a Developer to SB Member¶
When the a Developer has a good vision of the project future, a fair knowledge of its procedure, and a good activity on the project a SB Member may propose a poll to the Steering Board for promoting the Developer to the SB member.
Changing the governance¶
Changing the governance, that is any modification to this page, should be performed by means of a poll among the Steering Board
Creating a release¶
Before publishing a release a poll among the "Developer community" must be proposed and it has to complete with a POSITIVE result, after that the Developer can proceed with the publishing of the new release
Users community: the set of all the users
Developer community: all the people with binding vote thus only users with the role of Developer or SB Member