Project Steering Committee Guide
An outline of the general PSC members responsibilities
This document is targeted at OCA PSC members. A Project Steering Committee (PSC) is responsible for the proper management and oversight of an OCA project, and reports directly to the Board.
If you are not yet a PSC member but are interested in joining one then please start at the Organization page.
For more information on how you can help, see Contribute page.
This Project Steering Committee Guide outlines the general responsibilities of PSC members in managing their projects.
What is a PSC?
A Project Steering Committee (PSC) is a committee in charge of managing projects for the Odoo Community Association (OCA). A project hosted in the OCA is usually a development project around Odoo or related technology gathering a team of developers, functional consultants or translators. The PSC is the vehicle through which decision making power and responsibility for oversight is devolved to developers.
- The PSC are established by resolution of the Board, to be responsible for the active management of one or more communities, which are also identified by resolution of the Board. Each PSC consists of at least one OCA representative, member of the OCA, and contributors.
- The OCA representative is appointed by the Board and is an officer of the OCA. The OCA representative has primary responsibility to the Board, and has the power to establish rules and procedures for the day to day management of the communities for which the PSC is responsible, including the composition of the PSC itself.
The OCA Bylaws (section V.C) define a PSC and the position of the OCA representative. The role of the PSC from an association perspective is oversight.
- The main role of the PSC is not to code - but to ensure that all legal issues are addressed, that procedures are followed, and that each and every release is the product of the community as a whole. That is key to our litigation protection mechanisms.
- Secondly, the role of the PSC is to further the long term development and health of the community as a whole, and to ensure that balanced and wide scale peer review and collaboration do happen. The OCA encourages large teams to promote efficient collaboration and avoid community centered around only a few individuals. We believe that this is detrimental to quality, stability, and robustness of both code and long term social structures.
Your role at the OCA is one assigned to you personally, and is bestowed on you by your peers. It is not tied to your job, current employer or company.
However, those on the PSC are kept to a higher standard. As PSC, and OCA representative in particular, you are the eyes and ears of the OCA Board, it is you that we rely on and need to trust to provide legal oversight. The board has the faculty to terminate a PSC or OCA representative at any time by resolution.
What is the PSC responsible for ?
Feature curation (is this generic/relevant enough, is this the best project to host it)
PR & Issue housekeeping, provide guidance
Welcoming and guiding new PSC members
Deciding on the process to become a PSC member or ban a PSC member
Doing the administrative tasks on Github (manage team, labels, milestones, branches)
Publishing the project roadmap
Enforcing its contributors to follow the OCA Conventions
Encouraging contributors collaboration and communication
Comply With Legal Affairs Policies
PSCs shall ensure that the work on their project and the code that they produce complies with relevant legal policies, including appropriately using the copyrights correctly, and handling the OCA conventions properly.
Conduct Project Business On Mailing Lists
All technical decisions and the great majority of the work of any PSC should be done on PCS public mailing lists or contributors@. Decisions shall not be made in other mediums, like IRC or at conferences; rather discussions from such places must be brought back to the appropriate mailing list for all participants to discuss and decide upon.
All PSCs shall restrict their communication on private emails to only issues that cannot be discussed in public such as discussion of:
pre-disclosure security problems
pre-agreement discussions with third parties that require confidentiality
nominees for project, project committee or Foundation membership
personal conflicts among project personnel
Where Should Project Business Be Discussed?
The OCA will provide one public and open mailing list to each PSC. This allows the public to read about the direction of the project and to offer early feedbacks.
Balancing confidentiality and public discussion
We endeavour to conduct as much discussion in public as possible. This encourages openness, provides a public record, and stimulates the broader community.
However private discussions are sometimes necessary. Please use personal email addresses for that purpose. You must never divulge private information in public without the express permission of the list. Also never copy an email between private and public lists (no Cc). Such an event would go beyond the normal need for email etiquette and be a serious breach of confidence. It could have serious ramifications, cause unnecessary confusion and ill-informed discussion.
We've decided to greet a new PSC member. Now what?
It is the responsibility of each PSC to guide their new member, ensure that they have access to the proper resources, advise them about relevant OCA documentation and generally ease their way.
The OCA Representative will add the new member to the PSC on http://odoo-community.org and check if he is subscribed to the PSC mailing list. By doing so, the new member will get the proper rights to the GitHub repositories managed by the PSC.
A PSC member wishes to be resign/go emeritus. Now what?
The OCA does not have any formal concept for an "emeritus PSC member" - an individual is either a member of the PSC or not. Projects are free to establish their own policies for designating members of the PSC who are inactive but remain on the PSC, or those who were formerly on the PSC and have resigned.
Should the PSC remove inactive members?
Projects can establish their own policy on handling inactive members, as long as it is applied consistently. It is not a problem to retain members of the PSC who have become inactive, and it can make it easier for them to stay in touch with the project if they choose to become active again. Typically, PSC members who are no longer able to participate will resign from the PSC. However, if a PSC chooses to exclude one of its members, then it must request the Board to make that decision (which is typically done with a resolution at the next Board meeting). The request to the Board's mailing list should provide a rationale for the decision.
What are the duties of the OCA representative and how to perform them?
As explained before, the OCA Representative is the eyes and ears of the OCA Board and he has access to the OCA Odoo instance (http://odoo-community.org).
As such, the OCA Representative:
- Reports PSC progress to the OCA Board every year and any issues requiring the Board's attention.
- Is in charge of managing every tasks performed on http://odoo-community.org : CLA, mailing list subscription, PSC membership, etc.
- Is available to assist the Board to build the OCA Monthly Newsletter and the OCA Activity Report for the Annual General Assembly.
- Is subscribed to the email@example.com mailing list to seek advices from his peers.
- Is an OCA member and must maintain his OCA membership to remain OCA Representative.
Changing the OCA representative
If the PSC decides to change his OCA Representative, the PSC must propose a replacement and contact the Board which will approve or reject the request before the change can officially take place.