User Tools

Site Tools


project_lifecycle

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
project_lifecycle [2015/08/26 11:48]
Ildiko Vancsa [Reviews]
project_lifecycle [2016/01/15 08:03]
Ildiko Vancsa
Line 1: Line 1:
 +
 +
 +----
 +
 +**DRAFT-DRAFT-DRAFT - Proposal for a revision of the OPNFV project lifecycle document - DRAFT-DRAFT-DRAFT**
 +
 +For the latest up to date version of the document see the [[https://​www.opnfv.org/​developers/​technical-project-governance/​project-lifecycle | OPNFV project lifecycle web page]].
 +
 +----
 +
 ===== OPNFV Projects ===== ===== 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.+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 ==== ==== 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.+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: The lifecycle of the projects is depicted on the following diagrams:
Line 15: Line 25:
 === Project states === === Project states ===
  
-^ Project state ^ Description ^ +^ 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. | +| 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 ​   When a project moves to Incubation levelit 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. | +| Incubation ​    ​Project has resourcesbut is recognized ​to be nascent. ​                                                                                                                                                   
-| 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. | +| Mature ​        ​Project is fully functioning and stablehas achieved successful ​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. | +| Integration ​   The highest state a project ​can reach is Integration. Project ​is a component ​of the OPNFV reference platform. ​                                                                                             
-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 coverageetcor it can successfully ​accomplish ​its goals and considered to be finishedIn either case the project should be removed from active state and has to be moved to the Archived stage. |+Archived ​      | Project has been recognized as dead (could ​be for a variety ​of reasonse.g. project ​successfully ​accomplished ​its goals, project failed, etc.), and has been archived as it's no longer a going concern |
  
-==== Reviews ==== 
  
-Moving between levels ​can only be done by official ​review ​procedures.+ 
 + 
 +==== 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 === === Creation review ===
Line 46: Line 67:
  
    * Graduation proposal posted for two weeks    * Graduation proposal posted for two weeks
-     * Can demonstrate stable output (code base, documents) ​per defined metrics below +     * Can demonstrate stable output (code base, documents) ​within its history of releases in accordance with release policy
-     * Active, diverse community+
      * 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    * 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      * 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
Line 55: Line 76:
  
    * Integration proposal posted for two weeks    * 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 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 build and test scripts have been created to work with the rest of Platform build
Line 69: Line 91:
      * Estimates impact on other projects and how to mitigate      * Estimates impact on other projects and how to mitigate
      * Removal will not break Reference Platform builds      * Removal will not break Reference Platform builds
-     * Location identified and links created for archived ​projec+     * Location identified and links created for the archived ​project
    * Simple majority approval by voting TSC members    * Simple majority approval by voting TSC members
    * If no approval, remains in pre-reviewed state    * If no approval, remains in pre-reviewed state
  
-=== Metrics === 
- 
-   * Longevity of the project 
-   * 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 
-     * Size and diversity of the active community (number and diversity of people contributing) 
- 
-==== 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. 
  
project_lifecycle.txt · Last modified: 2016/01/15 09:29 by Frank Brockners