Every year, the Accelerate State of DevOps Report examines the capabilities and practices that drive software delivery, operational, and organizational performance. The 2021 report from the DevOps Research and Assessment (DORA) team at Google Cloud has now been published and provides highlights from seven years of research and data from more than 32,000 professionals worldwide.
So what are those highlights? Where should IT teams be focusing their efforts on their journey to DevOps? And where does the database fit into the picture now that it’s a natural partner in the software development process alongside applications?
Let’s take a look.
Software delivery performance is vital to DevOps success
The DevOps Report uses four standard metrics to measure software delivery performance: deployment frequency, lead time for changes, time to restore service, and change failure rate. Looked at together, they provide a snapshot of how IT teams are faring on their journey to DevOps and can be used as a benchmark to identify Elite, High, Medium and Low performers.
Elite performers, for example, deploy changes multiple times a day, have a lead time for changes of less than one hour, take less than an hour to restore service when an incident occurs, and have a change failure rate of 0%-15%. Low performers take more than six months to deploy changes and restore service after an incident, and the change failure rate is 16%-30%.
That applies to database development too, with the report finding Elite performers 3.4 times more likely to have adopted database change management practices like version control. This aligns with Redgate’s 2021 State of Database DevOps report which found Elite performers are 3 times more likely to release database changes daily, and 3 times more likely to have fewer than 1% of database deployments requiring hot fixes.
Technical DevOps practices are key to improving performance
The research behind the DevOps Report shows that organizations which introduce the technical practices that enable continuous delivery are more likely to have processes that are high quality, low risk and cost effective.
Continuous testing and continuous integration, for example, are a strong indicator of successful continuous delivery. Early and frequent testing throughout the delivery process allows teams to develop faster and release value to customers sooner, and Elite performers are 3.7 times more likely to leverage it. Similarly, Elite performers are 5.8 times more likely to use continuous integration which triggers a build and a series of automated tests as soon as changes are committed.
Deployment automation enables faster and more efficient deployments, removes repetitive tasks, reduces the errors commonly found in manual deployments, and improves services and products at a quicker rate. While the DevOps Report recognizes that it doesn’t have to be implemented alongside continuous testing and integration, it states the greatest improvements are likely when the three practices are used together.
The management of database changes is specifically called out, with the report stating: Tracking changes through version control is a crucial part of writing and maintaining code, and for managing databases. As stated earlier, Elite performers are 3.4 times more likely to exercise database change management, with the report finding that collaboration, communication and transparency across teams is the key to its success.
Monitoring and observability practices also support continuous delivery by giving teams a better understanding of systems and decreasing the time it takes to identify and troubleshoot issues. This matches findings from Redgate’s 2020 State of Database Monitoring Report, which found that development teams using third-party monitoring tool reported a 28% reduction in Mean Time To Detection (MTTD) of deployment issues, and a 22% reduction in Mean Time To Recovery (MTTR).
Interestingly, the DevOps Report research indicates teams who adopt monitoring and observability practices spend more time coding, which is probably down to developers spending less time searching for the cause of issues. The report also finds that Elite performers are 4.1 times more likely to have solutions that incorporate observability into overall system health.
Multiple cloud usage is rising
The rise in cloud usage is widely known and the DevOps report confirms it with 56% of respondents now using a public cloud. What’s interesting, however, is the take-up of multi-cloud usage. 35% of respondents are using a single public cloud platform, while 21% are using multiple cloud platforms.
The top three reasons for doing so are to leverage the unique benefits of each provider, take advantage of the immediate and elastic availability, and provide an additional disaster recovery channel. Whatever the motivation, it raises concerns about how the multiple extra servers and instances in the cloud are being monitored in terms of performance as well as ongoing operating expenditure.
This goes back to the monitoring and observability practices which are necessary to support continuous delivery and indicates a proactive monitoring capability should be in place.
Security needs to shift left
The DevOps Report refers to Tenable’s 2020 Threat Landscape Retrospective Report which revealed that, in 2020, more than 22 billion records of confidential personal information or business data were exposed. It goes on to state that rather than being an afterthought, security should be integrated throughout the software development process and Elite performers are twice as likely to do so.
The practices it recommends are tests for security, security reviews, the use of pre-approved code, and including information security considerations during the planning and subsequent phases of software development.
The Accelerate State of DevOps 2021 report shines a clear light on why and how development teams can improve their software delivery performance. It also includes database change management as part of the conversation because deploying database changes is often the bottleneck in the development process. Not including the database in DevOps means it then slows down the delivery of value to customers.
That said, there are three ways to ensure the database fits into the promising picture the DevOps Report provides.
1. Think continuous delivery for database development
Just as the DevOps Report recommends introducing technical practices to enable continuous delivery for applications, so those same practices can be applied to database code. Start with version control, which the report advocates, and this then opens the door to including the database in continuous testing, continuous integration and automated deployments.
Redgate offers various solutions that can help and Grant Fritchey, Redgate DevOps Advocate and Microsoft MVP, provides some great advice on what to do next in his article, Three steps to get started with Database DevOps.
2. Monitor everything, everywhere
The move to the cloud brings added advantages and availability to software development teams. It also increases the number and variety of servers and instances that need to be monitored. This probably calls for a third party solution like SQL Monitor, which provides a complete and thorough overview of your server estate, enabling you to apply the monitoring and observability practice the DevOps Report recommends to every server and instance, whether on-premises or in the cloud.
3. Shift left your data security as well
The DevOps Report talks about application security which is the typical area organizations tend to focus their security efforts on first. Even with this in place, however, data breaches like the ones the report mentions still happen.
This is prompting many to turn to the ‘Zero Trust’ model, sometimes known as perimeterless security. Here, the castle and moat idea of security is gone – instead, trust no one and turn to technologies like multifactor authentication, data encryption, and giving users access to only the data they need to accomplish a particular task.
Redgate can help in this respect with the tools organizations need to catalog, mask and provision database environments for use in development and testing, so that they can strike the balance between data compliance and the business demands for speed and agility. See our data solution pages for more details.
Was this article helpful?