HTC

Demonstrations Using DSSA for GN&C Tools


The following tables record information about the number of specification lines needed for a collection of demonstrations performed using our tools, together with the number of application lines ultimately generated or composed to form the application. These figures do not include the Ada run-time code provided by the compiler vendor.

The average ratio of ControlH specification-to-code lines in the demonstrations is about 1 to 5. However, this is significantly affected by a large demonstration (flight control) consisting mostly of procedural ControlH derived from an existing FORTRAN program. We believe that excluding this demonstration, which results in a specification-to-code ratio of about 1 to 9, is more representative of modular specifications that make full use of ControlH language features.

There are two specification-to-code metrics one can derive for MetaH, one based on the number of lines of application code that were integrated and one based on the number of lines of executive code generated to do the integration. For all these examples, 1 line of MetaH generated about 3 lines of executive code to integrate about 8 lines of application code. However, this is skewed because many of the demonstrations used stubs in place of functional application code. We believe the IFMU demonstration, which was reengineered from an actual product and exhibits a specification-to-application ratio of about 1 to 18, is more representative of what can be expected in practice.

The code generators for ControlH and EdgH also generate the MetaH descriptions of the Ada source code they produce. Thus, a significant portion of the MetaH in our demonstrations is itself automatically generated.

In the reengineering demonstrations, about 5% of existing application code had to be modified or added in order to be able to use that code in a MetaH-specified software architecture.

Demonstrations Developed from Scratch

Missile Pitch Axis Control

    732 lines Ada generated from 253 lines ControlH
    118 lines Ada generated from 2 lines EdgH
   1172 lines Ada generated from 345 lines MetaH
   2452 lines Ada executive code reused

   4474  lines Ada reused or generated from 600 lines of specification

6 DOF Vehicle Simulation

   5185 lines Ada generated from 332 lines ControlH
    328 lines Ada generated from 4 lines EdgH
   1844 lines Ada generated from 428 lines MetaH
   2452 lines Ada executive code reused

   9809 lines Ada reused or generated from 674 lines of specification

MICOM's Missile Avionics Architecture

    716 lines Ada generated from 140 lines ControlH
    472 lines Ada generated from 8 lines EdgH
   3251 lines Ada generated from 846 lines MetaH
   1843 lines Ada hand-coded
   2452 lines Ada executive code reused

   8734 lines Ada, 6891 reused or generated from 964 lines of specification

Proprietary Aircraft Flight Control

    9884 lines Ada generated from 2663 lines ControlH
    3674 lines Ada generated from 7 lines EdgH
    1852 lines Ada generated from 1312 lines MetaH
    2452 lines Ada executive code reused

   17862 lines Ada reused or generated from 3982 lines of specification

Demonstrations Reengineered from Existing Applications

Honeywell's IFMU Navigation

    1861 lines Ada generated from 461 lines MetaH
    2452 lines Ada executive code reused
    8246 lines Ada reengineered

   12559 lines Ada

Wright Laboratories' Bomb Release

    1657 lines Ada generated from 596 lines MetaH
    2452 lines Ada executive code reused
    1682 lines Ada unmodified
     138 lines Ada modified or added

    5929 lines Ada

Loral's ADAGE Navigation

    1138 lines Ada generated from 426 lines MetaH
    2452 lines Ada executive code reused
    3742 lines Ada unmodified
     117 lines Ada modified or added

    7449 lines Ada

DSSA for GN&C Home Page