Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The activities of the Community are organized into sub-projects targeting different areas within the scope of Anuket including but not limited to .  These sub-projects might fall into several categories, specification and requirements documentation, code or testing functions.  The lifecycle of each of these types of sub-projects will vary depending on the nature of the sub-project.  These sub-project might include, but not be limited to requirements gathering, and specification documentation, 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.

Lifecycle overview
Anuket defines three maturity levels that each sub-project goes through during its lifecycle. The procedure of moving from one level to the next one is independent from the release process of Anuket and the pace depends on each individual sub-project.

...

Sub-project stateDescription
ProposalSub-project doesn’t really exist yet, may not have real resources, but is proposed and is expected to be created due to needs.
IncubationSub-project has resources, but is recognized to be nascent.
MatureSub-project is fully functioning realized and stable, has achieved successful releasesmight have on-going releases with new features or specifications over time.
ArchivedSub-project has been recognized as dead (could be for a variety of reasons, e.g. sub-project successfully accomplished its goals, sub-project failed, etc.), and has been archived as it’s it is no longer a going concernan on-going sub-project.

Reviews & Metrics

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

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

...

  • Proposal posted for two weeks:
    • Name of the sub-project is appropriate (no trademark issues etc.); Proposed repository name is all lower-case without any special characters
    • Sub-project contact name and email
    • Description is complete
    • Scope and sub-project plan is well defined
    • Reference of an existing NFV requirement or clear identification of a new requirement
    • Resources committed
    • At least three (3) contributors from different organisations identified
    • Initial list of committer identified (elected/proposed by initial contributors)
    • Meets Board of Directors (BoD) policy (e.g.: IPR)
    • Proposal has been socialized with potentially interested or affected sub-projects and/or parties
    • In the case where a sub-project will require changes in other sub-projects, those sub-projects are listed in the proposal, and a sponsoring developer in the sub-project has been identified
    • 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 Maturity Review

  • Graduation to mature state proposal posted for two weeks
  • Review metrics for creation maturity review:
    • Successful participation in releases: The sub-project demonstrates stable output (code base, documents or specifications) within its history of releases in accordance with the release policy.
    • Sub-project is active and contributes to Anuket: The sub-project demonstrates a stable or increasing number of contributions across recent release cycles. Contributions are commits which got merged to a repository of an Anuket sub-project or a related upstream sub-project. Commits can for example be patches to update the requirements document of a sub-project, code addition to an Anuket or upstream sub-project repository, new test cases and so forth.
    • Mature artifacts produced: The sub-project demonstrates that the artifacts produced by the sub-project are deployable (where applicable) and have been successfully deployed and/or used by users.
  • TSC review and simple majority approval by voting TSC members for graduation to the mature state

Termination Review

  • Termination proposal posted for two weeks
    • A termination review is initiated by the sub-project PTL, unless the PTL is unresponsive to attempts to contact them, or if the sub-project has not submitted an intent-to-participate notification for the two most recent releases. In that case, a sub-project contributor, a TSC member, or LF staff may initiate the termination review. If the termination review is initiated by someone other than the PTL, then the PTL should be copied, using their last known good email address, when the termination review is posted to the mailing list.
  • States reason for sub-project termination being sought
  • Termination proposal to include acceptable triggers for termination (e.g. protracted idleness, or request by the sub-project)
  • Estimates impact on other sub-projects and how to mitigate
  • Removal will not break Reference Platform builds
  • Location identified and links created for archived sub-project
  • Simple majority approval by voting TSC members
  • If no approval, remains in pre-reviewed state

...

  • Proposal posted for two weeks to the TSC mailing list:
    • Sub-project contact name and email
    • Identify any changes to the scope of the original sub-project proposal.
    • Justify reactivating the sub-project, including discussing why the sub-project was terminated and what has changed.
    • Explain what the sub-project intends to accomplish if it is reactivated.
    • Resources committed
    • Contributors identified
    • Initial list of committer identified (elected/proposed by initial contributors)
    • Passes IPR checkMeets Board of Directors (BoD) policy (e.g.: IPR)
    • Proposal has been socialized with potentially interested or affected sub-projects and/or parties
    • In the case where a sub-project will require changes in other sub-projects, those sub-projects are listed in the proposal, and a sponsoring developer in the sub-project has been identified
  • Review by TSC: Confirm that the proposal is complete and the above listed requirements are met.
  • Simple majority approval by voting TSC members

2.

...

4. Release Process

The Anuket TSC decided on the bi-annual release dates. Sub-projects shall publish a Release Plan at the beginning of a release cycle. The Release Plan shall have certain common tasks whose duration shall be fixed by the Anuket TSC:

...