Governance of the ONOS® project is intended to foster a technical meritocracy within the context of stewardship by the ONOS Chief Architect and the ON.Lab Board of Directors. ON.Lab is a nonprofit public benefit corporation, and provides engineering resources on behalf of the ONOS Project.
The goals of ONOS project governance are to:
The principles of ONOS governance are in line with these community values:
In addition, the over-arching governance principle is To act in the best interest of the broader community.
The ONOS project is governed by four steering teams and a board of directors. The four teams are the technical steering team, the use case team, the release management team, and the community team.
The board is a group of representatives from the partner organizations. It is governed by the Chairman of the Board (the “Chairman”). The board has the following roles and responsibilities:
The board leaves all technical decisions to the technical steering team in the spirit of open source technical meritocracy practice.
The governance document for the board can be found here.
Four steering teams govern the ONOS project.
Technical Steering Team
The technical steering team is responsible for all technical decisions in the project. They are responsible for the content and structure of the code base and for all technical priorities with respect to the code base. The ONOS chief architect (“Chief Architect”) is the team lead of the technical steering team. The ON.Lab board of directors reserves the right to remove and replace the Chief Architect at any time.
Use Case Steering Team
The use case steering team is responsible for prioritizing the use cases that will be developed. They are responsible for the prioritization of all use cases and for all capabilities within those use cases. The use case steering team provides the customer requirements to the ONOS technical team. The use case steering team is lead by an elected representative nominated from the group of members who are customers (in this case, service providers).
Release Management Team
The release management team owns the release management process and is responsible to make sure that releases happen on time with the highest quality. The release management team owns the responsibility for determining the priority of features targeted for a particular release. The release management team lead is elected by the voting community. The ON.Lab board of directors reserves the right to approve or veto this selection, and to appoint the team lead.
Community Steering Team
The community steering team is responsible for the care and feeding of the community. It is responsible to address community issues, to grow the community and to make sure that the community thrives. The community steering team lead is elected by the voting community. The ON.Lab board of directors reserves the right to approve or veto this selection, and to appoint the team lead.