HILL AIR FORCE BASE, Utah — Software engineers in the 517th Software Engineering Squadron have developed a new workflow system and software development methodology to significantly reduce the time it takes to deliver software to customers.
The new continuous development software system combines paired programming and test-driven development with a completely new and unique automated test and evaluation software program nicknamed, “The Pipeline.”
Software developers said the new system has changed how they develop, test and field new software products that support the warfighter.
“The 517th Software Engineering Squadron software developers have adapted proven industry continuous development practices to the DoD software industry that rewrites the book as to how customers acquire software,” said David Jolley, director of the 517th SWES.
He said the system was made possible by the adoption of a new software development methodology known as Agile or DevOps, which was endorsed by the Program Executive Office Digital, or PEO Digital, at Hanscom Air Force Base, Massachusetts.
The Agile methodology, originally pioneered in civilian industry, was then tested by the military at Pivotal Labs, Jolley said. With support of PEO Digital, the 517th SWES team was able to adapt these Development Operations, or DevOps, capabilities and incorporate important DoD secured elements referred to as DevSecOps.
Out with the old, in with the new
The new process methodology was adopted because, until recently, software development was treated like new hardware within the Air Force. It was designed, tested, maintained and managed through the legacy process of acquisition lifecycle. However, software is fluid and dynamic and doesn’t fit well into the acquisition lifecycle process.
“The acquisition lifecycle is really a hardware-specific process. The expectations are that following approved product requirements, product development will mature from milestone to milestone,” said Jolley. “This is because product hardware matures and becomes stable, until you are done.
“Software doesn’t happen that way, so it doesn’t fit well in the old lifecycle paradigm,” Jolley said. “Once you start software it becomes a living, breathing component in a constant state of development, which is never done. We have to be agile, we have to be flexible, because software requirements change and they change often.”
The squadron previously would get a large set of documented requirements from a customer and developers would work on the project that would typically take two to three years to complete.
The unit no longer spends time on large requirements documents.
“Now, my team sits down regularly with the customer and they do what is called backlog grooming,” Jolley said. “We work on new requirements with the customer, splitting them up into smaller software tasks, which are called stories that the software engineers can complete in two weeks.”
This allows the team flexibility to change priorities as needed. When engineers are done writing a particular piece of code, they run it through The Pipeline.
The Pipeline performs 100 percent integration and regression testing, performing security scans, quality assurance scans and preparing release reports. A process that used to take six or seven weeks to complete is now done in less than an hour.
Under the old acquisition lifecycle process, a final product release typically took a minimum of 400 working days from the time the requirements were set to the time a software release occurred. The squadron is currently releasing software every two weeks and has been doing so for nearly a year.
“It’s ridiculously drastic how much time we are saving and how many side benefits have been realized,” said Brent VanDerMeide, flight director for the 517th SWES. “Instead of receiving customer requirement sets, then providing that customer with monthly PowerPoint status reports for two to three years, the customer is now getting part of the product every two weeks.”
VanDerMeide said it took nearly a year working closely with customers to successfully adopt the new streamlined workflow process system. They were able to create a partnership, and together change the old mindset and implement efficiencies throughout the entire process, from start to finish.
Software benefits to the warfighter
The primary mission of the 517th SWES DevSecOps team is to design and field software for Personnel Recovery Mission Software (PRMS) and Personnel Recovery Mission Manager (PRMM), which are part of a larger software suite known as Personnel Recovery Command and Control (PRC2).
All military branches and several other federal agencies use PRMS, PRMM and PRC2. In the military, it is used during the pre-deployment process by personnel specialists to build custom personal profiles for deploying service members. Profiles contain personal, professional and medical vital statistics that can be used in a number of ways.
The information can provide field commanders detailed synopsis of personnel in their units. In addition, it can be used to identify wounded, incapacitated or deceased service members, as well as rescue or recovery operations.
VanDerMeide said the 517th SWES is in the process of sharing its tools and lessons learned with software developers across the Air Force and the benefits of the new system can be seen across the board.
Warfighters can now get needed improvements in two weeks rather than waiting three years.
Efficiencies gained by the new process offer time savings and improvement in software quality that translate into potential significant cost savings for the Air Force. However, the most important benefit will be realized by software end users – the warfighter – and will undoubtedly save lives.