home *** CD-ROM | disk | FTP | other *** search
- This file contains a copy of DoD Directive
- 5000.31 which was circulated with USDRE
- DeLauer memorandum of 06/10/83.
- (Ada IC point of contact: Greg Kee)
-
-
- DEPARTMENT OF DEFENSE DIRECTIVE 5000.31
-
- SUBJECT: Computer Programming Language Policy
-
- References: (a) DoD Instruction 5000.31, "Interim List of DoD
- Approved High Order Programming Languages,"
- November 24, 1976 (hereby canceled)
- (b) DoD Directive 5000.29, "Management of Computer
- Resources in Major Defense Systems." April 26,
- 1976 [Under Revision]
-
-
- A. REISSUANCE AND PURPOSE
-
- This Directive replaces reference (a) and specifies the computer
- programming languages authorized for use in Defense mission critical
- applications. It provides both policy and procedures for the manage-
- ment and control of these programming languages and their associated
- programming support environments. It authorizes the publication of
- DoD 5000.31-M, a manual which prescribes guidance and procedures
- governing the management of computer programming languages and
- programming support environments.
-
- B. APPLICABILITY AND SCOPE
-
- 1. This Directive applies to the office of the Secretary of
- Defense, the Military Departments, the Organization of the Joint
- Chiefs of Staff, and the Defense Agencies (hereinafter collectively
- referred to as "DoD Components").
-
- 2. This Directive need not be applied retroactively to DoD
- systems for which a formal language commitment has been made in
- compliance with reference (a) before the effective date of this
- revision.
-
- C. DEFINITIONS
-
- Software engineering terms used in this Directive are defined in
- IEEE Standard 729-1983, "IEEE Standard Glossary of Software
- Engineering Terminology" or in reference (b).
-
- D. POLICY
-
- 1. The number of distinct programming languages used within DoD
- must be minimized.
-
- 2. All software developed for mission critical systems shall be
- developed and written in a programming language authorized by this
- Directive unless a waiver is obtained in accordance with this
- Directive. Waivers are required for the use of extensions or enhance-
- ments of authorized languages as well as for the use of unauthorized
- languages. Programming languages authorized for use in mission
- critical applications are set forth in Enclosure 1.
-
- 3. The configuration of programming languages approved for use in
- Defense systems must be controlled in accordance with appropriate
- configuration management directives.
-
- 4. The Ada* programming language shall become the single, common,
- computer programming language for Defense mission-critical
- applications. Effective January 1, 1984 for programs entering
- Advanced Development and July 1, 1984 for programs entering Full-Scale
- Engineering Development, Ada shall be the programming language. Only
- compilers which have been validated by the Ada Joint Program Office
- shall be used for software to be delivered to or maintained by the
- government.
-
-
- E. PROCEDURES
-
- 1. Control Agent.
-
- Each DoD-approved programming language is assigned to a
- designated control agency. The control Agency is responsible for
- maintaining a single standard definition of the assigned language and
- for making this definition document available as a Federal, DoD,
- military or adopted Industry Standard. For those languages, the
- definitions of which are industry standards controlled outside DoD, a
- DoD component is assigned for the required additional responsibilities
- and to represent DoD to the controlling organization. The control
- agency shall also be responsible for providing configuration control
- of the assigned language, and for gathering data and disseminating
- appropriate information regarding use of the language, its compilers
- and associated tools. The designated control agency for each
- authorized DoD language is set forth in Enclosure 1.
-
-
- 2. Waivers.
-
- a. A waiver need not be obtained for use of commercially
- available software for use in routine business or administrative
- applications (non-mission critical), or for use of an
- application-oriented (including problem-oriented) language, or for
- commercially available, off-the-shelf software if no modification of
- that software is anticipated over the life cycle.
-
- b. Waivers from the use of an approved programming language
- may be granted by the DoD Component only on a specific system or sub-
- system basis. The costs and risks associated with language prolifera-
- tion must be weighted against the waiver benefits accruing to the in-
- tended (sub)system. A summary of this analysis will be forwarded with
- each waiver granted to the Defense Computer Resources Board which will
- review Component-granted waivers and, within 30 days, may reverse or
- otherwise disapprove the waiver.
-
- 3. Addition or Deletion of Approved Languages.
-
- a. A Component may nominate a language for inclusion on the
- list of approved languages by submitting to the Defense Computer Re-
- sources Board a document which: (i) describes the language, (ii) pro-
- vides detailed rationale for adopting the language as a DoD-approved
- standard, (iv) sets forth an economic analysis of the impact of the
- language for its expected life-cycle, (v) includes a detailed plan for
- implementation and life cycle support of the language, and (vi) iden-
- tifies the DoD Component that will accept designation as Control
- Agency for the language.
-
- b. For deletions, the DoD Component nominating a language
- for removal from the list of approved languages will submit to the
- Defense Computer Resources Board a document which presents the
- rationale for deleting the language, including an impact analysis and
- a detailed plan for transitioning current programs which use the
- language to another of the approved languages.
-
- c. After receipt of the nomination document, the Defense
- Computer Resources Board will distribute the nominating document, re-
- quest dissenting reports, and schedule a briefing by the nominating
- DoD Component.
- d. The Defense Computer Resources Board will act upon the
- nomination within 60 days of the briefing by the nominating DoD Compo-
- nent.
-
- e. Appeals to decisions regarding the acceptance or re-
- jection of nominations may be submitted via the appropriate chain of
- command to the Office of the Under Secretary of Defense for Research
- and Engineering.
-
-
- F. RESPONSIBILITIES
-
-
- 1. The DEPUTY UNDER SECRETARY OF DEFENSE (RESEARCH AND ADVANCED
- TECHNOLOGY) shall be the DoD Senior Official for all activities
- related to this Directive and shall:
-
- a. Oversee, coordinate and implement the policies and
- procedures of this Directive;
-
- b. Advise the Office of the Secretary of Defense on all
- matters related to this Directive; and
-
- c. Be the authority for adding or deleting computer languages
- to or from the authorized list.
-
-
- 2. The HEADS OF THE DOD COMPONENTS shall:
-
- a. Implement this Directive within their respective
- organizations.
-
- b. Institute procedures and coordinate with the Defense
- Computer Resources Board.
-
- c. Designate a computer language Waiver Control Officer(s)
- who shall have responsibility for implementation of the waiver
- provisions and procedures of this Directive.
-
- d. Designate coordinating offices for each approved language
- which is of application interest, if their Component has not been
- assigned as control agent for it.
-
- e. Prepare and maintain a plan for the introduction of Ada,
- and the phase-out of other languages from consideration for new
- programs, which shall be coordinated with the Ada Joint Program Office
- for incorporation into the Ada Program Management Plan.
-
- f. Ensure that the use of the Ada Programming language by
- their Component is consistent with the Component's Ada introduction
- plan, that use of Ada language is permitted on an unrestricted basis,
- and that the use of the Ada programming language is actively
- encouraged.
-
- g. Designate a language control officer for each language for
- which the Component is assigned as the Language Control Agent, such
- officer to have the authority and responsibility for proper support
- for all associated language control activities. Each language control
- officer is authorized to issue, upon approval of the Defense Computer
- Resources Board, a revised version of the assigned language in order
- to provide modifications and improvements in satisfaction of validated
- requirements, or to resolve ambiguities in the defining document.
- Such revised versions should not be issued more frequently than once a
- year.
-
- G. EFFECTIVE DATE AND IMPLEMENTATION
-
- This Directive is effective immediately. Components shall
- forward five copies of implementing documents to the Under Secretary
- Of Defense, Research and Engineering, prior to October 1, 1983.
-
-
- Enclosure-1
-
- 1. Approved Computer Programming Languages
-
-
-
-
- APPROVED COMPUTER PROGRAMMING LANGUAGES
- ----------------------------------------
-
- The DoD-approved Computer Programming Languages follow. In
- each case, the applicable standard is defined by the most recent
- official version of the designated document.
-
- 1. Ada; "Ada Programming Language", ANSI/MIL-STD-1815A,
- February,1983.
-
- Control Agency: American National Standards Institute
-
- DoD Control Agency: Ada Joint Program Office
-
- 2. CMS-2M "Computer Program Performance Specifications," NAVSEA
- 0967LP-598-2210, April 1982, and CMS-2Y; "CMS-2Y Programmers Reference
- Manuals M-5049, M-5044, April 15, 1981.
-
- Control Agency: Department of the Navy
-
- 3. JOVIAL (J73); Military Standard MIL-STD-1589B (USAF),
- 6 June 1980.
-
- Control Agency: Department of the Air Force
-
- 4. FORTRAN; "American National Standard X3.9-1978"
-
- Control Agency: American National Standards Institute
-
- DoD Control Agency: Department of the Air Force
-
- 5. COBOL; "American National Standard X3.23-1974"
-
- Control Agency: American National Standards Institute
-
- DoD Control Agency: Department of the Air Force
-
- NOTE: COBOL is to be used only for business or administrative
- applications. Consideration should be given to use of Ada where
- appropriate for machine independence.
-
- 6. Special Language for Automatic Test application: ATLAS and C/ATLAS;
- "IEEE Standard ATLAS Test Language," ANSI/IEEE Standard 416-1980; "IEEE
- Standard C/ATLAS Test Language, "IEEE Standard 716-1982; and "IEEE Standard
- C/ATLAS SYNTAX," IEEE Standard 717-1982.
-
- Control Agency: Institute of Electrical and Electronic
- Engineers
-
- DoD Control Agency: Department of the Navy
-
- End of List
- -----------