"New Package" and "Package Update" flows

StatusIN PROGRESS
Stakeholdersj David Jorm 
Outcome
Due date
OwnerJay Turner 

Background

While we are currently adding a number of new components to the CloudRouter Project, as well as updating existing components on a regular basis, the project is not following a formal process for either. We need to establish both processes (new and updates) and then instrument that process in JIRA.

 

Currently Proposed Flows

Initial Package Review Workflow

Open
-> Closed (Resolution: Withdrawn)
-> Closed (Resolution: Rejected)
-> Accepted

Accepted
-> Closed (Resolution: Rejected)
-> Under Review

Under Review
-> Closed (Resolution: Rejected)
-> Security Review

Security Review
-> Closed (Resolution: Rejected)
-> Pending

Pending
-> Closed (Resolution: Rejected)
-> Under Review
-> Building

Building
-> Pending
-> Testing

Testing
-> Pending
-> Ready for Release

Ready for Release
-> Under Review
-> Pending
-> Closed (Resolution: Released)

* Accepted is there to denote the difference between a request that someone has initially looked at and one that is just left sitting there.
* Pending is a sort of catch-all state where releases get booted back to if there is a technical problem - testing found a bug, or if there is a build issue.
* Under Review is where higher-level project decisions are made.

The difference between 'Withdrawn' and 'Rejected' is that the user who made the request withdraws it vs the project rejecting it.


 

Package Update Workflow:
Open
-> Closed (Resolution: Withdrawn)
-> Closed (Resolution: Rejected)
-> Accepted

Accepted
-> Closed (Resolution: Rejected)
-> Pending

Pending
-> Closed (Resolution: Rejected)
-> Under Review
-> Building

Building
-> Pending
-> Testing

Testing
-> Pending
-> Ready for Release

Ready for Release
-> Under Review
-> Pending
-> Closed (Resolution: Released)

I would also like to see an appropriate set of project roles configured so that only people with the appropriate role(s) can advance the workflow at each step. For example, the "security reviewer" role would be the only one that can advance from state "Security Review" to "Pending", etc.

Action items

  • Vet these two flows
  • Jay Turner implements the flows in JIRA
  • Everyone starts using them