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
project_lifecycle [2015/08/26 20:29]
Frank Brockners
project_lifecycle [2016/01/15 09:29]
Frank Brockners
Line 1: Line 1:
 +
 +
 +----
 +
 +====== !!OUTDATED!! ======
 +
 +**This wiki was just for discussion: 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 (Metrics to be verified through [[http://​projects.bitergia.com/​opnfv/​browser/​|OPNFV project metrics dashboard]]):​ +     * Can demonstrate stable output (code base, documents) ​within its history of releases in accordance with release policy 
-       ​Longevity: Project is active for > 6 months +     ​History of releases in accordance with release policy 
-       ​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. +     ​Fulfils ​the applicable metrics defined above
-       * Project continuously active: > 5 commits per months over the last 6 months+
    * 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 56: Line 76:
  
    * Integration proposal posted for two weeks    * Integration proposal posted for two weeks
-     Project is active (Metrics to be verified through [[http://​projects.bitergia.com/​opnfv/​browser/​|OPNFV ​project metrics ​dashboard]]):​ +   The project ​fulfils the applicable ​metrics from the set defined above and additionally the ones below:
-       * 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 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
      * Project shown to not break continuous development and integration environment      * Project shown to not break continuous development and integration environment
-   * History of releases in accordance with release policy 
-     * Project participated in > 1 release successfully 
    * TSC review and simple majority approval by voting TSC members    * 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)    * 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)
Line 76: 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 
-   * 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 
-     * 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