Form P035-0388b MARIMP88.TXT Ada Information Clearinghouse, 1-800-AdaIC-11 (232-4211), 703/681-2466 MARINE CORPS Ada IMPLEMENTATION PLAN (AIP) 9 MARCH 1988 DEPARTMENT OF THE NAVY HEADQUARTERS UNITED STATES MARINE CORPS WASHINGTON, D.C. 20380-0001 IN REPLY REFER TO 5000 CCP-50 9 MAR 1988 From: Commandant of the Marine Corps To: Director, Department of the Navy Information Resources Management Subj: MARINE CORPS Ada IMPLEMENTATION PLAN (AIP) Ref: (a) DONIRM 1tr 5201 DONIRM (c) No.57 dtd 1Feb88 Encl: (1) USMC Ada Implementation Plan 1. The enclosure is forwarded as requested by the reference for your review and approval. 2. The enclosure has been coordinated with the Commander, Space and Naval Warfare Systems Command to assure consistency with the Navy AIP. There are no outstanding issues. 3. Point of contact for further information is Capt Doug Smith, CCP-50, extension 44522. R. L. PHILLIPS Brigadier General, U.S. Marine Corps Director, Command and Control, Communications and Computer (C4) Division, C412 Department - cover - Ada IMPLEMENTATION PLAN UNITED STATES MARINE CORPS HEADQUARTERS, U.S. MARINE CORPS (CCP-50) WASHINGTON, DC 20380-0001 4 MARCH 1988 - title - USMC Ada IMPLEMENTATION PLAN ***************************************************************** HEADQUARTERS, UNITED STATES MARINE CORPS Date Submitted: 9 MAR '88 ___________________________________ Director, Command and Control, Communication and Computer Division By Direction ***************************************************************** Date Reviewed: _________________ __________________________________ Director, Department of the Navy Information Resources Management ***************************************************************** Date Approved: __________________ __________________________________ Assistant Secretary of the Navy (Research, Engineering & Systems) - i - USMC Ada IMPLEMENTATION PLAN TABLE OF CONTENTS 1.0 INTRODUCTION................................................1 1.1 Purpose................................................1 1.2 Scope..................................................1 1.3 Requirement............................................1 1.3.1 For All Systems.................................1 1.3.2 For Mission-Critical Computer Resources.........2 1.3.3 For Information Systems.........................2 1.4 Background.............................................3 1.5 Ada Joint Program Office...............................3 1.6 Management.............................................4 1.6.1 Secretary of the Navy...........................4 1.6.2 Commandant of the Marine Corp...................4 1.6.3 Marine Corps Research, Development and Acquisition Command.............................4 1.6.4 Marine Corps Central Design and Programming Activities/Information Systems Management Officers........................................5 1.6.5 Marine Corps Tactical Systems Support Activity........................................5 1.7 Plan Organization......................................5 2.0 MISSION-CRITICAL COMPUTER RESOURCES.........................5 2.1 Navy Standard Computers................................5 2.2 Non-Navy-Standard NDI (Non-Development Item) Computers.6 2.3 NDI Software...........................................6 2.4 Software Support.......................................6 3.0 INFORMATION SYSTEMS.........................................7 4.0 Ada TRAINING................................................7 4.1 Programmer/Software Engineer Training..................7 4.2 Manager Training.......................................8 5.0 FUTURE DIRECTIONS...........................................8 APPENDIX A - SYSTEMS USING Ada..................................9 A.1 Mission-Critical Systems...............................9 A.2 Information Systems....................................9 APPENDIX B - DEFINITIONS.......................................10 APPENDIX C - ACRONYMS..........................................11 - ii - USMC Ada IMPLEMENTATION PLAN 1.0 INTRODUCTION The Marine Corps is committed to Ada as its primary computer programming language for all Marine Corps computer software. Ada, its support environments, and the software engineering principles they embody offer the Marine Corps many benefits, including the following: improved software quality; increased programmer productivity; decreased development, repair, and upgrade times through software reuse; and reduction in support and maintenance costs through commonality, portability, and readability. 1.1 Purpose This plan describes the current, status of Ada in the Marine Corps and details the Marine Corps' approach to completing the implementation of Ada as its single, common programming language. 1.2 Scope This plan applies to all systems developed, procured, or supported by the Marine Corps that utilize computer software, firmware or hardware. 1.3 Requirements The use of Ada in Marine Corps systems is governed by guidance from the Department of Defense, the Secretary of the Navy, and the Commandant of the Marine Corps. This plan, and the Marine Corps' use of Ada are based on the following directives, instructions, orders and standards: 1.3.1 For all systems: (1) DOD Directive 3405.1, "Computer Programming Language Policy," April 2, 1987. This directive states broad policy for the use of standard programming languages, with specific emphasis on Ada. (2) SECNAVINST 4210.7A, "Effective Acquisition of Navy Material," January 16, 1987. This instruction addresses the policy to promote more effective material acquisition through the use of non-development items (NDI) to fulfill Navy and Marine Corps requirements. (3) MIL-STD-1815A, "Ada Programming Language," February 17, 1983. This standard provides the complete technical description of the Ada programming language and its background chronology. - 1 - USMC Ada IMPLEMENTATION PLAN 1.3.2 For Mission-Critical Computer Resources: (1) DOD Directive 3405.2, "Use of Ada in Weapon Systems," March 30, 1987. This directive establishes the Ada programming language as "the single common computer language for Defense computer resources used in intelligence systems, for the command and control of military forces, or as an integral part of a weapon system." It also requires designation of an Ada executive official, designation of an Ada waiver control officer, and the development of this Ada Implementation Plan. (2) DOD Directive 5000.29, "Management of Computer Resources in Major Defense Systems," April 26, 1976. This directive contains the original requirement for the use of an approved high order programming language, and was the basis for language standardization prior to DOD Directives 3405.1 and 3405.2. (3) SECNAVINST 5200.32, "Management of Embedded Computer Resources in Department of the Navy Systems," June 11, 1979. This instruction implemented DODD 5000.29 in the Department of the Navy (DON), and tasked the Commandant of the Marine Corps (CMC) with implementation for the Marine Corps. (4) MCO 5200.23A, "Management of Mission-Critical Computer Resources in the Marine Corps," December 30, 1986. This order implements DODD 5000.29 and SECNAVINST 5200.32 within the Marine Corps. It states the Marine Corps policy of establishing Ada as the single, standard language for mission-critical system software. This order will be updated to reflect the new requirements of DOD Directives 3405.1 and 3405.2 and the migration of mission-critical computer resource (MCCR) policy implementation from Headquarters, Marine Corps (HQMC) to the Marine Corps Research, Development and Acquisition Command (MCRDAC). 1.3.3 For Information Systems: (1) SECNAVINST 5231.1B, "Life Cycle Management Policy and Approval Requirements for Information Systems Projects," March 8, 1985. This instruction clarifies the mission-critical/information systems split and tasks CMC to implement life cycle management (LCM) and publish documentation requirements. (2) MCO P5231.1A, "Life Cycle Management for Information Systems Projects (LCM-IS)," September 17, 1987. This order implements SECNAVINST 5231.1B and establishes policies for the development, implementation, operation, and management of information systems projects, including the establishment of Ada as the primary high-order language. (3) MCO 5271.1, "Information Resources Management (IRM) Standards and Guidelines Program," September 19, 1986. This order authorizes the development and distribution of technical publications, including IRM-5234-01. - 2 - USMC Ada IMPLEMENTATION PLAN (4) IRM-5234-01 w/Ch 1, "Information Resources Management (IRM) Programming Standard," January 14, 1988. This standard contains coding standards for programs written in Ada. 1.4 Background The Ada language standardization effort was stared in 1975 because of the increasingly large cost associated with the development and maintenance of computer software. The problem was further aggravated by the proliferation of languages, dialects, and support tools. This software may have been optimal for given requirements, but its value over the life cycle of the system was dwarfed by the costs of training, configuration control, maintenance, support, and lack of interoperability or reuse. The Marine Corps has long been a proponent of computer programming language standardization, and has been formally encouraging the use of Ada since 1982, with the publication of MCO 5200.23. The Marine corps has traditionally relied on the Navy Standard Embedded Computer Resources (SECR) program as its primary source for mission-critical computing hardware. In 1982 the Navy started work on Ada Language System/Navy (ALS/N), the Ada capability for SECR, but funding cuts slowed this development. This slowed the introduction of and conversion to Ada in Marine Corps programs. MCO 5200.23A, published 30 December 1986, went beyond encouraging the use of Ada to requiring it on all mission- critical new starts and major upgrades. Deviations/waivers have been granted on a case-by-case basis for the use of CMS-2 on SECR and for the use of other approved high order languages where validated Ada compilers have not been available. MCO P5231.1A, published 17 September 1987, formally encouraged the use of Ada in non-mission-critical Information Systems as well. 1.5 Ada Joint Program Office Marine Corps representation in the Ada Joint Program Office (AJPO) is accomplished through the Navy Deputy Director. Although there are no direct program ties between Marine Corps programs and the AJPO, the Marine Corps derives several benefits from the work of the AJPO. The biggest benefits for the Marine Corps are the maintenance of the Ada language standard, and the Ada compiler validation capability. Only those compilers that have been validated to conform to the Ada language standard by the AJPO are used by the Marine Corps. Aside from ALS/N, validated compiler availability has increased tremendously in the last two years, going from only 14 to over 140 host-target combinations. The Marine Corps also draws on the AJPO's Information Clearinghouse, and expects the Common APSE (Ada Programming Support Environment) Interface Set (CAIS) validation efforts to be useful as well. - 3 - USMC Ada IMPLEMENTATION PLAN 1.6 Management The management of Ada in the Marine Corps is evolving with the creation of the Marine Corps Research, Development and Acquisition Command. Previously, mission-critical computer resource policy and implementation were accomplished for the Commandant by the Command and Control, Communications and Computer Division (C4) at Headquarters, Marine Corps. Information systems (IS) policy originates in C4 as well, with implementation taking place at the Marine Corps Central Design and Programming Activities (CDPAs) and by individual command Information Systems Management Officers (ISMOs). With the creation of MCRDAC, however, the development and acquisition of tactical systems and the related implementation of Ada in them is being consolidated at MCRDAC. 1.6.1 Secretary of the Navy The focal point for all Ada activities in both the Navy and the Marine Corps is the Director, Department of the Navy Information Resources Management (DONIRM), who is the Ada Executive for the Department of the Navy in support of the Assistant Secretary of the Navy (Research, Engineering and Systems). 1.6.2 Commandant of the Marine Corps The Director, Command and Control, Communications and Computer (C4) Division, within the Command and Control, Communications, Computer, Intelligence and Interoperability (C4I2) Department, is the Headquarters, Marine Corps focal point for Ada. The C4 Division sets policy for hardware, firmware, and software for both tactical (Code CCP, AV 224-4522) and non-tactical (Code CCI, AV 224-8041) computer resources, as well as coordinating all Ada training for the Marine Corps (Code CCIR, AV 224-1927). 1.6.3 Marine Corps Research, Development and Acquisition Command The Commanding General, Marine Corps Research, Development and Acquisition Command (CG, MCRDAC) has been designated as the Marine Corps Ada Waiver Control Officer by the Under Secretary of the Navy, per DODD 3405.2. CG, MCRDAC will exercise deviation/waiver control of firmware and hardware also, and be assigned responsibility for implementation of and compliance with Marine Corps overall MCCR policy. Maintenance and update of this plan will be the responsibility of MCRDAC. MCRDAC is also the logistic element manager (LEM) for computer resources in the Marine Corps. In accordance with forthcoming orders in the 5200.23, 5000.10, 4105, and 4130 series, the CG, MCRDAC will formally designate the software support activity (SSA) for each program no later than Milestone I. Once designated, if not before, the SSA becomes the LEM for software support, which is a sub-element of the computer resource element. MCO 5200.32A will be revised to reflect this structure, and will also require semiannual reporting of all deviation/waiver actions by MCRDAC. - 4 - USMC Ada IMPLEMENTATION PLAN 1.6.4 Marine Corps Central Design and Programming Activities/Information Systems Management Officers Marine Corps Information Systems Ada policy is implemented for major Marine Corps-wide systems by the three Central Design and Programming Activities (CDPAs). The implementation of Ada policy in local systems is done at each major command by Information Systems Management Officers (ISMOs). 1.6.5 Marine Corps Tactical Systems Support Activity The Marine Corps Tactical Systems Support Activity (MCTSSA) is the only mission-critical software support activity organic to the Marine Corps, and is responsible to the Commandant (with the Deputy Chief of Staff for Research, Development and Acquisition exercising staff cognizance) through the CG, MCRDAC. The Commanding Officer, MCTSSA is responsible, in conjunction with program managers at MCRDAC, for building and maintaining an Ada support capability. MCTSSA, when designated as the SSA, is the LEM for software support, and as such will work closely with program managers at MCRDAC to ensure the supportability of systems procured for the Marine Corps. 1.7 Plan Organization The next two sections of this plan, Sections 2 and 3, separate the aspects of Ada implementation that are peculiar to tactical (mission-critical) systems and non-tactical (information) systems. Section 4 discusses combined Ada training in the Marine Corps, and Section 5 concludes the plan with expectations and concern for the future. Definition, acronyms, and a list of systems being developed in Ada are provided in the appendixes. 2.0 MISSION-CRITICAL COMPUTER RESOURCES Marine Corps mission-critical computer resource (MCCR) policy is headed by the Planning and Interoperability Branch (CCP), Command and Control, Communications and Computer (C4) Division, command and Control, communications, Computer, Intelligence and Interoperability (C412) Department, Headquarters, Marine Corps. Implementation of this policy is handled by MCRDAC. 2.1 Navy Standard Computers The Marine Corps prefers to use the computers developed by the Navy SECR Program (AN/AYK-14, AN/UYK-43, and AN/UYk-44) for mission-critical applications. The expected Ada support for the Navy Standard computers is ALS/N. The Navy projects ALS/N will not be available to fully support the Navy standard computers until 1990. Deviations/waivers have been and will continue to be granted on a case-by-case basis for the use of CMS-2 on SECR until Ada is available. The Marine Corps policy in these cases is to emphasize the use of an Ada program design language (PDL), - 5 - USMC Ada IMPLEMENTATION PLAN and to strive for a design that will allow easy conversion to Ada once ALS/N is available. A secondary result of the ALS/N delay has been greater consideration of non-SECR computers which do have Ada capability, as discussed below. 2.2 Non-Navy-Standard NDI (Non-Development Item) Computers Marine Corps policy permits the use of previously developed non-SECR computers that are already logistically supported within the DOD and have validated Ada compilers. This prevents further delay in the use of Ada, and reduces the impact of introducing new computer hardware into the Marine Corps inventory by ensuring training, integrated logistic support planning, and technical documentation needs have already been provided for. 2.3 NDI Software The Marine Corps prefers using previously developed software that performs satisfactorily over new development in Ada because of the savings in life-cycle costs. This includes both DOD maintained software and commercial software. The use of any commercial software requires a deviation/waiver request to MCRDAC with justification to ensure resolution of maintenance issues. Although this policy allows continued (but restricted) proliferation of languages present in mission-critical systems, the benefits of reduced development time, cost, risk, testing, and latent error corrections outweigh the cost of continued support of a non-Ada environment. When an adequate base of reusable Ada software exists in the future, it will be reasonable to require all software, NDI or not, to be in Ada. 2.4 Software Support As discussed in Section 1.6.5, MCTSSA is the only MCCR SSA organic to the Marine Corps. (Software Support Activities of other services are frequently used for joint programs.) MCTSSA has been designated as the SSA for two programs currently using Ada, and is developing an Ada capability sufficient to support those programs. Computer resource transition and support costs are planned, programmed, and budgeted for by MCRDAC program managers in conjunction with MCTSSA. The Marine Corps Software Support Personnel Requirements Model (SSPRM) is used to predict personnel requirements for software support at the SSA. - 6 - USMC Ada IMPLEMENTATION PLAN 3.0 INFORMATION SYSTEMS Marine Corps information systems (IS) policy is headed by the Information Resources Management Branch (CCI), Command and Control, Communications and Computer (C4) Division, Command and Control, Communications, Computer, Intelligence and Interoperability (C412) Department, Headquarters, Marine Corps. Current policy for Marine Corps ISs states that DOD approved high order languages (HOL) will be used in all application programs. The Ada programming language will be used where cost-effective in keeping with the long-range goal of establishing Ada as the primary DOD HOL. (See Appendix A for a list of information systems being developed in or converted to Ada.) In addition to the conversion of these class IA (microcomputer) systems, the Marine Corps hopes to use the Ada support capability of the World-Wide Military Command and Control System (WWMCCS) Information System (WIS). 4.0 Ada TRAINING The training needed to support the full use of Ada in the Marine Corps falls into three basic categories: introductory coder/programmer training, advanced software engineer training, and concepts/benefits training for managers. A combination of methods and sources are currently being used to provide for these needs. As discussed in section 1.6.2, HQMC is responsible for coordinating all Ada training in the Marine Corps. 4.1 Programmer/Software Engineer Training Training for the actual users of Ada, the programmers and software engineers, needs to cover the language itself, the principles of software engineering, and the individual APSE and runtime environment being used. The bulk of this training has been provided by Air Force instructors from Keesler Technical Training Center (KTTC), Biloxi, MS, both on-base at Keesler and by Mobile Training Teams (MTTs). This has been augmented by commercial courses in software reuse and software engineering. The Marine Corps currently has only a few qualified Ada programmers and software engineers. This small number, and the fact that actual use of Ada by Marines in Marine Corps projects (as opposed to planned use or work done by contractors in support of the Marine Corps) only began in 1987 makes it difficult to accurately forecast future steady-state requirements, but estimates range from 10 to 30 trainees per year. The Marine Corps Computer Sciences School (MCCSS) in Quantico, Virginia has recently completed a study on how to best provide this training, given the requirements of both information systems (CDPAs/ISMOs) and mission-critical systems (MCTSSA). The study recommends a formal course of instruction at MCCSS taught by Air Force Instructors from KTTC. Marines who have received Ada training and qualify are awarded the additional military occupational specialty (MOS) 4067, Ada Programmer. - 7 - USMC Ada IMPLEMENTATION PLAN 4.2 Manager Training Manager-type training in the Marine Corps has been provided more on an individual need basis. The Special Education Program at the Naval Postgraduate School, Monterey, CA provides the necessary education for those officers going to billets that require a Masters degree in Computer Science and Computer Systems Management. The KTTC resident and MTT courses, as well as commercial offerings, have been used to provide training to other managers and staff. A more formal management training structure is expected to be developed as an adjunct to the Ada programmer training that results from the MCCSS study. 5.0 FUTURE DIRECTIONS The Marine Corps is moving firmly in the direction of establishing Ada as its primary computer language, for both tactical and non-tactical systems. The pace of introduction is expected to quicken as Ada support environments mature and the installed base of Ada grows. The use of validated Ada compilers on ruggedized and mil-spec commercial NDI hardware where SECR is not appropriate will be the leading edge of Ada in the Marine Corps until the availability of the ALS/N. The second generation of Ada compilers beginning to appear in the marketplace will provide improved compiler and produced code efficiency in terms of speed and size. Commercial and world-wide use of Ada will lead to further maturity and continued adaptation of advances in software development methodology, as well as providing a large base of Ada software for reuse. Computer-aided software engineering (CASE) products are expected to be adopted by the Marine Corps, as is the CAIS. The combination of these factors are expected to lead to increased software quality and reuse, providing decreased software development, testing and repair time and cost. - 8 - USMC Ada IMPLEMENTATION PLAN APPENDIX A - SYSTEMS USING Ada The following systems plan to use Ada or are currently being developed/upgraded using Ada: A.1 Mission-Critical Systems Advanced Tactical Air Command Central (ATACC) Ground-Air Telerobotics Systems (GATERS) Airborne Remotely-Operated Vehicle (AROD) Teleoperated Vehicle (TOV) Joint Service Imagery Processing System (JSIPS) Joint Tactical Information Distribution System (JTIDS) Light Armored Vehicle - Air Defense (LAV-AD) Mobile Electronic Warfare Support System (MEWSS) Tactical Intelligence Management System (TIMS) Tactical Remote Sensor System (TRSS) A.2 Information Systems Allotments (ABA) Aviation Training Readiness Info Management System (ATRIMS) Charities Deployed Pay MAGTF Lift Model Maintenance Material Management (3M) Marine Corps Integrated Material Management System (MIMMS) Message Editing and Processing System (MEPS) Military Payroll List/Military Payroll Vouchers (MPL/MPV) Naval Flight Record Subsystem (NAVFLIRS) Payment Option Election (POE) Standard Embarkation Management System (SEMS) Supported Activity Supply System (SASSY) Transcript of Data Extraction (TODE) Treasury Tape Unit Diary Weapons Tactics Instruction (WTI) - 9 - USMC Ada IMPLEMENTATION PLAN APPENDIX B - DEFINITIONS Deviation/Waiver. Exceptions to MCCR policy whose approval is requested prior to the production of a mission-critical system are considered deviations. Exceptions requested after production has begun are considered waivers. (MCO 5200.23A) Information Systems. A collection of functional and technical personnel, procedures, and equipment which is designed, built, operated and maintained to collect, record, process, store retrieve, and display information. (MCO P5231.1) Mission-Critical Computer Resources. Computer resources required for the conduct of the military mission of the DOD. This includes embedded computer resources used in mission-critical systems as well as those ADPE or ADP services related to mission-critical systems. (MCO 5200.23A) Non-Development Items. Already developed and available hardware and/or software that are capable of fulfilling Department of the Navy requirements, thereby minimizing or eliminating the need for costly, time-consuming Government-sponsored research and development (R&D) programs. NDI is usually off-the-shelf or commercial-type products, but may also include equipment already developed by or for the Department of the Navy, other military services or foreign military services. (SECNAVINST 4210.7A) - 10 - USMC Ada IMPLEMENTATION PLAN APPENDIX C - ACRONYMS ABA Allotments ADP automatic data processing ADPE automatic data processing equipment AJPO ADA Joint Program Office ALS/N Ada Language System/Navy AN/AYK airborne data processing computer AN/UYK general utility data processing computer APSE Ada programming support environment AROD Airborne Remotely-Operated Vehicle ATACC Advanced Tactical Air Command Central ATRIMS Aviation Training Readiness Info Management System CAIS Common APSE Interface Set CASE computer aided software engineering CCP Planning and Interoperability Branch, HQMC CDPA Central Design and Programming Activity CG Commanding General CMC Commandant of the Marine Corps CMS-2 Compiler Monitor System 2 C4 Command and Control, Communications and Computer Division, HQMC C4I2 Command and Control, Communications, Computer, Intelligence and Interoperability Department, HQMC DOD Department of Defense DODD Department of Defense Directive DON Department of the Navy DONIRM Department of the Navy Information Resources Management GATERS Ground/Air Telerobotics System HQMC Headquarters, US Marine Corps HOL high-order language IRM information resources management IS information systems ISMO Informations Systems Management Officer JSIPS Joint Service Imagery Processing System JTID Joint Tactical Information Distribution System KTTC Keesler Technical Training Center, Biloxi, MS LAV-AD Light Armored Vehicle - Air Defense LCM life cycle management LEM logistic element manager 3M Maintenance Material Management MAGTF Marine Air Ground Task Force MCCR mission-critical computer resources MCCSS Marine Corps Computer Sciences School MCO Marine Corps Order MCTSSA Marine Corps Tactical Systems Support Activity MCRDAC Marine Corps Research, Development and Acquisition Command MEPS Message Editing and Processing System MEWSS Mobile Electronic Warfare Support System MIL-STD military standard MIMMS Marine Corps Integrated Material Management System MOS military occupational specialty MPL/MPV Military Payroll List/Military Payroll Vouchers - 11 - USMC Ada IMPLEMENTATION PLAN APPENDIX C - ACRONYMS MTT mobile training team NAVFLIRS Naval Flight Record Subsystem NDI non-development item PDL program design language POE Payment Option Election SASSY Supported Activity Supply System SECNAVINST Secretary of the Navy Instruction SECR Standard Embedded Computer Resources Program SEMS Standard Embarkation Management System SSA software support activity SSPRM Software Support Personnel Requirements Model TIMS Tactical Intelligence Management System TODE Transcript of Data Extraction TOV Teleoperated Vehicle TRSS Tactical Remote Sensor System WIS WWMCCS Information System WTI Weapons Tactics Instruction WWMCCS World-Wide Military Command and Control System - 12 - ********************** Ada Information Clearinghouse (AdaIC) P.O. Box 1866 Falls Church, VA 22204 Telephone: 1-800-AdaIC-11 (1-800/232-4211) or 703/681-2466 Fax: 703/681-2869 E-mail: adainfo@sw-eng.falls-church.va.us The AdaIC is sponsored by the Ada Joint Program Office and operated by IIT Research Institute.