ISO/IEC/IEEE 15288 and ISO/IEC/IEEE 12207: The Entry-Level Process Standards
ISO/IEC/IEEE 15288 and ISO/IEC/IEEE 12207: The Entry-Level Process Standards
ISO/IEC/IEEE 15288 and ISO/IEC/IEEE 12207: The Entry-Level Process Standards
Purpose of Briefing
Claim: ISO/IEC/IEEE 15288, System Life Cycle Processes, and ISO/IEC/IEEE 12207, Software Life Cycle Processes, are the entry-point for life-cycle process implementation. Beginners should start with them.
Whoa! That cant be true. They are too big, too clumsy, too rigid, and too heavy-weight.
Some Background
Many software engineering standards assign names to practices or collections of practices. This enables communication between Buyer and seller Government and industry Insurer and insured
Would you know that these are different names for the same thing? Would you know without the map? 12207 and 15288 are maps for the life cycle process space.
Drivers view
The names are important as a basis for process evaluation and improvement. The names are important to provide a context for implementing improved practices. Our goal.
SSTC 2010 - James W Moore - Page 6
2010 The MITRE Corporation. All rights reserved.
15288 describes the processes at the system level. 12207 specializes the same processes to software, and adds processes specific to software.
Party: an organization entering into an agreement Project: an endeavour with defined start and finish dates undertaken to create a product or service in accordance with specified resources and requirements [adapted from ISO 9000]
Proj
Proj
Org
Org
Inputs
Outputs
Process: set of interrelated or interacting activities which transforms inputs into outputs [ISO 9000] Product: the result of a process [ISO 9000] Service: performance of activities, work, or duties associated with a product
SSTC 2010 - James W Moore - Page 12
2010 The MITRE Corporation. All rights reserved.
Sys Elem
Sys Elem
Sys
Sys Elem
Sys Elem
Sys Elem
SW Comp
SW Comp
12207 uses a hierarchy of items composed of components composed of units. 12207 is not invoked recursively to create this hierarchy.
SW Unit
SW Unit
Stages are separated by decision gates. Stages may overlap and may be concurrent. The purpose of each stage is accomplished by executing processes. Any process may be useful in any stage. A typical set of life cycle stages
Concept
It is a common error to talk about life cycle stages when one really means processes or vice-versa. Locating practices with respect to processes provides much greater precision.
SSTC 2010 - James W Moore - Page 15
2010 The MITRE Corporation. All rights reserved.
support adding processes, adding detail, and improving capability without causing incompatibility. provide processes that are widely applicable, yet capable of adaptation.
Provides all of the Technical processes for the entire life cycle of the system. Provides all of the Project Management processes for any stage in a systems life. Provides just enough organizational context to enable projects.
SSTC 2010 - James W Moore - Page 18
2010 The MITRE Corporation. All rights reserved.
Other Organizations
Organization
Project
Engineering
12207 specializes the processes of 15288 for software and adds software-unique processes.
SW Support SW Documentation Mgmt SW Implementation SW Reqmts Analysis SW Arch Design SW Detailed Design SW Construction SW Integration SW Qual Testing SW Configuration Mgmt SW Quality Assurance SW Verification SW Validation SW Review SW Audit SW Problem Resolution
Infrastructure Mgmt Project Project Portfolio Mgmt Human Resource Mgmt Quality Mgmt Project Support Decision Mgmt Installation Risk Mgmt System Qual Testing Project Planning Implementation Project Assess & Control System Integration System Arch Design
Other Organizations
Organization
Project
Engineering
Select the Part(s) of the Standard that Makes Sense for Your Needs
Some popular choices SW Product Development SW Quality Project Management
Acquisition
You can select the processes that meet your needs today and add others later without fear of incompatibility.
The purpose of the Software Configuration Management Process is to establish and maintain the integrity of the software items of a process or project and make them available to concerned parties. a) a software configuration management strategy is developed; b) items generated by the process or project are identified, defined and baselined; c) modifications and releases of the items are controlled; d) modifications and releases are made available to affected parties; e) the status of the items and modifications are recorded and reported; f) the completeness and consistency of the items is ensured; and g) the storage, handling and delivery of the items are controlled.
Tasks define specific requirements and recommendations on the execution of the process. Activities group together related tasks.
7.2.2.3.4 Configuration status accounting. This activity consists of the following task:
7.2.2.3.6 Release management and delivery. This activity consists of the following task:
There are standards providing even more detail for selected processes
These standards are plug-compatible and provide additional detail:
ISO/IEC/IEEE 14764, Software maintenance ISO/IEC/IEEE 15026, Software assurance ISO/IEC/IEEE 15289, Information items (documentation) ISO/IEC/IEEE 15939, Measurement ISO/IEC/IEEE 16085, Risk management ISO/IEC/IEEE 16326, Project management
There are many other process standards that are generally supportive although not yet completely plug-compatible.
Annex F of 15288 describes the relationship of each process to 5 IEEE standards. Annex G of 12207 describes the relationship of each process to 30 IEEE standards.
Conformance Clause
2 Conformance
2.2 Full conformance
... Full conformance is achieved by demonstrating that all of the requirements of the declared set of processes have been satisfied using the outcomes as evidence.
When this International Standard is used as a basis for establishing a set of processes that do not qualify for full conformance, the clauses of this International Standard are selected or modified .... The tailored text is declared. Tailored conformance is achieved by demonstrating that requirements for the processes, as tailored, have been satisfied using the outcomes as evidence.
You can claim conformance on a process-by-process basis. You can be flexible in implementing the requirements if you achieve the outcomes.
SSTC 2010 - James W Moore - Page 26
2010 The MITRE Corporation. All rights reserved.
Ability to Grow
Ability to Grow
Adding processes
As time goes on, you can select additional processes from the standards for implementation.
Compatibility
Plug-compatible systems and software life cycle processes Plug-compatible with a growing set of standards providing more detail Generally compatible with the large collections of IEEE and ISO/IEC standards Though reorganized, the 2008 versions of both 12207 and 15288 are backwardcompatible to their previous versions.
These standards are plug-compatible and provide additional detail for selected processes:
ISO/IEC/IEEE 14764, Software maintenance ISO/IEC/IEEE 15026, Software assurance ISO/IEC/IEEE 15289, Information items (documentation) ISO/IEC/IEEE 15939, Measurement ISO/IEC/IEEE 16085, Risk management ISO/IEC/IEEE 16326, Project management
There are many other process standards that are generally supportive although not yet completely plug-compatible.
Annex F of 15288 describes the relationship of each process to 5 IEEE standards. Annex G of 12207 describes the relationship of each process to 30 IEEE standards.
. . .
SSTC 2010 - James W Moore - Page 31
2010 The MITRE Corporation. All rights reserved.
Actually, you dont With one exception*, all of the processes are already in the standard.
* The standards do not have a complete set of organizational processes. They include
only the processes necessary to enable projects.
Other Organizations
Organization
Project
Engineering
But the process I need isnt the same as any of the ones in the standards!
Process View
The process viewpoint concept provides for particular engineering interests. A process view gathers in a single place the set of process activities that directly and succinctly address a concern. Like a process, the description of a process view includes a statement of purpose and outcomes. Unlike a process, the description of a process view does not include activities and tasks. Instead, the description includes guidance explaining how the outcomes can be achieved by employing the activities and tasks of the various processes in ISO/IEC 15288 and ISO/IEC 12207.
Annex E of 12207 provides a process view for Usability (as described in ISO 13407, Human-Centred Design) The planned ISO/IEC/IEEE 15026-4 is a process view for systems and software assurance. Users of 12207 and 15288 can write their own process views
If they follow a few rules, then process views can be assessed for capability by ISO/IEC 15504 just like any other process.
All IEEE standards (including ones developed jointly with ISO/IEC) are available in MITREs subscription to the IEEE Xplore digital library:
http://ieeexplore.ieee.org/Xplore/dynhome.jsp?tag=1 There is a special search category for standards permitting easy search via number.
For more information, contact me: Jim Moore, [email protected] Also, my 2006 book isnt completely obsolete yet
James W. Moore, The Road Map to Software Engineering: A Standards-Based Guide, John Wiley / IEEE Computer Society Press, 2006, ISBN-10: 0471683620, ISBN-13: 978-0471683629
SSTC 2010 - James W Moore - Page 40
2010 The MITRE Corporation. All rights reserved.