Zurich Insurance Group
Zurich Insurance Group is one of the world’s largest insurance companies and one of the few to operate on a truly global basis. With approximately 55,000 employees helping people in more than 170 countries understand and protect themselves from risk, Zurich aspires to be the best global insurer as measured by shareholders, customers and employees.
At the Zurich General Insurance business unit in the United Kingdom, Solution Architect Gari Gono and his colleague Jason Catlin-Holmes, the Infrastructure & Environment Manager, were required to develop and manage a training environment for a core application used by close to 3,500 Zurich employees. The software team that Gono and Catlin-Holmes manage is essentially responsible for taking the business requirements and turning them into “technical magic.”
The team uses a microservices architecture pattern when developing the core application and integrating it with the multiples services that the application relies on. These include a message queue, the UI layer, a large SAP database, and several external services such as Experian.
“The services we add on can make the core application complex to manage, and when things go wrong, it can be difficult to identify the cause,” Gono says. “But the microservices approach gives us a way to decouple the architecture so that it’s easier to test and diagnose when problems occur.”
The microservices architecture approach requires Zurich to test the APIs that connect the core application to all the add-on services. But API testing can negatively impact the application performance experienced by the 3,500 end users.
“Some external services cap the number of API test requests you can make per day,” Gono points out. “If we load test our core application, we might reach those caps very quickly and have to pay to get test results from the external services. With so many people in our training environment, we might hit a particular API service 7-8 times per day—and the cost adds up.”
“Many third-party APIs are not built for testing,” adds Catlin-Holmes. “You might actually damage their service. Making sure the APIs remain up and running is critical to our application."
To take on the challenge of testing APIs without impacting the performance of the core application, Gono and Catlin-Holmes turned to ReadyAPI Virtualization from SmartBear. As an affordable and powerful API sandboxing solution, ReadyAPI Virtualization facilitates rapid application development and helps Zurich efficiently manage the API testing process.
“The API service virtualization that ReadyAPI Virtualization enables allows us to overcome the dependency of our core application on other internal and external services,” says Gono. “This is key when the core application is ready for testing, but the services around the application are not.”
Zurich also considered using the stubbing methodology but determined ReadyAPI Virtualization is more efficient. “Stubbing is very manual and requires a lot of developer effort for each test—you have to run one test at a time,” Gono explains. “It’s also not easy to share stubs with other developers.”
Adds Catlin-Holmes, “API service virtualization is like stubbing on steroids. ReadyAPI Virtualization provides a level of service autonomy, and once the service is developed, it can run on the server without any input from the original developer.”
The service virtualization made possible by ReadyAPI Virtualization also expedites the deployment of Service Oriented Architectures for Zurich. Once a service is virtualized, it can easily be used by multiple developers. As developers advance further into testing cycles, they discover fewer defects because a lot of defects have been resolved by other developers earlier in the testing cycle.
ReadyAPI Virtualization also enables Zurich to run negative tests a lot easier. “If we are integrated with a virtualized service, such as Google Maps, and we want to test what will happen to our app if Google Maps goes down, it’s a lot easier to switch off our virtualized service than to ask Google to shut down theirs,” explains Gono.
By virtualizing the core application and the APIs to other systems, we’ve done away with all that,” Gono emphasizes. “Our training environment is now up 99.99% of the time, and if there’s an issue, it’s usually simple to identify and fix."
— Gari Gono, Solution Architect
Benefits and Results
In addition to helping test APIs, service virtualization also pays off when applications are in production. Prior to deploying ReadyAPI Virtualization, when application problems occurred, Zurich would sometimes spend multiple days determining if the issue was caused by the network, the infrastructure, third party-integration, or the core training application. Gono and Catlin-Holmes often found themselves spending an inordinate amount of time checking with third-party API providers.
“But by virtualizing integrations using ReadyAPI Virtualization to send information back-and-forth automatically and in real time between processes—such as claims and payments—we virtualized the entire API journey,” says Gono. “This dramatically reduces the time and our resource costs in identifying and fixing issues.”
Gono and Catlin-Holmes also no longer have to worry about costs for accessing the many third-party APIs that Zurich relies on. Furthermore, they don’t have to worry about finding someone who works for the third parties to help them when there’s an issue with an external API.
“By virtualizing the core application and the APIs to other systems, we’ve done away with all that,” Gono emphasizes. “Our training environment is now up 99.99% of the time, and if there’s an issue, it’s usually simple to identify and fix.”
Zurich requires the training environment to behave the same way over-and-over again, so that when trainers perform a demo, students can go through the same process and generate the same results. Thanks to a major assist from ReadyAPI Virtualization, the Zurich training application achieves this objective time-after-time, giving the training team more confidence in what they deliver to students, and giving students a better learning experience.
ReadyAPI Virtualization has also significantly reduced the cost for setting up the training environment.
Zurich uses SAP as the service oriented architecture around finance, and setting up an extra training environment can cost up to $200K. Alongside the FileNet SOA, which Zurich uses for content management, the test environment can cost up to $400K for both applications.
“Adding in the other integrations we might require, our test environment costs can run as high as $500K,” says Gono. “But the service virtualization capabilities provided by ReadyAPI Virtualization let us do this for a fraction of the cost, and we have enough licenses to expand it out as far as we need to in the future.”
- Develop a strategic claims platform utilizing the microservices architecture pattern.
- Provide Operations with a training environment that performs consistently.
- Build a production environment to mirror the test environment to reduce management and troubleshooting costs.
- Streamline the process for testing API connections to internal and external systems.
- Reduce the dependency on third-party API services.
SmartBear ReadyAPI Virtualization
- Speeds release cycles by developing and testing in parallel.
- Overcomes third-party API downtime, rate limits and overage fees.
- Performs integration and isolated testing safely.
- Minimizes impact of developers on production APIs.
- Saves nearly $500K on the cost of building the training environment.
- Helps keep training environment up-time running at 99.99%.
- Reduces time and resource costs in identifying and fixing application issues.
- Eliminates costs for accessing and testing third-party APIs.
- Enables training environment to perform consistently for teachers and students.