What current standards cover the content previously addressed by MIL-STD-498?

What current standards cover the content previously addressed by MIL-STD-498?

This article first appeared on Quora.com in August 2019

ISO/IEC TR 19759 Software Engineering — Guide to the software engineering body of knowledge (SWEBOK) includes a brief description of its development:

In 1990, planning for an international standard with an overall view was begun. The planning focused on reconciling the software process views from IEEE Std. 1074 and the revised US DoD standard 2167A. The revision was eventually published as DoD Std. 498. The international standard was completed in 1995 with designation, ISO/IEC 12207, and given the title of Standard for Software Life Cycle Processes. Std. ISO/IEC 12207 provided a major point of departure for the body of knowledge captured in this book.

From 1996 to 1998 IEEE and EIA together published the three-part standard IEEE/EIA 12207 Industry Implementation of International Standard ISO/IEC 12207: 1995 (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes, with part IEEE/EIA 12207.0 (87 pages) containing ISO/IEC 12207 in its original form with six additional annexes (E through J), and part IEEE/EIA 12207.1 (37 pages) about Life cycle data, and part IEEE/EIA 12207.2 (111 pages) about Implementation considerations.

This three-part IEEE/EIA 12207 was adopted by US DoD in May 1998 while at the same time canceling MIL-STD-498.

The abstract of IEEE/EIA 12207.0 states: ISO/IEC 12207 provides a common framework for developing and managing software. IEEE/EIA 12207.0 consists of the clarifications, additions, and changes accepted by the Institute of Electrical and Electronics Engineers (IEEE) and the Electronic Industries Alliance (EIA) as formulated by a joint project of the two organizations. IEEE/EIA 12207.0 contains concepts and guidelines to foster better understanding and application of the standard. Thus this standard provides industry a basis for software practices that would be usable for both national and international business. In the abstracts of the other two parts we can read: IEEE/EIA 12207.1 provides guidance for recording life cycle data resulting from the life cycle processes of IEEE/EIA 12207.0. IEEE/EIA 12207.2 provides implementation consideration guidance for the normative clauses of IEEE/EIA 12207.0. The guidance is based on software industry experience with the life cycle processes presented in IEEE/EIA 12207.0.

It is interesting to know the same people were involved with the development of MIL-STD-498, ISO/IEC 12207 and IEEE/EIA 12207.0-1996. The three parts of IEEE/EIA 12207 were designed such that process and data requirements were compatible with MIL-STD-498.

The first part IEEE/EIA 12207.0 was replaced in 2008 by ISO/IEC 12207 Systems and software engineering — Software life cycle processes. The introduction states: Changes in this revision of ISO/IEC 12207 were developed in conjunction with a corresponding revision of ISO/IEC 15288. The purpose of these revisions is to better align the two International Standards to facilitate their joint use. This alignment is the first step toward harmonization of the structures and contents of the two International Standards, while supporting the requirements of the assessment community. […] This standard replaces IEEE/EIA 12207.0-1996 […]. Users of the earlier standard may be interested to know what will happen to its companions, IEEE/EIA 12207.1-1996 and IEEE/EIA 12207.2-1997. There is currently a project underway to replace IEEE/EIA 12207.1 with an adoption of ISO/IEC 15289. Completion of the current project will render IEEE/EIA 12207.2 obsolete; it will probably be withdrawn unless there is a demonstration of interest to revise it. According to the IEEE web page, the third part IEEE/EIA 12207.2 was superseded by ISO/IEC 12207:2008 as well. That’s where in my opinion a lot of valuable information got lost (we’ve seen the same kind of loss from MIL-STD-499 to the most recent ISO 15288 and ISO 24748 while dropping ISO 26702, but that’s another story).

ISO/IEC/IEEE 15289 Systems and software engineering — Content of life-cycle information products (documentation) states in its introduction: This International Standard is based on the life-cycle processes specified in ISO/IEC 12207:2008 […], ISO/IEC 15288:2008 […] and the service management processes specified in ISO/IEC 20000-1:2005. […] IEEE contributed IEEE 12207.1-1997 […] as a source for this International Standard.

But also IEEE by themselves had a couple of standards which were derived or at least influenced by MIL-STD-498. E.g. IEEE Std 1362-1998 Guide for Information Technology - System Defition - Concept of Operations (ConOps) Document states under section History: This ConOps guide originated in October 1993, as a Master of Science thesis at California State University, Sacramento, and was supported by the U.S. Office of Research and Development. It was accepted as MIL-STD-498, Data Item Description (DID), by the DoD-Std-2167A Harmonizing Working Group with few changes. MIL-STD-498-1995 became IEEE Std 1498-1995, which was redesignated J-STD-016-1995. The latter standard was again a precursor of the already mentioned three-part IEEE/EIA 12207. Yet another well-known standard is the IEEE Std 1233-1998 Guide for Developing System Requirements Specifications which essentially is an addition to IEEE/EIA 12207.0 and IEEE/EIA 12207.1. Some of these standards have been considered for or integrated into ISO/IEC/IEEE 29148 Systems and software engineering — Life cycle processes — Requirements engineering. Its introduction states: This International Standard provides a unified treatment of the processes and products involved in engineering requirements throughout the life cycle of systems and software. This International Standard is the result of harmonization of the following sources […] IEEE Std 830, IEEE Std 1233, IEEE Std 1362 […].

Conclusion

Whatever survived from MIL-STD-498 continues to live on in ISO/IEC 12207, ISO/ISE 15289, ISO/IEC/IEEE 29148 and ISO/IEC TR 19759. All four are still active with recent updates in 2017, 2018 and 2015.

The following diagram (which I found in this Northrop Grumman presentation: https://slideplayer.com/slide/5231045/) gives a nice overview of the evolution from military to commercial standards over the years: