Lecture Software process improvement: Lesson 33 provide students with knowledge about: ISO/IEC 12207:2008; information technology software life cycle processes; international standards organization (ISO); international electrotechnical commission (IEC);... Please refer to the detailed content of the lecture!
ISO/IEC 12207:2008 Information Technology Software Life Cycle Processes ISO: International Standards Organization IEC: International Electrotechnical Commission Lecture # 33 ISO 12207 • ISO 12207 is an ISO standard for software lifecycle processes • ISO/IEC 12207 is the first International Standard to provide a comprehensive set of life cycle processes, activities and tasks for software that is part of a larger system, and for stand alone software products and services • It was first introduced on August 1, 1995 2 ISO 12207 • The ISO 12207 standard establishes a process of lifecycle for software, including processes and activities applied during the acquisition and configuration of the services of the system • Each Process has a set of outcomes associated with it ISO 12207 • The standard has the main objective of supplying a common structure so that the buyers, suppliers, developers, maintainers, operators, managers and technicians involved with the software development use a common language • This common language is established in the form of well defined processes ISO 12207 • ISO/IEC 12207 also provides a process that can be employed for defining, controlling, and improving software life cycle processes ISO 12207 • The structure of the standard was intended to be conceived in a flexible, modular way so as to be adaptable to the necessities of whoever uses it • The standard is based on two basic principles: modularity and responsibility Modularity • Modularity means processes with minimum coupling and maximum cohesion Responsibility • Responsibility means to establish a responsibility for each process, facilitating the application of the standard in projects where many people can be legally involved • The set of processes, activities and tasks can be adapted according to the software project • These processes are classified in three types: basic, for support and organizational Try not to use this • The support and organizational processes must exist independently of the organization and the project being executed • The basic processes are instantiated according to the situation 10 Software Detailed Design Process • The Software Detail Design Process in this International Standard is a lowerlevel process of the Software Implementation Process • The purpose of the Software Detailed Design Process is to provide a design for the software that implements and can be verified against the requirements and the software architecture and is sufficiently detailed to permit coding and testing 48 Software Construction Process • The Software Construction Process in this International Standard is a lowerlevel process of the Software Implementation Process • The purpose of the Software Construction Process is to produce executable software units that properly reflect the software design 49 Software Integration Process • The Software Integration Process in this International Standard is a lowerlevel process of the Software Implementation Process • The purpose of the Software Integration Process is to combine the software units and software components, producing integrated software items, consistent with the software design, that demonstrate that the functional and nonfunctional software requirements are satisfied on an equivalent or complete operational platform 50 Software Qualification Testing Process • The Software Qualification Testing Process in this International Standard is a lowerlevel process of the Software Implementation Process • The purpose of the Software Qualification Testing Process is to confirm that the integrated software product meets its defined requirements 51 Software Support Processes • The Software Support Processes provide a specific focused set of activities for performing a specialized software process • A supporting process assists the Software Implementation Process as an integral part with a distinct purpose, contributing to the success and quality of the software project. There are eight of these processes 52 Software Support Processes • • • • • • • • Software Documentation Management Process Software Configuration Management Process Software Quality Assurance Process Software Verification Process Software Validation Process Software Review Process Software Audit Process Software Problem Resolution Process 53 Software Reuse Processes • The Software Reuse Process Group consists of three processes that support an organization’s ability to reuse software items across project boundaries • These processes are unique because, by their nature, they operate outside the bounds of any particular project 54 Software Reuse Processes • Domain Engineering Process • Reuse Asset Management Process • Reuse Program Management Process 55 • This International Standard allows tailoring of processes in certain situations and supports tailoring process 56 Tailoring Process • Tailoring is not a requirement for conformance to the standard. In fact, tailoring is not permitted if a claim of "full conformance" is to be made. If a claim of "tailored conformance" is made then tailoring is to be performed as required by this process 57 • The purpose of the Tailoring Process is to adapt the processes of this International Standard to satisfy particular circumstances or factors that: – Surround an organization that is employing this International Standard in an agreement – Influence a project that is required to meet an agreement in which this International Standard is referenced – Reflect the needs of an organization in order to supply products or services 58 • It should be noted that tailoring may diminish the perceived value of a claim of conformance to this standard • This is because it is difficult for other organizations to understand the extent to which tailoring may have deleted desirable provisions 59 • An organization asserting a singleparty claim of conformance to this standard may find it advantageous to claim absolute conformance to a smaller list of processes rather than tailored conformance to a larger list of processes 60 Summary 61 References • System and Software Engineering – Software Life Cycle Processes sponsored by Software & Systems Engineering Standards Committee of the IEEE Computer Society (.pdf file) 62 ... safety, security and environmental factors 40 Software? ?Specific Processes • Software? ?Implementation Processes • Software? ?Support Processes • Software? ?Reuse 41 Software? ?Implementation Processes • The? ?Software? ?Implementation Processes are ... Software? ?Architectural Design? ?Process Software? ?Detailed Design? ?Process Software? ?Construction? ?Process Software? ?Integration? ?Process Software? ?Qualification Testing? ?Process 45 Software? ?Requirements Analysis Process • The? ?Software? ?Requirements Analysis? ?Process? ?... Software? ?Installation? ?Process Software? ?Acceptance Support? ?Process Software? ?Operation? ?Process Software? ?Maintenance? ?Process Software? ?Disposal? ?Process 37 Technical Processes 2 • The Technical Processes are used to define the