The Software Revolution, Inc. - [ Print It ] -
| | ©2004, ©2005 the Software Revolution, Inc. All rights reserved. [ Print It Version 1.0 ]

Northrop Grumman Information Technology (NGIT)

US Air Force and US Navy

Joint Mission Planning System (JMPS)

Ada to C++

History: The Joint Mission Planning System (JMPS) is a cooperative effort between the US Air Force and the US Navy. JMPS provides automated mission planning support for Air Force, Navy and Marine Corps aircraft. JMPS will significantly enhance command and control in support of all four Joint Vision 2010 concepts. JMPS will provide the mission planning capability to collect, process, analyze, and disseminate information, while denying an adversary the ability to do the same. Northrop Grumman Information Technology (NGIT) was selected in 1999 to develop JMPS Version 1.0 (JV1), the framework and common software components that enable basic flight planning capabilities. In support of the JMPS Modernization Project, NGIT requested that TSRI demonstrate the feasibility of automated modernization with an Ada to C++ transformation. Increasingly, military programs are moving information systems out of legacy Ada into C++ or Java to take advantage of the more robust features of modern object-oriented languages and modern software development tools.

Challenge: TSRI transformed a sample of JMPS, originally written in Ada, into C++. Ada is a powerful language developed by the DoD for mission critical applications. Ada is a strongly typed language with language constructs such as generics, tasks, parameterized name associations, and variant records. These constructs have very complex semantics and are difficult to replicate in C++ with perfect accuracy.

Results: Using a JMPS sample of Ada code, TSRI carried out a fully automated transformation into C++, demonstrating that an automated approach can create code of comparable quality to a manual rewrite. Using metrics gathered from this transformation, the customers were able to complete the technology evaluation phase of the JMPS spiral development program. From evidence gathered they concluded that a fully automated transformation of JMPS Ada code into C++ was technically feasible. Furthermore, they concluded that such automated methods offered significantly lower costs, reduced schedule times, and provided modern code of equal or better quality than manual methods.