Red Hat introduced Red Hat Enterprise Linux 9.1and Red Hat Enterprise Linux 8.7.
Software deployment velocity directly impacts a business's bottom line — companies with higher release rates achieve 20% higher operating returns than those pushing updates less often. The development field is becoming increasingly more competitive, with elite and high performing teams making up two-thirds of DevOps teams for the first time in 2021. And the delta between higher performing teams and lower performing teams is growing. To keep up, companies need to innovate and improve their delivery cycle.
But speed alone is not enough to give companies a competitive advantage. Software functionality needs to satisfy customers' needs while also being stable and reliable because all it takes is one bad experience to turn users away from a brand. Once they are gone, they don't come back — PwC reports 32% of U.S. consumers say they won't give brands a second chance.
Checking all the necessary boxes for a successful software update requires a continual and fast feedback loop. Continuous deployment and progressive deployment power the feedback cycle, providing DevOps teams with the knowledge they need to improve quality and speed up delivery.
Continuous Deployment as the Engine of Faster Feedback
Continuous deployment (CD) automatically deploys code from testing into a production environment. The process makes releasing updates reliable, predictable and repeatable, and frees developers from spending time troubleshooting deployment issues. Eliminating mundane and easily-automated tasks creates more time for coding quality software and bug fixes and lightens developers' workload, improving work quality, creating a greater sense of job satisfaction, and preventing burnout.
By automating deployments, CD accelerates software development and delivery. The faster and more frequently software is released, the quicker teams can receive feedback to identify and fix issues and push out a new update.
Progressive Deployment Fuels the Feedback Loop
Progressive deployment works similarly to continuous deployment, with the added benefit of progressive rollouts. Using strategies like canary and blue/green, the automated process pushes new production code to a small number of users and gradually increases the audience size while continually gathering real usage data on the update's health.
The progressive deployment cycle includes five steps.
1. Code development and testing with continuous integration (CI).
2. Automated integration testing in a staging environment.
3. Progressive deployment to production.
4. Data gathering to determine the health of the software.
5. Wider delivery of the application, if everything is working correctly.
Steps four and five repeat until all users receive the update. The process can roll back the release to a previously designated version if feedback reveals a problem at any point during deployment. This strategy limits the blast radius of the update, minimizing the number of people who receive substandard software and preventing outages that cost companies between $500,000 to $5 million per hour.
The continuously incoming information during progressive deployment identifies issues quickly, allowing for remediation while maintaining customers' quality of service. Because developers don't need to troubleshoot deployment problems, they can focus on writing code.
Progressive deployment ensures properly functioning software at each stage of development and delivery with limited developer involvement. The enhanced feedback cycle provides the agility to pivot when unexpected problems arise and the foresight to identify evolving user needs. By automating deployment and data gathering, development teams have the knowledge and time to create and quickly deliver higher quality software with the performance, features and stability necessary to satisfy customers.