With development teams working on 3-4 releases in parallel and releasing at least once a quarter, we often see release overhead consuming an average of 20-30% of development and operations resources. Enterprises releasing every month, week, or even day suffer from even larger overhead. Here is what you can do to free up most of these 20-30% for the faster creation of new critical software features: to enhance customer value:
11 Golden Release Rules for DevOps
- Involve developers, sales, pre-sales, support engineers, operators, and of course executives in determining quality metrics and release gates.
- Ensure that all quality metrics can be quantitatively measured.
- Provide role-specific health dashboards to all of the above stakeholder groups.
- Do not accept any excuses for any red numbers on the dashboard. If it is red the issue has to be addressed or the metric is invalid and must be changed immediately.
- All builds, without exception, must be checked in and tested daily. "Build success" must be part of the DevOps dashboard. Absolutely no exceptions.
- Test automation has to be part of the DevOps process and automatically kick off after the build.
- Compliance and security scans must happen daily after code-checking. These scans must be defined and monitored by the responsible security and compliance staff.
- Pre-sales, sales, support, and IT have to be part of all gate reviews.
- Pre-sales, sales, support, and IT must be able to create automated sandbox environments within less than 24 hours.
- Automate all release workflows, machine to machine and machine to human.
- No exceptions!
You notice, I didn't mention the term "containers" even once, however, containers are an infrastructure technology that can help implementing the above rules. For details, please take a look at the #EMATop3 Research Report at www.ematop3.com.