RATIONAL (cont.)

  • Same developers worked on Ada and C

  • - Same design methods used regardless of language
    - Low personnel turnover (5%) throughout life of project

  • Used DOD rule to decide what to rewrite

  • - Anything new written in Ada
    - Anything changed by more than 1/3 rewritten in Ada

  • Exercised more careful control of C code during development

  • - Avoided Cís higher optimization levels
    - Avoided complex data structuring of nested unions and structures

  • Equivalent degrees of difficulty for VADS components

  • - Code generator still written in C
    - Runtime, optimizer, cross linker, library services, and support tools were rewritten in Ada

Previous slide Contents Next slide

From the Script: SLIDE 59 - Rational Ada System (continued)

During their efforts:

The same developers worked on both the C and Ada code, using the same design methods, and experiencing a low personnel turnover throughout.

More and more Ada was added by following the DOD Ada Policy guidelines when determining what to rewrite. New stuff was in Ada and changes of > 1/3 were done in Ada.

They attempted to exercise more control of C code during development, avoiding C's higher optimization levels and complex data structuring.

Finally, they attempted to maintain equivalent degrees of difficulty for the components. There was/is a fairly even mix of easy and hard stuff in each language.

The full paper spends a majority of its time taking the favorable results (on next slide) and attempting to see if they can be explained by some different circumstances (personnel, application domain, etc.). In the end, the author concludes that the language made a difference. The results are shown on the next slide: