Healthesystems

Healthesystems Adopts CI and CD to Accelerate Development Practices

SUMMARY

Healthesystems speeds up software delivery with CloudBees Jenkins solutions to enable pharmacy benefit management and ancillary benefit program innovation 

CHALLENGE

Expedite software development and increase efficiencies that will allow existing resources to focus on innovation

SOLUTION

Use the CloudBees Jenkins Platform to enable agile development with CI and optimize build and deployment automation processes

RESULTS

» Deployment times cut from hours to minutes

» Sprint durations reduced by 33%

» Deployment workload halved

PRODUCTS

» CloudBees® Jenkins Platform™

As part of its continuous modernization efforts, Healthesystems launched an effort to enhance its software development practices and build upon the successful track record of its PBM and ABM solutions. As part of this initiative, Healthesystems worked with consultants from Open Source Architect to accelerate the development of quality software by adopting agile methods as well as continuous integration (CI) and continuous delivery (CD) practices enabled by the CloudBees Jenkins Platform.

“In moving to agile, we had to automate existing build and deployment processes that involved numerous manual steps,” says Mark Sinclair, solutions architect at Healthesystems. “With the CloudBees Jenkins Platform the process is now truly automated through CD. We can deploy code with a single button click to the environment we want to test in.” 

Robert Greathouse, senior consultant and architect at Open Source Architect, adds, “We always recommend best-of-breed tools because they help our customers minimize risk, deliver better quality products and become self-sufficient. That’s one of the reasons we recommended CloudBees.” 

CHALLENGE: ENHANCING PROCESSES TO SPEED SOFTWARE DELIVERY 

Always on the forefront of healthcare innovation, Healthesystems realized two challenges that were slowing software delivery. First, one of their reporting business systems was based on legacy software, making it difficult to implement changes. Second, multiple builds and varying deployment methods resulted in manual steps and processes. “Our deployment process was based on a ton of Groovy scripts, and every application had a different script,” says Sinclair. “The deployment process was time-consuming because of all the manual intervention it required.”

Cumbersome build and deployment processes also hindered the company’s transition to agile development methods. “When we first started agile we were doing three-week sprints. The third week was often used to address issues in preproduction,” says Sinclair. “Developers told us that to get to a two-week sprint we had to eliminate our manual deployment processes.” Healthesystems sought to address these issues by transitioning to CI, but they needed to do make the transition without incurring schedule delays. “There were real deadlines that we had to meet, so we had to have the appropriate training to ensure that people would still be able to deliver on time even as the processes they were using changed,” Greathouse adds. 

SOLUTION: OPTIMIZE BUILD AND DEPLOYMENT WITH CI AND JENKINS 

Healthesystems is using the the CloudBees Jenkins Platform — Enterprise Edition to automate its build and deployment processes with CI and to adopt CD practices.

Sinclair and the Healthesystems architecture team worked closely with Open Source Architect, who provided onsite training and support in setting up Jenkins.

After choosing a reporting system as its pilot project for CI, the group deployed Jenkins with Apache Subversion for software versioning and revision control and a Nexus artifact repository. “Our plan was to set up everything in a silo at first while establishing an approach that could be reused all over the company,” says Sinclair. “The team started loving it, and that started a grassroots movement that complemented our agile transformation.” 

As the group began to automate previously manual build and deployment tasks with Jenkins, they worked to foster a cultural change among the deployment team, some of whom were initially reluctant to abandon their existing approach. “One team member was initially skeptical,” Sinclair recalls. “But after seeing how much time it saved, he now pushes automation using Jenkins for everything.”

After initially planning to set up a master for each team, the group opted to use the CloudBees Folders plugin instead to organize jobs from different teams in separate hierarchical folders. This allowed them to avoid the administration overhead and complexity of maintaining multiple masters, while providing teams the isolation, security and independence they required. It also enables them to on-board teams more quickly.

They used the Templates plugin to give greater autonomy to development teams by enabling them to configure their own jobs within set limits. “We like to encourage experimentation but we don’t want people going rogue,” says Sinclair. “With the Templates plugin developers can use Jenkins to create jobs, but it’s all within guardrails that we’ve set up.”

The Healthesystems team has started using CloudBees Jenkins Operations Center to better manage its Jenkins deployment with real-time access to Jenkins metrics. “The value of CloudBees Jenkins Operation Center is growing as Jenkins, CI and agile practices are being incorporated by other teams,” notes Greathouse. “With CloudBees Jenkins Operations Center, all teams are better able to monitor and report on their progress.” 

Early success with CI has provided a foundation for establishing CD practices at Healthesystems as well. “It all started with the initial reporting project; now all eight of our teams are using CI with Jenkins, and we’re driving towards CD,” Sinclair concludes. 

RESULTS 

Deployment times cut from hours to minutes. 

“In the past developers would submit a request to the deployment team, and it could take hours to get their code deployed,” says Sinclair. “With CI and CloudBees Jenkins Platform it’s now automated and the deployment is done in minutes or even seconds.” 

Sprint durations reduced by 33%. 

“We wanted to get to two-week sprints for agile, but we had to start out with an extra third week to handle anything that broke in our preproduction environment,” says Sinclair. “CI and CloudBees Jenkins Platform enabled us to completely eliminate that third week.”

Deployment workload halved. 

“Modernizing our development processes with CI and Jenkins has reduced the number of individuals needed to deploy by half,” says Sinclair. “This has allowed employees to focus on other things, such as working on next-generation solutions to support our PBM and ABM programs.”

Because it is geared towards automation, the CloudBees Jenkins Platform makes it easier to adopt agile methods, CI and ultimately CD. It’s a good product that is made even better by CloudBees support.
Mark Sinclair
Solutions Architect, Healthesystems