Versions Compared

Key

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

...

Meeting Content (minutes / recording / slides / other):

Feb 12, 2019

Recording

Review of TCD Section 3.3.4

We discussed the following table, which expands on what’s already there in section 3.3.4, and adds…

  • Release Quality
    • as discussed in previous meeting – just moved it to its own column
  • Release Number
    • as discussed in previous meeting – I just took an initial stab at it from what I recall in that discussion
  • Deliverables / Exit Criteria
    • pulled in the “review metrics” from section 3.3.7.1 – 4… now that I’ve done it, I realize that maybe they should be Entry criteria rather than Deliverables / Exit Criteria

We got through the first two states this week... 

State

Description

Release Quality

Release Numbering

Deliverables / Exit Criteria

Proposal

Project doesn’t really exist yet, may not have real resources, but is proposed and is expected to be created due to business needs.

n/a

n/a

From 3.3.7.1 Incubation Review:

- Name of the project is appropriate (no trademark issues etc.); Proposed repository name is all lower-case without any special characters [a checkmark]

- Project contact name, company and email are defined and documented [presumably at least one proposer]

- Description of the project goal and its purpose are defined [a checkmark – use the templates]

- Scope and project plan are well defined [yes to scope, no to project plan]

Resources committed and available

Contributors identified

Initial list of committers identified (elected/proposed by initial contributors)

- Meets Akraino TSC Policies [need to define what these are?]

- Proposal has been socialized with potentially interested or affected projects and/or parties (e.g. presented at Community Meeting)

- Cross Project Dependencies (XPDs). In the case where a project will require changes in other projects and upstream dependencies, those projects are listed in the proposal, and a sponsoring developer in the project has been identified

- Tools have been identified and discussed with relevant partners (Linux Foundation, IT). Once the project passes the review, the tools chain must be created within one week. Tools encompass Configuration Management, CI/CD, Code Review, Testing, Team Wiki, End Users documentation (not exhaustive).

Incubation

Project has resources, but is recognized to be in the early stages of development.

Alpha (MVP) to Beta

0.1 to 0.x

From 3.3.7.2 Maturity Review:

- PTL & Committers are in place.

- Beta-Quality Release Achieved [we need to double-click on what the definition of Beta quality is – FOA, POC, end of release?]

- Successful participation in at least two releases: The project demonstrates stable output (code base, documents) within its history of releases in accordance with the release policy. [this implies that nothing will be Mature in Rel 1 – TSC should confirm that’s what they want]

- Architecture has been reviewed by the CI/CD Sub-Committee, TSC and presented to broader Akraino community [why have the CI/CD Sub-Committee review the architecture – the next point should cover this]

- Project Contributors have provided a validation lab [should be 2 labs] with exact configuration required by the project to connect with Akraino CI and demonstrate CD. The environment should be reviewed and endorsed by the CI/CD Sub-Committee.

- Acceptance Tests: who & when do we validate the acceptance tests for the BP?

-    Project is active and contributes to Akraino: The project demonstrates increasing number of commits and/or number of contributions across recent releases. Contributions are commits that have been to an Akraino repository project or related upstream project. Commit examples can be patches to update the requirements document of a project, code addition to an Akraino or upstream project repository, new test cases and so forth. [maybe create a template, or use something like Bitergia to get some consistent metrics coming into this review]

- Mature artifacts produced: The project demonstrates that the artifacts produced by the project are deployable (where applicable) and have been successfully deployed, configured and used by at least two independent end users typically, service providers who have publicly documented their support on the Akraino wiki and within the accompanying project documentation. [considering moving this to Mature, since it’s quite deterministic, and consider adding a point here that the project needs to state how many independent deployments it has]

Mature

Project is fully functioning and stable, has achieved successful releases.

Beta to GA

0.x to 1.0

From 3.3.7.3 Core Review:

-    Contributor diversity: The project demonstrates that it has a stable core team of contributors/committers which are affiliated to a set of at least three different companies. Core team members are those who have been active on the project for more than two releases, which means they were reviewing contributions to the project in Akraino Code Review and/or in the review-tool of the target upstream project(s).

-    Recognized value through other projects: The project demonstrates that its results are leveraged by other Akraino projects in an ongoing way, i.e. for at least the last two releases.

-    Successful integration tests (only applicable to projects which provide features/functionality): The project demonstrates that component tests and system-level tests have been implemented, that tests are used within the Akraino CI/CD test pipeline, and that tests bear successful results.

-    Stability, Security, Scalability and Performance levels have reached a high bar.

Also?

-    GA-quality release achieved, per Validation Feature Project

-    project has 2+ adopters  

Core

Project provides value to and receives interest from a broad audience. 

GA

1.0+

From 3.3.7.4 Termination Review:

-    Artifacts for Core state are complete and accepted

-    Core project artifacts are acceptable and meet the acceptance criteria

-    Project Team has the confidence that its artifacts can be used outside the Akraino community

-    Metrics for Termination review are available

Archived

Project can reach Archived state for multiple reasons.  Either project has successfully been completed and its artifacts provide business values, or project has been cancelled for unforeseen reasons (no value anymore, technical, etc.).

Project in any state can be Archived through a Termination Review.

Deprecated

1.0+

n/a

Feb 5, 2019

  • Attendees
    • Jim Einarsson, Jenny Koerv, Aaron Byrd, Andrew Wilkinson, Frank Zdarsky, Mike Hunter, Bill Zvonar
  • Release Cadence
    • we talked about proposing a cadence to the TSC
    • currently, there’s talk of a second release in 6 months, but not of a cadence, per se
    • we agreed to park this for later 
  • Proposed Changes from Last Process Sub-Committee Meeting
    • we agreed to get those to vote at the TSC
    • ACTION: Bill to get those on the agenda for the next TSC meeting
  • More Proposed Changes
    • Andrew asked about MVP re: Incubation - MVP as an "outcome" - doesn't seem right 
    • instead, it should say something like During incubation, an MVP-quality product will be demonstrated (Alpha).
    • discussion on Alpha/Beta/GA vs. Incubation/Mature/Core ensued 
    • we agreed on the following revised wording in section 3.3.4 (Project Lifecycle States and Reviews) of the TCD… 
      • Incubation
        • Project has resources, but is recognized to be in the early stages of development.  In the Incubation state, the goal is to progress the project from Alpha (MVP) quality to Beta quality.  The outcome is a minimum viable product (MVP) that demonstrates the value of the project and is a useful vehicle for collecting feedback, but is not expected to be used in production environments.
      • Mature
        • Project is fully functioning and stable, has achieved successful releases.  In the Mature state, the goal is to progress the project from Beta quality to GA quality.  
      • Core
        • Project provides value to and receives interest from a broad audience.  In the Core state, the project is at GA quality – additional functionality may be added in subsequent releases.
      • Archived
        • Project can reach Archived state for multiple reasons.  Either project has successfully been completed and its artifacts provide business values, or project has been cancelled for unforeseen reasons (no value anymore, technical, etc.).  Project in any state can be Archived through a Termination Review.  In the Archived state, the project is Deprecated - no further bug fixes, security updates, etc. 
    • ACTION: Bill to get this on the agenda for the next TSC meeting as well 
  • Checklists for Graduation 
    • further discussion on clarifying/simplifying the deliverables that should be delivered in each state, and the exit criteria for graduating from one state to another
    • stuff like security checklists, and other things that might be specific to a given BP Family
    • also should add language around release numbering - e.g. is "Mature" always Release 1? or Core? 
    • we agreed to start a table of such details
    • ACTION: Bill to start the table of States, Deliverables, etc.

...