DEV Community

Discussion on: 🚢 When do you ship? (Technical or Business/Product reasons acceptable)

Collapse
 
itsasine profile image
ItsASine (Kayla)

Roughly once a quarter, though we implement individual features such that in theory, we could go to prod whenever without breaking things.

The motivation behind this is purely business. Since it is a very large healthcare organization, we need at least 2 weeks of process and paperwork and approvals to put any code into production. And our client agreements require a week or two heads up before putting out new features so they can get their support and training docs ready for it, too.

Our release checklist is... quite large. About a dozen tasks for QA and product, two dozen for dev, and a dozen for architecture.

Collapse
 
waylonwalker profile image
Waylon Walker

What kind of things are in the checklist? Are they purely technical or are some more business/product manager focused? Are they things that can be checked by automated testing?

Collapse
 
itsasine profile image
ItsASine (Kayla) • Edited

It's all documentation.

Are the licenses of dependencies all on the up and up? Did you run security scans? Did you run automated tests? Did you run manual tests? Did you notify internal clients? Did you notify external clients? Are release notes done? Are bugs prioritized for the release done? Has design signed off on the release features? Are the epics in Jira finished for the release? Is the firewall configured correctly? Are the architecture settings correct for the level of data the application has (PHI, PII, PCI, etc)? etc etc etc

Almost every item links further to the Jira ticket to do that thing (Did you dry run the release? <link to Jira issue for deploying to stage>) and/or a link to the Confluence doc that elaborates more (Did you do the internal write up for testing the release candidate? <link to big ol' testing summary doc> <link to Jira issue for regression testing>)

The act of doing the things can be automated (especially the more on the nose stuff like did you run automated e2e or did you audit dependency vulnerabilities) but the write-ups and forms for the results to put in the checklist still take time. We used to joke that regression testing takes an hour while filling out the test summary form with what we did in that hour took 2 days.