With half of enterprises reporting that they have implemented and are looking to expand DevOps within the enterprise–according to Forrester Research’s Global DevOps Benchmark–it’s important to follow those steps sure to lead to success. We’ve been sharing details behind a proven seven step process, and today we’ll highlight how an organization which has set the foundation for transformation operates in the world of DevOps at scale.
What is the Continuous Innovation Process?
To fully achieve enterprise DevOps at scale, a continuous innovation process is critical. This DevOps process embeds within the organization a culture of ongoing evolution and updates across Development, Operations, Security, and Business Units. You may be familiar with this DevOps loop that illustrates how continuous innovation flows across disciplines.
Beyond transformation: Continuous innovation is an ongoing evolution of ideas, products, and processes.
Let’s analyze how this works for a typical organization today.
In the planning phase, business owners consume the data that’s available to them to examine what changes might be needed or desired in a given product in order to take it to the next level. The product owners then work with developers as an agile scrum team and update the product backlog, and plan the next sprint. The changes are tested for quality, ideally continuously through automated testing. Software is then released and deployed. As the application runs, its behavior is monitored and the data is fed back into the planning phase to prepare for the next iteration. The faster that this loop is executed, the more innovative an organization is considered.
The proposed DevOps at scale framework enables increased innovation through increased speed at all stages. This is the only way that high performers like Amazon are able to release 136,000 deployments per day.
Specifically, in this DevOps model, we see a virtuous cycle where the following all happen continuously and at ever-increasing speeds:
- Development and Operations teams use patterns to deploy new applications with self-service. User stories that can be implemented by just changing the business logic (aka software) and not the pattern, are thus very efficient. (See our blog post on Pattern Development for additional background.)
- If a user story requires a change to the pattern, development teams can control pattern variables to make minor adjustments, e.g., the DB version autonomously and the new changes get deployed via an automated process.
- If Development and Operations teams requires a full-stack change in the pattern, e.g., a user story adds a geo-search feature to a website which requires adding a service like ElasticSearch to the infrastructure. This requires a change to the pattern in use by the application. We have a defined process to handle pattern changes. The requesting team updates the pattern (written as infrastructure as code) and creates a pull request in the Code repo for the CoE to approve/reject. The CoE develops and/or certifies new pattern change requests from InfoSecurity, Operations and Development. If the pull request is accepted, the app is deployed with the newly updated pattern. This enables autonomy with governance.
- In addition to pattern certification, the CoE provides ongoing Well Architected Reviews and education to relevant teams for technical debt identification. Well Architected Reviews should assess infrastructure health across five pillars: security, reliability, cost optimization, performance efficiency, and operational excellence. This process combined with effective monitoring shall flag technical debt — both that caused through business as usual changes and through newly released apps or services.
- The CoE also continues to evolve the DevOps platform in place.
Continuous Innovation Process in Action
We have the pleasure of working with a West Texas manufacturer of consumer goods who has employed continuous innovation and DevOps at scale. To highlight just one of the many ways continuous innovation works at this manufacturer, the company’s marketing team runs an ecommerce site which they actively monitor for both technical issues and consumer behavior trends. The monitoring informs them of which goods sell well on the ecommerce site and which do not; which content converts; along with information about broken links, available disk space and more. They fold all this data into their loop of continuous innovation to plan for traffic spikes, capture customer interest and increase sales. The technical team (Development and Operations) takes the backlog created by the Product Owners and implements the changes – both large and small. All the while, data continues to get collected to feed in to the next iteration, aka, sprint.
With the capability to release code and full infrastructure, your team can react quickly, positively impacting the business position relative to internal efficiency and productivity — and the market as a whole. To learn how you can get started with DevOps at scale with a proven seven step process, catch the whole blog series, starting here: Enterprise DevOps Scale: Seven Steps to Success.
Post Date: 10/30/2018