CASE STUDY - Vodafone
Vodafone, a £40Bn turnover global mobile telecommunications company is undergoing an ambitious group-wide transformation to become a purely digital organisation. Vodafone worked with DevOpsGroup to implement a Continuous Delivery pipeline, which included a collaboration platform, version control software, Agile development tools and a Virtual Private Cloud within Amazon Web Services. Development times have seen a huge improvement, with nine month cycle times cut to just one month. New environments are now built quickly and inexpensively with a 97% reduction in lead time, and the team have clear visibility and control over their individual requirements.
Vodafone’s retail planning and stock control system is responsible for planning demand and supply for over 1,000 stores across the world.
The system calculates how many devices need to be procured and then sent out to each individual store.
Before the system was redesigned, it was being delivered via a traditional Waterfall approach: a list of change requirements would be bundled together in a single document and sent across to the company’s off-shore development partner to be actioned. At this stage the Applications team would lose visibility over the change requirements and had no control over the timescales or prioritisation of these actions.
To compound the issue, provisioning infrastructure was slowing down the whole process, holding up development and delaying the delivery of new features. The retail planning system was hosted on its own legacy infrastructure and it would take months to spin up a new environment.
As a result, application development was extremely slow, with an average nine-month cycle time. “By that stage requirements were becoming redundant before they were deployed and there was a lot of rework,” recalls Arnab Paul, the Principal Implementation Manager. “Few changes were being delivered and buy-in from key stakeholders within the business was disappearing fast.” At the time, the system was yet to be rolled out to several countries and it seemed impossible to meet each area’s specific requirements based on the current system.
We can now push individual requirements through the pipeline, build the right environment and test changes much, much faster. The release cycle has been reduced from 9 months to just 1, and we can make releases far more frequently.
The Application team considered several DevOps providers, and chose DevOpsGroup after it was recommended by a trusted partner.
DevOpsGroup began by analysing Vodafone’s software development lifecycle, from identifying requirements to testing and deployment. Measurements from this analysis clearly showed that the requirements capture and design process was the major bottleneck.
DevOpsGroup helped to develop a new DevOps Continuous Delivery pipeline to accelerate the development lifecycle by allowing requirements to pass through the system in small batches, independent from other requirements. DevOpsGroup also worked with all parties to make sure that Vodafone had the same visibility and control over each requirement, whether it was in-house or externally with its outsourced partner. A number of valuable tools were brought in to support the changes to requirements capture including:
Multiple automation tools were also introduced to further accelerate deployment:
The complex process of creating a new test environment has now been simplified down to a single click of a button in Jenkins. Terraform was used to create instances and security groups in AWS, according to configuration files in Git which allows the client to manage its infrastructure as code. The configuration management tool Ansible is then used to install and configure all necessary software including security patches.
The new processes, tools and infrastructure have had a dramatic e ect on turnaround times. “We can now push individual requirements through the pipeline, build the right environment and test changes much, much faster,” says Arnab Paul. “The release cycle has been reduced from nine months to just one month, and we can make releases far more frequently.”
The use of AWS makes it possible to create new environments in a fraction of the previous time – down to one hour from 5-6 weeks – and at a much lower cost, without the need to order new hardware and work through a laborious manual build process.
The continuing work on automating some elements of testing and development will also contribute signi cantly to faster deployment. The areas of testing that have already been automated have seen a fall in timescales of around two-thirds, and save about 24 man-hours every time the regression pack is run.
Vodafone’s outsourced partner now works with the same tools, timescales and level of visibility as its in-house developers. The Applications team can immediately see where any particular requirement is within the process, and change its prioritisation and ownership as needed.
Another bene t is that changes can be tracked from inception to deployment, helping to identify any problems much more quickly.
Thanks to better communication and collaboration, there has been a reduction in the amount of resources needed to make changes, and a large drop in wastage when moving from one phase to another.
“We’re spending less of our budget on the system and more on delivery,” says Mark Denby, Lead Architect. “Essentially, every pound we spend now gets more results.”
“In June 2015, we were achieving around 65% of business requirements. By early 2016, it was an average of around 90-92% and we have sometimes reached 100%,” notes Arnab Paul. “We can work much more closely with the business now, and get the results they want faster, which improves buy-in and reduces rework.”
Vodafone now has the system, process and toolset to work faster and more efficiently across the internal and external application teams. This has transformed the effectiveness of the development process, accelerating business buy-in and reducing the amount of resources needed. The Agile based working practices which were introduced have also increased product quality while significantly reducing costs.
The project has been so successful that the approach taken with the retail planning application has now become the company’s standard for automating the deployment of applications.
For organisations that use offshore development teams, the model that DevOpsGroup has implemented demonstrates the best method to increase the transparency of activity, improve the quality of development and ultimately accelerate digital change.