SOFTWARE REVERSE ENGINEERING TOOLS FOR INCLUSION IN OPEN ARCHITECTURE ENVIRONMENTS

Award Information
Agency: Department of Defense
Branch: Defense Advanced Research Projects Agency
Contract: N/A
Agency Tracking Number: 15230
Amount: $248,939.00
Phase: Phase II
Program: SBIR
Solicitation Topic Code: N/A
Solicitation Number: N/A
Timeline
Solicitation Year: N/A
Award Year: 1993
Award Start Date (Proposal Award Date): N/A
Award End Date (Contract End Date): N/A
Small Business Information
21 Arnold Avenue, Newport, RI, 02840
DUNS: N/A
HUBZone Owned: N
Woman Owned: N
Socially and Economically Disadvantaged: N
Principal Investigator
 Paul Abrahams
 Principal Investigator
 (401) 849-5389
Business Contact
Phone: () -
Research Institution
N/A
Abstract
REVERSE ENGINEERING DERIVES THE SPECIFICATION OFA SOFTWARE SYSTEM FROM ITS IMPLEMENTATION. IT REQUIRES BOTH A SPECIFICATION LANGUAGE AND A SET OF TOOLS. AS OUR SPECIFICATION LANGUAGE WEUSE SEDL; AS OUR INPUT LANGUAGE WE USE C; AND AS OUR PROTOTYPE WORKING ENVIRONMENT WE USE ARCADIA. SEDL, A SOFTWARE ENGINEERING DESIGN LANGUAGE DEVELOPED AT IBM, IS AN EXTENSION TO ADA THAT PROVIDES HIGH-LEVEL DICTIONS FOR EXPRESSING BEHAVIOR AND DATA SPECIFICATIONS AND THEIR REFINEMENTS; SET, LIST, AND MAP TYPES; A VARIETY OF USEFUL CONSTRUCTS AND OPERATIONS ON THESE TYPES; AND SUPPORT FOR ABSTRACT DATA TYPES. SEDL SUPPORTS THE ENTIRE REVERSE ENGINEERING CYCLE, INCLUDING THE TRANSFORMATION OF THE SPECIFICATION INTO ADA. OUR OBJECTIVES ARE TO SPECIFYAN ABSTRACT SYNTAX FOR C THAT SUPPORTS MANIPULATION OF C PROGRAMS; TODEVELOP A CATALOG OF AD HOC TRANSFORMATIONS OF C CODE; TO SPECIFY THESTRUCTURAL AND FLOW INFORMATION NEEDED TO SUPPORT THESE TRANSFORMATIONS; AND TO DESIGN A SPECIALIZED SMART INTERACTIVE EDITOR THAT CAN APPLY TRANSFORMATIONS IN RESPONSE TO SIMPLE COMMANDS. WE USE SEDL BECAUSEIT SUPPORTS BEHAVIOR SPECIFICATIONS AND THEIR REFINEMENTS, ABSTRACT DATA TYPES, AND OPERATIONS ON SETS, LISTS, AND MAPS. WE SUPPORT TRANSFORMATIONS THAT REORGANIZE THE CONTROL FLOW, REPLACE SPECIALIZED C CONSTRUCTS SUCH AS POINTER ARITHMETIC, TRANSLATE C DATA TYPES TO SEDL DATA TYPES, TRANSFORM IMPERATIVE CONTROL STRUCTURES TO SPECIFICATIONS OF THEIR RESULTS, AND FIND NATURAL BOUNDARIES OF COMPONENTS OF THE SYSTEM.THE WORK ON C WILL GENERALIZE TO OTHER LANGUAGES. ANTICIPATED BENEFITS/POTENTIAL COMMERCIAL APPLICATIONS - THE "OLD CODE" PROBLEM IS PERVASIVE IN BOTH THE MILITARY AND COMMERCIAL WORLDS. IN THIS PROJECT WE SHALL DEVELOP THE TOOLS AND TECHNIQUES FOR DEALING WITH OLD CODE THROUGH REVERSE ENGINEERING. IN ADDITION, COMMERCIAL ORGANIZATIONS COULD OFFER REVERSE ENGINEERING AS A SERVICE FOR OTHER ORGANIZATIONS THAT ARENOT PREPARED TO DO IT FOR

* Information listed above is at the time of submission. *

US Flag An Official Website of the United States Government