an overview of ieee software engineering standards...
TRANSCRIPT
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.