An overview of ieee software engineering standards and knowledge products

46
An Overview of IEEE Software Engineering Standards and Knowledge Products Paul R. Croll Chair, IEEE SESC Computer Sciences Corporation [email protected]

Transcript of An overview of ieee software engineering standards and knowledge products

An Overview of IEEE SoftwareEngineering Standards and

Knowledge ProductsPaul R. CrollChair, IEEE SESC

Computer Sciences [email protected]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 2

Objectives

l Provide an introduction to The IEEE Software EngineeringStandards Committee (SESC)

l Provide an overview of the current state and future directionof IEEE Software Engineering Standards and knowledgeproducts

u IEEE Software Engineering Standards Collection

u Software Engineering Competency Recognition Program

u Standards-Based Training

l Discuss how you can participate in software engineeringstandardization efforts

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 3

The IEEESoftware Engineering Standards

Committee(SESC)

http://computer.org/standard/sesc/

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 4

The SESC Vision

l The leading supplier and promoter of a familyof software engineering standards and relatedproducts and services.

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 5

Software Engineering:An Object View

Source: [SESC95]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 6

IEEE

IEEEStandards Board

IEEEComputer Society

Software Engineering Standards Committee

Executive Committee &Management Board

Working Group Study Group ConferencesPlanning Group

SESC in the IEEE Structure

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 7

SESC Strategic Program Model

Overall Guide

Terminology

“Toolbox” ofTechnique Standards

Principles or Policies

Element Standards

Application Guides

SystemDisciplines

SoftwareEngineering

QualityManagement

Terminology

ISO and IECStandards

IEEE SESCStandards Program

Source: [SESC95]

Customer Resource Process Product

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 8

The IEEESoftware Engineering Standards

Collection

http://standards.ieee.org/catalog/softwareset.html

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 9

The 2000 Software EngineeringStandards Collection

l Forty-six Standardsu Customer & Terminology

u Process

u Product

u Resource & Technique

l Overall guideu Several “views”

n Context

n Object

n Normative intent

n Provider and subject

u Relationships amongstandards

Source: [Moore97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 10

IEEE/EIA 12207: The LifeCycle Process Framework

l IEEE/EIA 12207, Standard for InformationTechnology – Software Life Cycle Processes

u Addresses the complete software engineering life cycle,from acquisition and supply, through development, tooperations and maintenance

u Provides a process framework upon which an organizationcan build its enterprise-level life cycle processes

u These enterprise-level processes are then tailored intoprojects, in order to meet specific project-levelrequirements.

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 11

LIFE CYCLE

TAILORING

CONFIGURATION MANAGEMENTDOCUMENTATION

QUALITY ASSURANCEVERIFICATION

VALIDATIONJOINT REVIEW

AUDITPROBLEM RESOLUTION

PRIMARY

DEVELOPMENTOPERATION

MAINTENANCE

ACQUISITION

SUPPLY

ORGANIZATIONALMANAGEMENT

INFRASTRUCTUREIMPROVEMENT

TRAINING

SUPPORTING

IEEE/EIA 12207 Process Tree

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 12

Unit 2: IEEE/EIA 12207 Overview - Process Interactions

ACQ - ACQUISITION. SUB - SUBCONTRACTOR E - EXECUTE

F - FEEDBACK. M - MANAGE. P - PARTICIPATE. T - TASK. U -USE

E:N - EXECUTE THE PROCESS NUMBERED N

FM

INFRASTRUCTURE TRAININGIMPROVEMENTMANAGEMENT

ORGANIZATION

MAINTENANCE

DEVELOPMENT

OPERATION

E: 2,3

E: 1,2,3

E: 3

QAE: 3

SUPPLYU: 4T

ACQUISITIONU: 4 E

FFFF

V&VE: 3

PROJECT

E

AUDIT

P

E

(T)EE: 3

JOINTREVIEW

E: 3

T

U

U

PDCA

CMPROBLEM

RESOLUTIONDOCUMENTATION TAILORINGE

E

E

E

P

TE: ACQT: SUB

(I)V&VE: 3

1 2 3 4

12207 Process Flow

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 13

Unit 2: IEEE/EIA 12207 Overview - Primary Process Flow

MAINTENANCE

DEVELOPMENT

OPERATION

SUPPLYACQUISITIONT E/T

PLAN, DO, CHECK & ACT

T

U

E = EXECUTE

T =TASK

U =USE

Primary Process Flow

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 14

QUALITYASSURANCE

PROBLEMRESOLUTION

AUDIT

JOINTREVIEW

VALIDATION

VERIFICATION

CONFIGURATIONMANAGEMENT

DOCUMENTATION

ACQUISITION

SUPPLY

DEVELOPMENT

OPERATION

MAINTENANCE

Unit 2: IEEE/EIA 12207 Overview - Supporting Process Flow

Supporting Process Flow

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 15

Unit 2: IEEE/EIA 12207 Overview - Organizational ProcessFlow

PRIMARYPROCESS

MANAGEMENTPROCESS

INFRASTRUCTUREPROCESS

IMPROVEMENTPROCESS

TRAININGPROCESS

SUPPORTINGPROCESS

Organizational Process Flow

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 16

Unit 2: IEEE/EIA 12207 Overview - Process Roles

•Management • Improvement • Training• Infrastructure

ORGANIZATIONAL PROCESSES

ACQUISITION PROCESS

PROCESSDEVELOPMENT

PROCESS

SUPPLY PROCESS

OPERATION PROCESS

employemploy

use

contract

employ

use

MAINTENANCE

employ

employ

employ

employ

EMPLOYER

SUPPORTINGPROCESSES

OFSUPPORTINGROLE

MANAGERORGANIZATIONALROLE

• OPERATOR• USER

OPERATINGROLE

ACQUIRERACQUISITIONROLE

SUPPLIERSUPPLYROLE

• DEVELOPER• MAINTAINER

ENGINEERINGROLE

Role

PR

ES

S

OC

SE

SUPPORTING

• Documentation • Validation

• Problem resolution• Verification

• Configuration management • Joint review• Quality assurance • Audit

12207 Process Roles

Source: [Singh97]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 17

Role Definitions

l Acquirer:u an organization that acquires or procures a system,

software product or software service from asupplier

l Supplier:u an organization that enters into a contract with the

acquirer for the supply of a system, softwareproduct or software service under the terms of thecontract

l Operator:u an organization that operates the system

Unit 2: IEEE/EIA 12207 Overview - Process Roles

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 18

Role Definitions - 2

l Developer:u an organization that performs development

activities (including requirements analysis, design,testing through acceptance) during the software lifecycle process

l Maintainer:u an organization that performs maintenance

activities

l Supporting Process Performer and Managerare undefined

Unit 2: IEEE/EIA 12207 Overview - Process Roles

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 19

Unit 2: IEEE/EIA 12207 Overview - StructureIEEE/EIA 12207 Document

Structure

l IEEE/EIA 12207.0-1996, Software Life CycleProcesses

u Industry adoption of ISO/IEC 12207-1995

l IEEE/EIA 12207.1-1997, Life Cycle Datau Industry guide to life cycle data

l IEEE/EIA 12207.2-1997, ImplementationConsiderations

u Industry guide to implementation of the life cycleprocesses contained in 12207.0

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 20

Unit 2: IEEE/EIA 12207 Overview - StructureIEEE/EIA 12207.0Document Structure

l Foreword to IEEE/EIA 12207.0-1996

l ISO/IEC 12207-1995

u Introduction

u Foreword

u Clause 1 - Scope

u Clause 2 - Normative references

u Clause 3 - Definitions

u Clause 4 - Application of this International Standard

u Clause 5 - Primary life cycle processes

u Clause 6 - Supporting processes

u Clause 7 - Organizational life cycle processes

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 21

Unit 2: IEEE/EIA 12207 Overview - Structure

IEEE/EIA 12207.0 Annexes

l ISO/IEC 12207-1995 Annexes

u A - Tailoring process

u B - Guidance on tailoring

u C - Guidance on processes and organizations

u D - Bibliography

l Additional IEEE/EIA 12207.0 Annexes

u E - Basic concepts of ISO/IEC 12207

u F - Compliance

u G - Life cycle processes objectives

u H - Life cycle data objectives

u I - Relationships

u J - Errata

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 22

Unit 2: IEEE/EIA 12207 Overview - StructureIEEE/EIA 12207.1Document Structure

u Introduction

u Clause 1 - Scope

u Clause 2 - Normative references

u Clause 3 - Definitions

u Clause 4 - Life cycle data

n Clause 4.1 Overview

n Clause 4.2 Life cycle data objectives

n Clause 4.3 Information item matrix

n Clause 4.4 Compliance

u Clause 5 - Generic information item content guidelines

u Clause 6 - Specific information item content guidelines

u Annex A - References

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 23

Unit 2: IEEE/EIA 12207 Overview - StructureIEEE/EIA 12207.2Document Structure

l Foreword

l Introduction

l Clause 1 - Scope

l Clause 2 - Normative references

l Clause 3 - Definitions

l Clause 4 - Application

l Clause 5 - Primary life cycle processes

l Clause 6 - Supporting processes

l Clause 7 - Organizational life cycle processes

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 24

Unit 2: IEEE/EIA 12207 Overview - Structure

IEEE/EIA 12207.2 Annexes

l IEEE/EIA 12207 Annexesu A - IEEE/EIA 12207.0 Annex A - Tailoring

process

u B - IEEE/EIA 12207.0 Annex F - Compliance

u C - IEEE/EIA 12207.0 Annex G - Life cycleprocesses objectives

u D - IEEE/EIA 12207.0 Annex H - Life cycle dataobjectives

u E - IEEE/EIA 12207.0 Annex J - Errata

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 25

Unit 2: IEEE/EIA 12207 Overview - Structure

IEEE/EIA 12207.2 Annexes - 2

l Additional IEEE/EIA 12207.2 Annexes

u F - Use of reusable software products

u G - Candidate joint management reviews

u H - Software measurement categories

u I - Guidance on development strategies and build planning

u J - Category and priority classifications for problem reporting

u K - Software product evaluations

u L - Risk management

u M - Life cycle processes references

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 26

Supporting Standards forHigh Integrity Software

l IEEE/EIA 12207 relies upon other standards to fill inthe details regarding the activities supporting lifecycle processes.

l In the case of high integrity software, severaladditional software engineering standards are ofinterest.

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 27

Customer and Terminology

l 610.12, Standard Glossary of Software Engineering Terminology

l 1062, Recommended Practice for Software Acquisition

l 1220, Standard for Application and Management of theSystems Engineering Process

l 1228, Standard for Software Safety Plans

l 1233, Guide for Developing System RequirementsSpecifications

l 1362, Guide for Concept of Operations Document

l 12207, Software Life Cycle Processesl 12207.1, Guide to Software Life Cycle Processes—Life Cycle

Data

l 12207.2, Guide to Software Life CycleProcesses—Implementation Considerations

n = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 28

Process

l 730, Standard for Software Quality Assurance Plans

l 730.1, Guide for Software Quality Assurance Planning

l 828, Standard for Software Configuration Management Plans

l 1008, Standard for Software Unit Testingl 1012, Standard for Software Verification and Validation

l 1012a, Software Verification and Validation Content Map to IEEE/EIA 12207.1l 1028, Standard for Software Reviews

l 1042, Guide to Software Configuration Management

l 1045, Standard for Software Productivity Metrics

l 1058, Standard for Software Project Management Plans

l 1059, Guide for Software Verification and Validation Plans

l 1074, Standard for Developing Software Life Cycle Processes

l 1219, Standard for Software Maintenance

l 1490, A Guide to the Program Management Body of Knowledgen = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 29

Process - 2

l J-STD-016-1995, (EIA/IEEE) Interim Standard for InformationTechnology - Software Life Cycle Processes - SoftwareDevelopment - Acquirer-Supplier Agreement

l 1517-1999, Standard for Information Technology - Software LifeCycle Processes - Reuse Processes

l P1540, D7.0, Draft Standard for Software Life CycleProcesses - Risk Management

n = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 30

Product

l 982.1, Standard Dictionary of Measures to Produce ReliableSoftware

l 982.2, Guide for the Use of Standard Dictionary of Measuresto Produce Reliable Software

l 1061, Standard for a Software Quality Metrics Methodology

l 1063, Standard for Software User Documentation

l 1465, IEEE Standard Adoption of ISO/IEC 12119: 1994 (E)International Standard--Information Technology - SoftwarePackages - Quality Requirements and Testing

l 14143.1, Approved Draft - Standard Adoption of ISO/IEC 1443-1:1998 - Information Technology - Software Measurement -Functional Size Measurement - Part 1: Definition of Concepts

n = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 31

Resource and Technique

l 829, Standard for Software Test Documentationl 830, Recommended Practice for Software Requirements Specifications

l 1016, Recommended Practice for Software Design Descriptionsl 1044, Standard Classification for Software Anomalies

l 1044.1, Guide to Classification for Software Anomalies

l 1320.1, Syntax and Semantics for IDEF0

l 1320.2, Syntax and Semantics for IDEF1X97 (IDEFObject)

l 1348, Recommended Practice for the Adoption of CASE Tool

l 1420.1, Software Reuse—Data Model for Reuse Library Interoperability:Basic Interoperability Data Model

l 1420.1a, Software Reuse—Data Model for Reuse Library Interoperability:Asset Certification Framework

l 1420.1b-1999, Trial Use Supplement - Software Reuse—Data Model forReuse Library Interoperability: Data Model for Reuse Library Interoperability:Intellectual Property Rights Framework

n = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 32

Resource and Technique - 2

l 1430, Guide for Software Reuse - Concept of Operations forInteroperating Reuse Libraries

l 1462, Guide for the Evaluation and Selection of CASE Tools

l P1471, Recommended Practice For Architectural Description ofSoftware Intensive Systems

n = High Integrity Systems Related

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 33

IEEE 1540: Software RiskManagement - Process Model

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 34

IEEE 1471: Recommended Practice forArchitectural Description of Software-Intensive Systems - Conceptual Model

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 35

Software Engineering Competency:Professionalizing

Software Engineering

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 36

The Three Components ofEngineering Competency

l A defined Body of Knowledge

l A Code of Practice

l Competency recognition

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 37

Guide to the Software EngineeringBody of Knowledge

l Objectivesu Better characterize the discipline of Software

Engineering

u Provide a consistent view Software Engineering asan engineering discipline

http://www.swebok.org

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 38

IEEE Software EngineeringCompetency Recognition Program

l Goalsu Identify qualified professionals

u Ensure recognition of expertise

u Assist in professional development

u Establish professional practice standards

u Protect public

u Enable professionals to stay current

Source: [IEEE99]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 39

IEEE Software EngineeringCompetency Recognition Program - 2

l Rolesu software engineering practitioner

u software project manager

u software systems architect

u supporter (e.g. CM, QA, etc.)

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 40

Standards-Based Training

l Skills training in the “Code of Practice”u tailorable course outlines

u completion certificates

l Pilot training programu State of California

u New York City Transit Authority

u Delta Airlines

l Twenty-three courses were delivered last yearto 500 attendees

l Five universities contracted to teach courses

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 41

IEEESoftware Engineering Standards

Committee

Our Futureand

Yours

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 42

SESC objectives for the NewMillenium

l A consistent collection of Software EngineeringStandards to support process definition and productdevelopment, that improve the quality of deliveredsoftware and software-intensive systems

l Development and delivery of Standards-based trainingto improve skills

l Feedback mechanisms to capture experience instandards usage

l A conformance program for the organizationalimplementation of SESC standards

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 43

How You Can Participate

l Join the IEEE Computer Society

(at http://www.computer.org)

l Join the IEEE Software Engineering StandardsCommittee (at http://www.tcse.org)

u Lead or participate in Working Groups developingor revising Standards

u Lead or participate in Study Groups investigatingnew areas for standardization

u Participate in SESC special projects

u Become part of the SESC balloting pool (IEEEStandards Association membership required)

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 44

Questions

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 45

For more information . . .

Paul R. CrollComputer Sciences Corporation5166 Potomac DriveKing George, VA 22485-5824

Phone: +1 540.663.9251

Fax: +1 540.663.0276

e-mail: [email protected]

ASQ Section 509 SSIG Meeting, 8 November 2000 Paul R. Croll - 46

References

[IEEE99] IEEE Computer Society, “Business Plan for the SoftwareEngineering Competency Recognition Program”, May1999

[Moore97] James W. Moore, Software Engineering Standards: AUser's Road Map, IEEE Computer Society Press, Los Alamitos,CA, 1997.

[SESC95] SESC Business Planning Group, “Vision 2000 StrategyStatement (Final Draft),” v0.9, SESC/BPG-002, August 20,1995.

[Singh97] Raghu Singh, An Introduction to International StandardsISO/IEC 12207, Software Life Cycle Processes, 1997.