Sponsored by Tricentis

At CBP, automated software testing helps prevent mission downtime

Some parts of the system are more difficult to automate, including operations like biometric fingerprinting.

Automated software testing, the continuous process of validating the functionality of software and ensuring it meets required standards, is easier said than done. For Customs and Border Protection, a misguided software update could wreak havoc on its operations, potentially bringing screenings and port operations to a halt.

Ken Oppenheimer, deputy executive director of the Passenger Systems Program Directorate at CBP, said software supports programs agencywide, from the trusted traveler program and global entry, which let travelers move through lines faster, to more comprehensive traveler safety examinations that use biometric technology.

“We have a portfolio of roughly 90-plus different applications that we operate, support and have out in the field to support the mission, whether it’s land, sea or air entry, whether it be on the primary, the initial entry point into the U.S., or even some of the systems that we deal with on the back end,” Oppenheimer said on Federal Monthly Insights – Automated Software Testing.

This is why CBP makes every effort to mitigate the chance of failure like those experienced by multiple airlines this summer when a faulty software update caused the cancellation and delays of thousands of flights worldwide.

CBP mainly has a Java-based environment and uses an open source tool for test automation. Oppenheimer acknowledged that it’s not a perfect solution because testing is more difficult to automate on some applications, such as biometric fingerprinting. However, he and his team have come a long way in the last several years.

“Testing is something of a passion of mine. About seven years ago, I really made it a priority for our group, and it grew slowly. But I think we’ve got the rock over the top of the hill, and we’re gaining ground quickly,” Oppenheimer said on the Federal Drive with Tom Temin.

CBP syncs the work of writing test cases as its developers are writing code in hopes of staying up to date before a major release, he said. The agency relies on a team that consists of some members who understand the business requirements and some who have been long standing members of the development team.

“We are not as mature as we want to be where we can write those in the same sprint. We’re typically about a sprint behind, but it does afford us the ability to do a full regression suite before that release,” he said.

Oppenheimer added this lets CBP know what parts of its testing and upgrades need to be done manually ahead of releases. It also allows time to run testing several times to find any defects and bugs before full implementation.

Automating testing across internal systems, contractor products

The agency has tried to keep control of its upgrades even as it works with whole-suite software suppliers like Microsoft. CBP maintains ownership of its applications. When contractors are ready to issue a patch, the agency then might have a two-week window to test the update and make sure that there are no risks to its systems, Oppenheimer said.

But even as CBP manages this control over the process, it is working on completing a migration to the cloud. The agency has chosen to go with a services provider because of the benefit of improved uptime, he said.

“What we get is redundancy as an easier solution and failover capability. … You’re going to measure service level agreements in a variety of different ways, where you’re going to look for uptime, downtime, response time, volume — a cadre of different metrics you want to follow — all to be forward leaning on understanding the performance of your applications,” Oppenheimer said.

Looking to the future, CBP, like many organizations in government and industry, is evaluating how artificial intelligence and machine learning can help with testing.

“There’s probably a lot in the pipeline right now. It’s kind of hard to pick one out, but everybody’s talking AI. So we’re trying to understand how that’s going to impact us and where we are going to benefit from that going down the road,” Oppenheimer said.

Copyright © 2024 Federal News Network. All rights reserved. This website is not intended for users located within the European Economic Area.

Discover more articles from the Insights Series, Automated Testing Drives Efficiency in Federal Software Deployment.

Related Stories