Overcoming the Challenges of Reusing Legacy Code in the Defense and Aerospace Sector
Raytheon Company is an industry leader in defense, government and commercial electronics, space, information technology, technical services, and business and special mission aircraft. With headquarters in Lexington, Massachusetts, Raytheon employs more than 76,000 people worldwide.
Raytheon Network Centric Systems provides systems integration for government and defense customers in the United States and the international marketplace. The business develops and produces networked solutions to integrate sensors and communications to manage battle space and civil air space.
Klocwork Helps Raytheon…
Increase Productivity
Document Legacy Software Architecture
Educate Developers
...leaving us with more time to mitigate any potential problems leveraging the ‘what if’ testing. As a result, our end product is stronger, and Raytheon can get the end product to our customers more quickly than before."
Raytheon Network Centric Systems Faces a Challenge
Since 1995, Raytheon Network Centric Systems has acquired the defense segments of several companies, which has resulted in multiple people, from completely different background and origins, working together on government contracts, known as software programs.
As a result, the software developers who originally created and possess knowledge of the programs are no longer available to Raytheon Network Centric Systems. This presents the software engineers at Raytheon with significant challenges, as Raytheon reuses a large percentage of its software across its developmental projects for defense programs.
According to Robert Young, a software engineer for Raytheon Network Centric Systems, each time his team received a legacy program with which to work, it took a significant amount of time to educate a new developer on that program’s software code.
At the same time, his team needed to find a solution that would give an architectural view of the program to enable them to analyze the source code and perform “what if” scenarios. Because Raytheon has a proprietary operating environment (OE), this tool also would need to enable the developers to view and test the messaging from the OE to the software.
Klocwork Provides the Solution
Young looked to Klocwork’s static analysis tools, which automatically extract an accurate graphical view of the design of software directly from existing source code to provide a comprehensive understanding of that application’s structure and design. The visualization included all the software components to provide Young’s team with an instant understanding of interfaces, relationships, and logic flow.
“Klocwork offers a one-of-a-kind solution that gives a graphical view of the architecture,” Young said. “It’s easy to use and brings new members of my team up to speed immediately while dramatically improving our understanding of mature, complex code. Really, this tool gave us a strong, visual understanding of the system as a whole, as well as the inter-object communications.”
According to Young, the implementation was complete within a week and it took under an hour to analyze 70,000 lines of code. Previously, that task alone would have taken a week. On another piece of the project, Young says Klocwork’s tools took two weeks to accomplish what otherwise would have been a six-week project.
Klocwork in Action
Recently, Raytheon Network Centric Systems used Klocwork’s toolset on two defense programs: An aircraft multimode radar for military systems and a ground vehicle sensor. With the first program, Raytheon was asked to determine if the radar, which originally operated in serial modes, could run the modes in parallel.
With Klocwork’s tools, the developers were able to run “what if” scenarios to determine how the systems would react when several individual factors were integrated together. Raytheon was able to identify whether the radar’s hardware requirements would change when the modes ran in parallel.
When working on the ground vehicle sensors, Raytheon needed to combine sensors that had never before been combined. Young’s developers used Klocwork’s tools to show a graphical view of all the sensors’ elements, and ran feasibility tests to determine how those elements would interact with each other when integrated.
Klocwork’s tools provided Young’s developers with architectural pictures of the software code, which enabled the team to quickly understand the detailed code for both programs. According to Young, by using Klocwork’s toolset, his team accomplished, in a short amount of time, what previously would not have been possible at all.
“With Klocwork, our productivity has dramatically increased, leaving us with more time to mitigate any potential problems leveraging the ‘what if’ testing. As a result, our end product is stronger and Raytheon can get the end product to our customers more quickly than before,” said Young.
Successfully Manage Legacy Code
Klocwork helps companies like Raytheon to successfully manage its legacy code. See for yourself how Klocwork can help you achieve the same goal.