The Customer and Scope of Work
Our customer, a global transportation solutions provider has a prominent presence in the Europe. After acquiring a customer in the USA, they wanted an overhaul of their existing architectural system, based on physical servers. This would enable the continuous integration and continuous delivery of their application, which handled automated fare collections.
The scope of work with the USA customer involved handling new data regulations and working with a third-party company for end-user application development. We decided to adopt software as a service approach towards a new architectural system and guarantee continuous integration and continuous delivery by using a cloud-based system.
Environment Issues Were Slowing Us Down
A mature build and automation practice with efficient build management and deployment in local environments already existed for the project. However, environment creation was still a manual process, which required several days for provisioning physical virtual machine servers.
Our Approach to a Solution
The initial approach involved a lift-and-shift to replicate the existing physical deployment infrastructure onto AWS. Once done, we started identifying better alternatives for various processes on cloud. The purely-web components were identified and we decided to harness Elastic Beanstalks for hosting and maintaining them. Amazon Relational Database Service was our go-to choice for PostgreSql databases. Once the entire deployment diagram was planned and ready, we worked on bringing it to life.
After multiple rounds of sandboxing and proof-of-concepts we had an automated pipeline in place, employing the following toolsets:
The End-Result and Its Impact
With CloudFormation used as the basis for infrastructure as code, we were able to provision different environments on AWS. The revamped workflow ended up looking like this:
This automated pipeline has been useful for various production releases, with time to market reduced to just half a day. Provisioning of new environments was also much quicker, having been cut down from a few weeks to just a few hours for any new variants. By adopting a cloud-based infrastructure, we were also unshackled from the limitations of a physical server when it came to preparing new virtual machines. Environments could be constructed and deconstructed with limitless flexibility.
What the Future Holds
After the successful development of this environment, we’re looking towards further refining the automation pipeline. We’re now focusing on cost optimization, code sanity and coverage checks, and environment specific optimization to fully harness cloud-based environment and latest AWS products. The customer’s developers and testers have been receiving training sessions to familiarize themselves with the pipeline and have even contributed to enhancing it. With a clear vision and dedicated resources, we’ve enabled the DevOps journey of the customer’s product by effectively implementing it in their organization. This is crucial in enabling a shift towards completely serverless architecture, which will be necessary because the Digital ecosystem is constantly evolving and updating itself to achieve the same goal.
See how Sasken's expertise in DevOps is utilized for seamless delivery of DevOps based solutions.