Using XML for Software Structural Analysis

Period of Performance: 06/26/2006 - 01/09/2009


Phase 2 SBIR

Recipient Firm

Harmonia, Inc.
2020 Kraft Drive, Suite 2400 Array
Blacksburg, VA 24060
Principal Investigator


A key to the Navy s Open Architecture (OA) Program is the ability to identify common functions across surface and subsurface platforms and to transform the corresponding legacy software into reusable components for a component reuse repository. Simply rewriting legacy code to achieve the transformation to OA is cost prohibitive. New engineering tools are essential to identify, extract, and reuse legacy software to speed the transition to OA. Products today typically analyze just one programming language, or convert one programming language into a second language, requiring separate transcoders for every source/target pair. ONE tool is needed that facilitates the conversion of multiple source languages into multiple target languages via a malleable intermediary format that works with many programming languages. Harmonia proposes to prototype such a tool in this Phase II effort, called the Legacy Analysis Workbench (LAW). LAW will reverse-engineer multiple programming languages to an XML meta-model of programming languages and the platform on which the code executes. This one powerful meta-tool helps automate many steps in creating the model, analyzing it to identify code segments to reuse, surgically extracting those portions, and forward engineering to new programming languages. Users can visualize, search, browse, and manipulate unfamiliar legacy code.