The results were extremely encouraging: with a relatively small number of teams and applications included, the project had already saved over 1,800 man hours annually.
Look at the Big Picture, Focus on the Biggest Pain for the Biggest Impact
Priolo approached automation by looking at it from the perspective of identifying the opportunities for big wins and focusing on those. The goal wasn’t to fix local processes that were broken along the way, but rather to discern pain points and give the most bang for the buck.
Being a small team, Priolo didn’t want to have automation creep—ad-hoc fixing of different processes for various teams to address specific scenarios. The focus had to have been on reusability, system-level view, and the ability to scale. These would allow his efforts to have the most impact for the entire organization, rather than achieving only local optimizations, which may not amount to much in the large scheme of things (- or – may just be moving the bottlenecks to other areas in the pipelines.)
Therefore, Urban Science focused on three different pipeline models that would be applicable for the vast majority of use cases. By doubling down on those three, Urban Science can service the majority of teams and application, giving them just about everything they need.
Bring Others on Board!
While the initial efforts to implement automation started off with just that half dozen teams buying-in, Urban Science now has over 70 teams taking advantage of that model. Depending on the specific application and use case, some teams have chosen to release monthly, weekly, and even multiple times a day.
These three pipeline models and the standardization across teams allow the entire organization to become more agile, and increase product quality and release velocity and throughput. This sort of release cadence and speed was just not possible with trying to schedule times for manually manage all the processes and environments configurations involved in the delivery pipeline.
Think ‘Process As Code’
After modeling the key release pipelines and standardizing their processes, Urban Science turned their focus on treating their Process as Code. Using a technology that enabled them to essentially export their pipeline models and all related automation as code, they were able to have their DevOps processes themselves be programmable. This meant that they could be versioned, reused, and stored in their source code repository—along with their application code and environment configuration.
With the process itself being codified, Urban Science could more easily onboard new applications and teams, update their code to support additional use cases, and more easily extend certain pipelines for specific needs—achieving predictable, repeatable, releases processes across the organization.
Do It End-To-End
To accomplish all this, Urban Science leveraged Electric Flow—an end-to-end DevOps Release Automation platform from Electric Cloud, to simplify build, test, deployment, and release of multi-tiered applications.
A successful DevOps transformation takes the right people and culture, the right processes, and also the right tooling. From a tooling perspective, it was crucial for Urban Science to have a unified, single platform that can support their entire end-to-end delivery process, across all teams, and be able to orchestrate all the point tools, workflows, and environments that are part of the process.
This ensured the ability to standardize their pipelines across teams and applications, and scale to support the entire organization (rather than cobble together a different chain of tools or snowflake configurations for various tasks). In addition, this provided both Development and IT shared control and visibility into their software pipeline, across development, testing, and packaging stages.
To ensure compliance and organizational control, the pipeline also supports both automated and manual approval gates as code is promoted to further stages along the pipelines and into higher environments. (For example, code can be promoted automatically upon passing a battery of test, or await a confirmation from a supervisor via the platform, before proceeding to the next stage.)
Continuous Improvement and the Bottom Line:
By adapting new ways of thinking and new technology solutions, Urban Science is now able to drive their software production within a Release Pipeline model. In this approach, all the tasks and workflows throughout the pipeline—from code commit to Release into Production—are being completely automated and standardized as much as possible across teams.
This has had a great impact on the business.
DevOps and CD are essentially a journey along a path to continuously optimize your software delivery, to improve IT and organizational performance. Automating the end-to-end Release pipeline is what “greases the wheels” for Urban Science software innovation. Now, the teams are freed to focus on developing great features, rather than on building ad-hoc workflows or doing manual work to manage the path that the code has to go through until it is ready to be released to end users.
DevOps release automation and Continuous Delivery practices have enabled Urban Science to accelerate their software delivery—saving time, lowering costs, and increasing productivity. They are now able to better serve their automotive clients—building new and innovative solutions that are changing the way auto manufacturers produce, sell, and services their cars.
Urban Science Achieved:
- Faster and more frequent deployments. Urban Science went from 12 deployments per week to 40 deployments a week.
- Fewer person resources required. Manual processes replaced by automation reduced person resources needed for deployment by 78%.
- Fewer process errors. Tedious, error-prone manual operations have been eliminated, improving predictability and reliability, and reducing the number of deployments needed.
- Better software quality. Automated deployments mean more time is spent testing instead of on the deploy process.
For a deeper dive into this story, watch the video replay of Marc Priolo talking about his experience.