Paul Reichlin director of digital platforms at the Pacific Northwest National Laboratory sees automated software testing as a foundational role.
The Pacific Northwest National Laboratory manages a broad range of applications that support operations from finance to human resources, facilities, asset capabilities and custom-built software.
The PNNL portfolio consists of 180 business applications and has a user population of 6,500.
The lab conducts high-level research to support operations in national security, sustainable energy, power grid modernization, and even technology and chemical materials research for safeguarding ports against nuclear materials smuggling. It’s currently undergoing a major modernization effort that includes removing and replacing some legacy systems and introducing new technology.
Paul Reichlin, director of digital platforms at the lab, explained that automated software testing plays a foundational role in the current digital transformation underway at PNNL. The organization relied both on the Agile scrum development methodology, which focuses on building, developing and releasing code within short timespans, and the DevSecOps approach, which leans on continuous learning and continuous improvement.
PNNL, like all the national labs, is federally funded but operated by contractors. It employs commercial off the shelf products for functional testing to help write automated tests and scripts. The testing moves between teams that test separately and learn from one another, Reichlin said.
The teams maintain a service catalog, use data metrics and track progress. Reichlin noted that they have two domains, described best by looking at financial software. They build the requirements to meet federal standards but also the requirements of the organization operating the lab.
“We have a number of efforts where we’re building out kind of brand new digital platforms from scratch, reimagining the business applications as they have a fair amount of disparate systems built over time. As we rethink those, we’re looking at our users. We’re studying how they do things. We bring them into the process and then reimagine what those products can be. So we’re really building from the ground up at this point,” Reichlin said on Federal Monthly Insights – Automated Software Testing.
With modernization comes the crucial need for automated software testing, he said. PNNL’s strategy has been to build testing into the process at shorter and faster intervals throughout, Reichlin said, noting the importance of ensuring testing early in the process. His approach has been to integrate testing into the development cycle.
“We’ve definitely taken the common approach of moving a lot of testing left in the process. The more we can move it into the development process — the build processes — we get that faster feedback,” Reichlin said. “When you’re starting new, you can do a lot with the code in terms of making it more modular and testable. … You have those tests to let you know if you broke something.”
Reichlin emphasized standardizing the testing practice. For his team, that meant recognizing that legacy systems often require a great deal of attention if an organization plans to keep them in operation.
It might not have documentation or background information or the workers that still write and understand the original code. In these situations, the test teams are required to do a great deal of analytical work to guarantee they are well versed at knowing what the software is doing, Reichlin said. PNNL also focuses on managing the datasets around its testing.
“It’s important to have good test datasets,” he said. “You have to look at what you can test in term of interfaces and having either a mock or a stub to kind of mimic a downstream dependency. … This allows you to automate and move quickly,” he said on the Federal Drive with Tom Temin.
PNNL has made the move to cloud storage and now has about 95% of its applications hosted in the cloud, including a combination of internally developed software, commercial products, software as a service, and low-code, no-code environments.
He emphasized that the cloud comes with its own challenges and noted that it’s important to stay up to date on software service offerings to limit the worry of issues that come with patch updates. Through it all, Reichlin said his PNNL has kept its focus on the end users of the systems.
“These processes require a lot of people at the table in terms of making sure we’ve got the requirements right but also that we’re designing these systems for the users and the way they like to work. So it’s really important to get that input early and have them work with you as you develop your plans and designs.”
Copyright © 2024 Federal News Network. All rights reserved. This website is not intended for users located within the European Economic Area.
Michele Sandiford is a digital editor at Federal News Network.