Transportability Guideline for Ada Real-Time Software

Abstract

This document reports the findings of a project that analyzed issues involved with the transporting of real-time Ada programs. Software transportability is one of the cost-saving benefits anticipated with the use of Ada. Support for transportability was a major goal in the design of the Ada language. However, transportability is not automatic with the use of Ada; programs written without specific attention to transportability will not, in general, be transportable. Software must be transportable in order to take advantage of rapid changes in both processor technology and compiler technology. The time between processor generations is typically less than three years, whereas the application software must endure for a period of 10-20 years. Current compilers are evolving rapidly. Performance gains due to optimization are eagerly awaited in each new compiler release. For real-time embedded applications, software test-on-host and integration-on-target requires that the application program be transportable to at least two different computers (typically). Programming teams must develop software on a host environment, perform as much testing as possible on the host, and then transport the code to the target environment for further testing and integration. Again, designing software to be transportable will be an aid in this process.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 31, 1989
Accession Number
ADA223085

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Accuracy
  • Application Software
  • Compilers
  • Computer Program Documentation
  • Computer Program Reliability
  • Computer Programming
  • Computer Programs
  • Computers
  • Databases
  • Embedded Systems
  • Management Personnel
  • Object Code
  • Operating Systems
  • Performance Tests
  • Software Development
  • Standards
  • Test And Evaluation

Fields of Study

  • Computer science
  • Engineering

Readers

  • Software Engineering
  • Software Engineering.
  • Software Verification and Validation.