An Overview of DOD-STD- 1838A (proposed), The Common APSE Interface Set, Revision A Robert Munck The MITRE Corporation Patricia Obemdorf Naval Ocean Systems Center Erhard Ploedereder, Ph.D. Tartan Laboratories Richard Thai1 SofTech Abstract A five-year effort under the Ada Joint Program Office has developed a proposed standard for a host system inter- face as seen by tools running in an Ada Programming Support Environment (APSE). Standardization of this interface as DOD-STD-1838A will have a number of desir- able effects for the Department of Defense, including tool portability, tool integration, data transportability, encouragement of a market in portable tools, and better programmer productivity. As the capability of tools to communicate with each other is a central requirement in APSES, the Common APSE Interface Set (CATS) has paid particular attention to facili- tate such communication in a host-independent fashion. CAIS incorporates a well-integrated set of concepts tuned to the needs of writers and users of integrated tool sets. This paper covers several of these concepts: the entity management system used in place of a tradi- tional filing system, object typing with inheritance, process control including atomic transactions, access control and security, input/output methods, support for distributed resource control, and facilities for inter-system data transport. Background Early in the development of the Ada language, it was recognized that a computer-based programming support environment was a practical necessity for Ada program- Permission to copy without fee all or pan of this material is granted provided that the copies are not made or distributed for direct commercial advantage. the ACM copyright notice and the title of the publication and its date appear. and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish. requires a fee and/ or specific permission. 01988 ACM 0-89791-290-X/88/001 l/O235 $1.50 mers. It is now clear that many of the promised advan- tages of Ada, including reusability of code and ease of maintenance, would require a level of commonality in the programming environment similar to that provided by the language. This results from the fact that the product of a programming project is not a single executable-form module, but a large, inter-related set of source files, design documents, test plans, and many other kinds of information that must also be present as part of the final product; some of these sets will be drawn from libraries of reusable components. Moreover, the tools that the original programmers use to store and manipulate these files and relationships among files must also be available to their successors who wish to reuse or maintain the product. The concept of an Ada Programming Support Environ- ment was well developed in the “Stoneman” document [STONEMANgO]. It specifies an architecture containing an identifiable interface between code having local host or operating system dependencies and code that would be portable from one host to another. The code implement- ing this interface is called the Kernel APSE or KAPSE. The following text from the CAIS Reader’s Guide fCAIS871 describes the DOD effort to develop a standard for that interface: “When DOD started procuring tools for the Ada pro- gram, it did not restrict itself to procuring individual tools. Rather, the DOD embarked upon the procure- ment of APSES. Two procurements were started: one by the Army, called the Ada Language System CALS), and the other by the Air Force, called the Ada Inte- grated Environment (AIE). Unfortunately, the inter- faces provided (by) the KAPSE . . . were different in these two APSES. Because of divergent approaches at the KAPSE interface level by the ALS and AIE contrac- tors, a team was formed . . . to define more specific KAPSE interface requirements. This team is the KAPSE Interface Team (KIT) and is chaired by the Naval Ocean Systems Center (NOSC), a Navy labora- tory. Added to the KITwas the KAPSE Interface Team from Industry and Academia (KITIA). The KIT/KITIA (produced) DOD-STD-1838, the Military Standard Com- mon Ada Programming Support Environment (APSE) Interface Set.” [CAIS86] 235