You are here

Pattern Recognition Algorithms for Detection of Latent Errors in Combat System Software

Description:

TECHNOLOGY AREA(S): Sensors, Electronics, Battlespace 

OBJECTIVE: Develop pattern recognition algorithms that identify and characterize latent errors in the software code of the AEGIS operational software prior to deployment. 

DESCRIPTION: The software for the AEGIS system is a critical component of ship and strike group self-defense. Therefore, software quality is of utmost importance. Any software defects (bugs) present in the AEGIS software can have mission-critical impacts on the defense of the Navy’s Fleet assets. In order to field the best software to the Fleet, AEGIS software must undergo thorough testing. Throughout the software development process, AEGIS undergoes hours of testing, producing terabytes of data. The testing is accomplished with two AEGIS labs and a modeling and simulation suite concurrently providing Combat System data. The current process of debugging includes the following steps: find the bug through testing, conduct additional testing to determine the bug’s priority (mission criticality and impact) and probability (chance of occurrence), root cause the bug to specific code areas, and fix the bug. After this process is completed, it is repeated to ensure elimination of the bug and determine if there are any changes that might create another bug. These processes are necessary because a missed bug that is fielded may degrade a ship’s combat capability or create an unintended loss of life or dangerous operational situations. While the commercial industry has the ability to field less than perfect software and simply respond to user complaints on functionality through rapidly deployable upgrades, military software such as AEGIS must have a much higher fidelity in functionality to avoid unintended impacts on human life. Similar to current commercial debugging processes, the current AEGIS testing process provides terabytes of data that can lead to possible issues, but AEGIS data is not currently analyzed unless there is a visible error onboard the ship. Unfortunately, the manual analysis by humans of all of the AEGIS data generated through testing is not cost-effective, which drives the need for machine-learning algorithms to learn system behavior and identify out-of-pattern behaviors. Additionally, unlike commercial software upgrades, AEGIS upgrades go through longer approval and certification timelines before they can be released. Subsequently, reducing these timelines through automated data analysis can significantly impact both cost and performance of the AEGIS Combat System (ACS). The Navy seeks a technology that provides the capability to automatically find and characterize bugs. This automation capability will analyze recorded data from AEGIS to find latent errors and provide data-driven priority and probability prior to AEGIS certification and deployment. This technology will enable high priority bug detection and repairs before fielding the system and enable the fielding of a combat system at full capability. As a result, development and maintenance costs of the AEGIS software will be reduced. Latent error detection will ensure that the best quality software is fielded to the Warfighter and works every time. Testing can be very expensive; therefore, the better the Navy becomes at finding and fixing software bugs, the less testing will be required. This will result in a more capable upgrade, faster deployment, and cost savings. The software solution will analyze 300 terabytes of AEGIS data throughout the development lifecycle of a baseline. In doing so, the software solution will use big data and machine learning algorithms and technology to characterize the patterns of AEGIS system behavior and identify out-of-process behaviors that lead to system failure. Through analysis of large amounts of AEGIS data, the software solution will provide large-scale analysis of AEGIS software data that encompasses all testing for the baseline. This will help AEGIS find and fix high priority bugs via (1) finding bugs that have been overlooked by systems analysts and (2) providing better data on the probabilities and impacts of bugs. This will be measured by identifying the number of defects found by the technology and comparing that number to the number of defects found by the Government analyst team through traditional methods. The goal is for the software solution to increase the number of high-priority bugs found by a minimum of 10%. The software solution must also be able to identify whether defects have been fixed over the lifetime of the AEGIS software development, and are no longer issues in the most recent builds. The Phase II effort will likely require secure access, and NAVSEA will process the DD254 to support the contractor for personnel and facility certification for secure access. The Phase I effort will not require access to classified information. If need be, data of the same level of complexity as secured data will be provided to support Phase I work. Phase II and Phase III will include work with the AEGIS Prime contractor, Lockheed Martin. Work produced in Phase II may become classified. Note: The prospective contractor(s) must be U.S. Owned and Operated with no Foreign Influence as defined by DOD 5220.22-M, National Industrial Security Program Operating Manual, unless acceptable mitigating procedures can and have been implemented and approved by the Defense Security Service (DSS). The selected contractor and/or subcontractor must be able to acquire and maintain a secret level facility and Personnel Security Clearances, in order to perform on advanced phases of this contract as set forth by DSS and NAVSEA in order to gain access to classified information pertaining to the national defense of the United States and its allies; this will be an inherent requirement. The selected company will be required to safeguard classified material IAW DoD 5220.22-M during the advance phases of this contract. 

PHASE I: Develop a concept for pattern recognition algorithms that automatically reveal bugs in software. Determine feasibility through modeling and analysis of data sets and show it meets the requirements as described in the description. The concept will show it can feasibly analyze outputs of AEGIS software data extraction and find latent errors that may contribute to mission failure. The AEGIS Program Office will provide sample unclassified data for the topic. The Phase I Option, if awarded, will include the initial design specifications and capabilities description to build a prototype in Phase II. Develop a Phase II plan. 

PHASE II: Based upon the results of Phase I and the Phase II Statement of Work (SOW), design, develop, and deliver a prototype for pattern recognition algorithms that automatically finds and characterizes bugs in software. The prototype will provide analysis tools that will work with AEGIS software and demonstrate it effectively finds latent software errors and characterizes the priority and probability of those errors. The demonstration will take place at a Government- or company-provided facility. The company will prepare a Phase III development plan to transition the technology for Navy production and potential commercial use. It is probable that the work under this effort will be classified under Phase II (see Description section for details). 

PHASE III: Support PEO IWS 1.0 in transitioning the technology for Navy use to allow for further development, refinement, and testing. The implementation will be a fully functional software tool that provides continuous analysis of test data to ensure AEGIS works the first time and every time. Integration will be through the development cycle for AEGIS at Lockheed Martin and Government test facilities. Any software development company, including Apple, Microsoft, Google, etc., has software bugs. These companies look to improve their software development process to drive down costs and create software in the cheapest and most effective ways possible. Similar to AEGIS, these companies all track their bugs, and have comprehensive test plans that work through system capability to define bugs. Therefore, there is significant commercial application for the technology detailed in this topic. 

REFERENCES: 

1: Jones, Capers. "Software Defect Origins and Removal Methods." International Function Point Users Group, 2012. http://www.ifpug.org/Documents/Jones-SoftwareDefectOriginsAndRemovalMethodsDraft5.pdf.

2:  Rahman, Aedah Abd and Hasim, Nurdatillah. "Defect Management Life Cycle Process for Software Quality Improvement." 2015 3rd international Conference on Artificial Intelligence, Modelling and Simulation (AIMS), 2-4 December 2015. http://ieeexplore.ieee.org/document/7604582

3:  Mchale, John. "The Aegis Combat System’s continuous modernization." Military Embedded Systems, 26 August 2016. http://mil-embedded.com/articles/the-aegis-combat-systems-continuous-modernization/

KEYWORDS: Software Quality; AEGIS Software; Testing For Software Bugs; Automation Of Software Review; Software Defect; Big Data Processing; Machine Learning 

CONTACT(S): 

John Clarke 

(202) 781-3922 

john.r.clarke3@navy.mil 

Bob Rumbaugh 

(202) 781-4932 

US Flag An Official Website of the United States Government