Our Client is a financial institution that has several customer and internal software applications. The software development teams have an existing platform and a framework to develop and build these applications and the operations team was responsible for the infrastructure and tools to release the applications. The overall platform had the tools to build, release, track issues and notify, and governance of the releases. Client had automated the tests and used continuous integration tools (Jenkins) to automate the code integration and the build of the applications.
The key challenge for the team was that the release process of a single application was taking around 10 to 15 days and multiple application releases made the management of the releases complex. The existing automation tools such as Jenkins helped Client accelerate some of the build and the release process, however, the overall orchestration process took significant time that included change management, issues analysis and decision making, issue resolution approval process, and rapid deployment of the code on to N+1 environments. In case of errors during the build process, rollback, issue resolution, approval, and redo, build were taking significant time. These integrations are at large done manually that created many dependencies and increased wait time. Deployment tickets were raised and the wait times were up to 24 to 48 hours to get the tickets resolved. In addition, there were no feedback and notifications to all the stakeholders. The resolution times sometimes took longer to analyze the issues during the build and make a decision to promote the build to N+1 environment.
Solution and Outcomes
To ensure continuous delivery, all the tools (including change management, release management, and ticket management) had to be integrated to optimize the DevOps model. To reduce wait time between promoting the build, a solution with automated validation of the errors was required. To manage multiple releases effectively and promote collaboration, a visual easy-to-use interface was required for orchestration. The solution involved analysis, design, and deployment of the tool along with the process changes that enabled complex multiple deliveries and orchestration of end-to-end application life cycle. Outcomes include:
- Reduced build and release time to less than a day from 10 to 15 days
- Increased deployments across multiple applications (more than 10 a day)
- Reduced wait time between build promotions
- Reduced dependencies and improved team collaboration
- Improved continuous delivery across multiple applications and environments
- Improved end-to-end process