User Tools

Site Tools


project_lifecycle

!!OUTDATED!!

This wiki was just for discussion: For the latest up to date version of the document see the OPNFV project lifecycle web page.


OPNFV Projects

The activities of the Community are organized into projects targeting different areas within the scope of OPNFV including but not limited to; development of upstream code, integration of platform components, support functions to create and maintain the infrastructure and the development and maintenance of the 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 release process 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 Project doesn’t really exist yet, may not have real resources, but is proposed and is expected to be created due to needs.
Incubation Project has resources, but is recognized to be nascent.
Mature Project is fully functioning and stable, has achieved successful releases.
Integration The highest state a project can reach is Integration. Project is a component of the OPNFV reference platform.
Archived Project has been recognized as dead (could be for a variety of reasons, e.g. project successfully accomplished its goals, project failed, etc.), and has been archived as it's no longer a going concern.

Reviews & Metrics

Project promotion, and demotion, across states can only be done by TSC review and voting. During the reviews the candidate projects are evaluated based on predefined metrics and KPIs. The target numbers may vary for the different levels.

  • Longevity of the project
  • Project follows OPNFV release cadence
  • Requirements have resulted in corresponding implementations
    • Comprehensiveness and maturity of the artifacts (code, test cases, documentation) the project produces including contributions/code to partner/upstream projects where applicable
    • Mature testing/integration success for defined environments (OPNFV and/or partner/upstream projects, which is applicable or both)
  • Community
    • Size and diversity of the active community (number and diversity of people contributing)

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

  • Graduation proposal posted for two weeks
    • Can demonstrate stable output (code base, documents) within its history of releases in accordance with release policy
    • History of releases in accordance with release policy
    • Fulfils the applicable metrics defined above
  • TSC review and simple majority approval by voting TSC members for graduation
    • Review metrics are defined in order to have a common set of criteria each project can target and be evaluated against in a unified manner

Integration review

  • Integration proposal posted for two weeks
  • The project fulfils the applicable metrics from the set defined above and additionally the ones below:
    • 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
  • 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 the archived project
  • Simple majority approval by voting TSC members
  • If no approval, remains in pre-reviewed state
project_lifecycle.txt · Last modified: 2016/01/15 09:29 by Frank Brockners