The United States Department of Defense (DoD) spends approximately ten billion dollars annually on software costs for major defense systems. The cost is expected to increase yearly, along with schedule slips and performance problems with systems development. This paper discusses the efforts by the DoD to meet the demands of future software growth, as well as improving software systems reliability.
The paper is divided into five sections: an introductory section discusses the defense systems of the near future (1990s) and the technical solutions needed, followed by discussion of the centralized initiatives of the Ada program, the STARS program, and the Software Engineering Institute (SEI). The paper concludes with a section on the mechanism for transferring Ada technology to industry.
Defense systems of the future will be characterized by powerful, multiprocessor, networked, and parallel computer architectures. While the cost of computer hardware will decrease, the amount of data processed will increase. Additionally, the databases will be distributed. This complexity needs to be controlled by greater use of automation, higher levels of abstraction, reusable software, and through rapid prototyping of critical portions of the software early in the development cycle. These approaches are centralized into the Ada, STARS, and SEI initiatives.
The section on the Ada program briefly discusses the evolution of Ada, the compiler validation policy, and the standardization and adoption of Ada in the US as well as in Europe. This section also discusses the Ada Programming Support Environments (APSEs), including the Kernel APSE (KAPSE) and the Common APSE Interface Set (CAIS). Standardization of tool interfaces by means of the intermediate language DIANA is briefly discussed, along with the Evaluation and Validation (E&V) Project, which is assessing the performance of APSEs. The efforts to establish conventions, criteria, and guidelines for Ada run-time environments are also presented. The section on Ada Education and Training discusses whether Ada programmers should be certified, as well as the information needed to estimate training costs.
The section on the STARS program discusses the efforts to further technology insertion and industry leadership in Ada. Emphasis will be placed on the development of alternative Ada-based software engineering models that can provide a stronger basis for the creation and evolution of large, complex, real-time software systems. The four components of the STARS program are Demonstration (“Shadow”) Projects, Technology Projects, Product Development Projects, and Special Research Projects. A number of Demonstration Projects are mentioned, including the Common Ada Missile Package (CAMP) by Lockheed.
The section on the SEI addresses the problem of the transition of products and methods to actual practice. This will be accomplished by work in Ada and Embedded Systems, Software Engineering Process, Next-Generation Environments, the Technology Transition Process, and Showcase Engineering. A number of technology transition mechanisms are covered, along with the understanding of the inhibitors to information transfer.
The paper is very clearly organized and easy to read. The accompanying references clearly support the material presented in the paper. A number of these (e.g., [1,2]) should appear on the bookshelf of every software engineer. The paper is highly recommended reading for anyone who is concerned with the efforts of the DoD to advance the state of software engineering, while obtaining the best software product for the tax dollar.