4.1.2 The relationship of the software development cycle phases with the products, reviews and audits, and baselines and Developmental Configurations required by Section 5 of this Standard are shown in Figure 2. Figure 2 reflects the sequential phases of a software development cycle, as well as the documentation which typically exists prior to initiating an iteration. During software development, more than one iteration of the software development cycle may be in progress at the same time. Each iteration represents a different version of the software. This process may be described as an “evolutionary acquisition” or “incremental build” approach. Within each iteration, the software development phases also typically overlap, rather than form a discrete termination-initiation sequence. For example, performing Unit code and test concurrently with CSC integration and test is useful in implementing incremental builds. The relationship of the software development cycle to the system life cycle, including system allocation of requirements to ‘CSCIS, and system integration and testing of HWCIS and CSCIS, is described in Appendix B.
Replaced/Superseded by document(s)
This standard establishes requirements to be applied during the development and acquisition of Mission-Critical Computer System (MCCS) software as defined in DOD Directive 5000.29. This standard may also be applied to non-MCCS software development and acquisition.
Software development is usually an iterative process, in which an iteration of the software development cycle occurs one or more items during each of the system life cycle phases (Figure 1). Appendix B describes a typical system life cycle, then activities that take place during each iteration of software development, and the documentation which typically exists at the beginning of an iteration in any given system life cycle phase. The requirements of this standard shall be applied to each iteration, as described below. The requirements of this standard shall also be applied to the development of software for firmware devices as described in 4.7