This is an old revision of the document!
OPNFV Projects
The activities of the Community are organized into projects, which are targeting different areas within the scope of OPNFV including all the support functions to create and maintain the infrastructure and toolchains we use.
Project lifecycle overview
OPNFV defines four maturity levels that each project goes through during its lifecycle. The procedure of moving from one level to the next one is independent from the releases of OPNFV and the pace depends on each individual project.
The lifecycle of the projects is depicted on the following diagrams:
Project states
Project state | Description |
Proposal | The first step for a project is the project Proposal state. This phase has to include a clear project scope and plan. At this stage the project does not need to have a full list of resources, but the indication to work on having resource coverage and diversity for the work they are planning. |
Incubation | When a project moves to Incubation level, it has to have the proper resource coverage and a minimum diversity. At this stage the project is still considered to be nascent, the work following the Agile flow described in the development process can be started. |
Mature | In order to move to Mature level the project has to be considered as stable. It also has to successfully participate in multiple OPNFV releases. |
Integration | When a project reaches the top state, which is the Integration level it is considered to be integrated part of the OPNFV reference platform and/or ecosystem. |
Archive | Regardless of the level of the project it can happen during its lifecycle that the activities within it are stopped. The project can be archived because of failure or the lack of resource coverage, etc. or it can successfully accomplish its goals and considered to be finished. In either case the project should be removed from active state and has to be moved to the Archived stage. |
Reviews
Moving between levels can only be done by official review procedures.
Creation review
Proposal posted for two weeks:
Name (trademark) is okay
Project contact name and email
Description is complete
Scope and project plan is well defined
NFV requirement identified or new proposal prepared
Resources committed
Contributors identified
Committers to be elected by contributors
Meets BoD policy (IPR)
Proposal has been socialized with potentially interested or affected projects
Proposal email to TSC mailing list
Review by TSC: Confirm that the proposal is complete and the above listed requirements are met
Simple majority approval by voting TSC members
Graduation review
Integration review
Integration proposal posted for two weeks
-
Longevity: Project is active for > 12 months
Active, diverse community: > 5 active committers from two or more different companies. Active committer means that a committer has done more than 2 commits per month.
Project continuously active: > 5 commits per months over the last 6 months
Project is shown to be viable component of OPNFV Reference Platform
Project build and test scripts have been created to work with the rest of Platform build
Project shown to not break continuous development and integration environment
History of releases in accordance with release policy
TSC review and simple majority approval by voting TSC members
Integration review assesses projects based on the metrics of the graduation review. In addition the project is required to have confirmed longevity (project is active for at least one year, participates in release activities, and has release plans outlined to stay active for at least another year)
Termination review
Termination proposal posted for two weeks
States reason for project termination being sought
Termination proposal to include acceptable triggers for termination
(e.g. protracted idleness, or request by the project)
Estimates impact on other projects and how to mitigate
Removal will not break Reference Platform builds
Location identified and links created for archived projec
Simple majority approval by voting TSC members
If no approval, remains in pre-reviewed state
Metrics
Longevity of the project
Active, diverse community
Project follows OPNFV release cadence
Requirements have resulted in corresponding implementations
Comprehensiveness and maturity of the artifacts the project produces including contributions/code to partner/upstream projects.
Mature testing/integration success for defined environments (OPNFV and/or partner/upstream projects)
Community
TSC elections
OPNFV TSC has a limited number of representatives. The members are elected from two main groups one of which is the nominated people from platinum member companies and the other is the group of Project Team Leads (PTLs).
The mandate of the members is limited in time. The TSC members are elected from the two group of candidates by voting. Any active community member can vote on the candidates.