If implementing a DevOps culture is still on your organisation’s wish-list, now is the time to prioritise it. Those companies who have already embraced the approach are in a far stronger position to respond with the necessary speed and agility demanded by today’s rapidly-changing operating environments. With the world’s growing dependence on digital technology, DevOps has fast-become a critical component of the most successful, lean businesses.
One particular element of DevOps that can significantly progress the pace and quality of software releases is Continuous Delivery. It is also an area that many businesses struggle to implement correctly. It is worth noting that while having a DevOps culture may pave the way for Continuous Delivery principles, it won’t miraculously transform the IT architecture. DevOps is about creating an environment that fosters collaboration, communication and transparency. Whereas Continuous Delivery is a set of patterns and best practices that enables software to be released to production at any time.
We only have to look at the likes of Amazon, Facebook and Netflix to see how a Continuous Delivery approach can lead to business success. Put simply, the accelerated development cycle means these brands can outperform their competitors by delivering a better quality service and experience to their customers. Why? Because their software is built in such a way that it can be released safely and quickly to production at any time.
These may be large-scale examples but a Continuous Delivery approach can be replicated and applied in companies of any size. By harnessing the right tools and technology every business can effectively create production-ready software. Development teams are evolving and agile working is being redefined. The sizeable weekly, monthly or even quarterly release cycles that were once considered valuable are being supplemented with smaller, daily production deployments to meet the end-users’ need for speed. Or in Amazon’s case, it’s actually thousands of times a day. On average the company’s engineers deploy code every 11.7 seconds since Amazon moved to its own cloud.
When using Continuous Delivery principles organisations focus their efforts on ensuring the software is deployable throughout its lifecycle. However, it is not all about speed of release – quality and stability have to be built in. What is vital in a Continuous Delivery approach is using a clearly defined Delivery Pipeline and automating multiple stages of the delivery process. The process needs to be both repeatable and reliable and automation in the test, tool and feedback areas will save time and eliminate human intervention. When a pipeline stage succeeds it should automatically move on until a stage fails, at which point everyone should stop, focus and fix the build to allow a quick and smooth progression.
A clearly defined Delivery Pipeline will stop the build before customers are impacted. As smaller changes are being made, it reduces the risk and is easier to fix if a problem does arise. The result is quality software-on-demand, so teams can deploy any version of the software into any environment with just a single command.
At Accelerate, we have seen first-hand many examples of how a Continuous Delivery approach can help businesses to deliver better quality software, faster. One company, Alfresco, an enterprise open source company whose software powers the work of more than 11 million people around the globe, recently embraced automation to reduce waste in its software delivery pipeline and drive efficiency.
We worked in collaboration with Alfresco’s engineering team to implement a scalable, end to end delivery process by defining and architecting the company’s test automation, provisioning and software delivery model. By seeking external expertise, the company has dramatically reduced the time, effort and cost taken to release software. Test cycle times have been reduced from weeks to hours and test coverage increased. In addition, automated environment provisioning has reduced previous manual efforts of days to minutes.
Mark Heath, Alfresco’s then VP Product Development said: “It has added huge value to the way we deliver software to our customers. Accelerate supported the design and managed the development of our rigorous testing and delivery framework and we will undoubtedly continue to reap the benefits as the business evolves in the future.”
If you would like any further information on improving software quality and ensuring delivery efficiency, contact us.