Jump to: navigation, search

Difference between revisions of "StarlingX/Feature Development Process"

(Feature Proposal)
Line 50: Line 50:
== References ==
== References ==
* [https://docs.openstack.org/project-team-guide/release-management.html Openstack Release Management]
* [https://docs.openstack.org/project-team-guide/release-management.html Openstack Release Management]
* [StarlingX/Release_Plan|StarlingX Release Planning]
* [[StarlingX/Release_Plan|StarlingX Release Planning Process]]

Revision as of 15:58, 12 September 2018

This is Work In Progress -- still needs review and agreement by the team

StarlingX Feature Handling Process


StarlingX Feature Lifecycle / Process

Feature Proposal

  • Any contributor in the community can propose a feature for inclusion in StarlingX at any time.
    • However, the majority of features will be reviewed/accepted during a specific release planning phase per release.
    • If the contributor is targeting a particular release, they should align their proposal/spec review within the planning period
  • To start, the contributor can propose the feature by creating a Story in the StarlingX StoryBoard
  • The contributor can then reach out to the StarlingX TSC / TLs / mailing list to socialize the feature and get initial feedback
  • The contributor proceeds to create a feature spec and gerrit review, using the StarlingX Feature Spec Template
  • The contributor creates a gerrit review for the feature spec. StarlingX feature specs are stored in gerrit at starlingx/stx-specs: <add link here>

Feature Spec Review / Scheduling

  • Feature Specs are reviewed by the StarlingX TSC / Technical Leads using gerrit
  • As already noted above, the majority of features will be reviewed during a specific release planning phase per release. However, smaller features/enhancements can be reviewed and scheduled outside of this time period.
  • Feature Acceptance Criteria
    • TBD
  • Once a feature is accepted based on the technical review:
    • A target StarlingX release is proposed for the feature. The feature story in Story Board will be tagged with the target release by the StarlingX Release Prime.
    • The feature is assigned to a sub-project or cross-project team for development.
      • For large scope features/initiatives, a cross-project team may be put together from the interested community contributors
    • The feature resourcing is secured.
      • It is often expected that the person/group who proposed the feature are willing to provide the resourcing to develop it.

Feature Development

  • The development team breaks down the feature into tasks and starts development/testing
    • Tasks are added under the feature story in Story Board.
    • Ideally, want to be able to have a hierarchy of stories ...especially for big features/initiatives
  • For large scope features, it is recommended to use a feature branch <ToDo: add some info on how to request/create a feature branch>
  • <ToDo: add more info on regular submissions, automated testing, etc>

Feature Verification

  • TBD

Related Topics

  • What's a feature and what's a small enhancement?
  • Are tools/build/infrastructure features which should follow the same process above? Ghada says yes :)
  • Need some guidelines for story board creation and triage

StarlingX Story Board Queries