5.5 Process Application
The life cycle processes defined in IEEE 12207:2017 and excerpted herein can be used by PEO BES PMOs when acquiring, using, creating, or supplying a software system. They can be applied at any level in a system’s hierarchy and at any stage in the life Cycle and specified in the acquisition PWS. The functions these processes perform are defined in terms of specific purposes, outcomes and the set of activities and tasks that constitute the process. It is beyond the scope of the Automated Application Modernization (AAM) Playbook to replicate the descriptions of theses software life cycle processes, their activities, tasks and outcomes, however, each life cycle process in Figure 5-1 can be invoked, as required, at any time throughout the Agile evolutionary and iterative life cycle models.
The order that the processes are presented does not imply any prescriptive order in their use. However, sequential relationships are introduced by the definition of the Agile evolutionary and iterative life cycle models. The detailed purpose and timing of use of these processes throughout the life cycle are influenced by multiple factors, including PEO BES PMO’s social, cultural, organizational and technical considerations, each of which can vary during the life of a software system. The Agile evolutionary lifecycle is thus created through a selection and application of processes that will normally possess concurrent, iterative, and time‐dependent characteristics.
Concurrent use of processes often exists within a project (e.g., when design actions and preparatory actions for building a software system are performed at the same time), and between projects (e.g., when system elements are designed at the same time under different project responsibilities). When the application of the same process or set of processes is repeated on the same system, the application is referred to as iterative. The iterative use of processes is important for the progressive refinement of process outputs, e.g., the interaction between successive verification actions and integration actions can incrementally build confidence in the conformance of the product. Iteration is not only appropriate but also expected. New information is created by the application of a process or set of processes. Typically, this information takes the form of issues with respect to requirements, analyzed risks or opportunities that are tracked in the projects Application Life Cycle Management tool. Such issues can evolve into new user stories and tasks that are entered into the product backlog and should be resolved before completing the activities of a process or set of processes.