Guide to the Software Engineering Body of Knowledge A ...

58
www.swebok.org 1 Guide to the Software Guide to the Software Engineering Body of Knowledge Engineering Body of Knowledge A Project Overview A Project Overview Pierre Pierre Bourque Bourque , Robert , Robert Dupuis Dupuis, Alain Abran, James W. Moore, Leonard Tripp Presented at Décima Conferência Internacional de Décima Conferência Internacional de Tecnologia de Software Tecnologia de Software Curitiba Curitiba , , Brazil Brazil May May 19, 1999 19, 1999

Transcript of Guide to the Software Engineering Body of Knowledge A ...

Page 1: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 1

Guide to the SoftwareGuide to the SoftwareEngineering Body of KnowledgeEngineering Body of Knowledge

A Project OverviewA Project Overview

PierrePierre Bourque Bourque, Robert , Robert DupuisDupuis, Alain Abran,James W. Moore, Leonard Tripp

Presented at

Décima Conferência Internacional deDécima Conferência Internacional deTecnologia de SoftwareTecnologia de Software

CuritibaCuritiba, , BrazilBrazil

MayMay 19, 1999 19, 1999

Page 2: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 2

Project managed by:

Corporate Support by:

Page 3: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 3

Presentation GoalsPresentation Goals

¤ Present the Guide to the SoftwareEngineering Body of Knowledgeproject

¤ Obtain feedback from conferenceattendees

¤ Seek collaborators for the project

Page 4: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 4

Presentation PlanPresentation Plan

¤¤Project backgroundProject background¤ Project scope, objectives and audience

¤ A three-phase development approach

¤ Description of current phase

¤ How you can collaborate?

¤ Concluding remarks

Page 5: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 5

Software EngineeringSoftware Engineering

¤ Now 30 years old!

¤ Millions of pages on the subject!

¤ Hundreds of conferences andworkshops annually!

¤ Multiple university programs

¤ Millions of practitioners around theworld?

Is the field really mature?Is the field really mature?

Page 6: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 6

Recognized Profession?Recognized Profession?

¤ Starr*:

vKnowledge and competence validated bythe community of peers

vConsensually validated knowledge restson rational, scientific grounds

v Judgment and advice oriented toward aset of substantive values

* P. Starr, The Social Transformation of American Medicine:BasicBooks, 1982.

Page 7: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 7

Window of Opportunity?Window of Opportunity?

¤ Texas Board of Professional Engineers

¤ Computer Science Curriculum 2001

¤ Possible liability issues: Y2K, etc.

¤ Increased interest in the establishmentof a profession

Page 8: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 8

IEEE-CS/ACM SoftwareIEEE-CS/ACM SoftwareEngineering CoordinatingEngineering Coordinating

CommitteeCommittee¤ Four task forces

vCode of ethics

vBody of knowledge

vEducation

vPerformance norms for softwareengineers

Page 9: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 9

Key Interrelationships for aKey Interrelationships for aCore Body of KnowledgeCore Body of Knowledge

Development ofSoftware

EngineeringCurricula

Development ofCertification /

Licensing Criteria andExams

Development ofUniversity Program

Accreditation Criteria

Consensus ona Core Body of

Knowledge

Influ

ence

s

Influences

Influences

Page 10: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 10

What is softwareWhat is softwareengineering?engineering?

¤ IEEE 610.12:

v “(1) The application of a systematic,disciplined, quantifiable approach to thedevelopment, operation, andmaintenance of software; that is, theapplication of engineering to software.

v (2) The study of approaches as in (1).”

Page 11: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 11

Presentation PlanPresentation Plan

¤ Project background

¤¤Project scope, objectivesProject scope, objectivesand audienceand audience

¤ A three-phase development approach

¤ Description of current phase

¤ How you can collaborate?

¤ Concluding remarks

Page 12: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 12

Project ObjectivesProject Objectives

¤ Characterize the contents of theSoftware Engineering Body ofKnowledge

¤ Provide a topical access to theSoftware Engineering Body ofKnowledge

¤ Promote a consistent view of softwareengineering worldwide

Page 13: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 13

Project ObjectivesProject Objectives¤ Clarify the place of, and set the

boundary of, software engineeringwith respect to other disciplines(computer science, project management,computer engineering, mathematics, etc.)

¤ Provide a foundation for curriculumdevelopment and individualcertification and licensing material

Page 14: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 14

Intended AudienceIntended Audience

¤ Public and private organizations

¤ Practicing software engineers

¤ Makers of public policy

¤ Professional societies

¤ Software engineering students

¤ Educators and trainers

Page 15: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 15

What are we not trying toWhat are we not trying toaccomplish?accomplish?

¤ Not a curriculum development effort!

¤ Not an all-inclusive description of thesum of knowledge in the field

¤ Not all categories of knowledge

Page 16: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 16

Categories of Knowledge inCategories of Knowledge inthe SWEBOKthe SWEBOK

GenerallyAccepted

Advanced

Sp

ecia

lized

andResearch

Page 17: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 17

Two Underlying PrinciplesTwo Underlying Principlesof the Projectof the Project

¤ Transparency: the developmentprocess is itself published and fullydocumented

¤ Consensus-building: thedevelopment process is designed tobuild, over time, consensus in industry,among professional societies andstandards-setting bodies and inacademia

Page 18: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 18

Presentation PlanPresentation Plan¤ Project background

¤ Project scope, objectives and audience

¤¤A three-phaseA three-phasedevelopment approachdevelopment approach

¤ Description of current phase

¤ Call for collaborators

¤ Concluding remarks

Page 19: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 19

A Three-Phase Approach forA Three-Phase Approach forDeveloping the Guide to the SWEBOKDeveloping the Guide to the SWEBOK

1998 1999 2000 2001

Stone Man Version

StrawMan

Version

Iron Man Version

Page 20: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 20

Straw Man PhaseStraw Man Phase

¤ Define the strategy for the project

¤ Gather momentum in the profession

¤ Jump-start the Stone Man phase

vDraft list of Knowledge Areas

vDraft list of Related Disciplines

Page 21: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 21

Identification CriteriaIdentification Criteriafor Straw Man Phasefor Straw Man Phase

¤ Public and verifiable sources ofinformation

¤ Well documented and reproducibleprocedure

¤ As few editorial decisions as possible

¤ As inclusive as possible

¤ Focus on the generally accepted

Page 22: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 22

The Straw Man VersionThe Straw Man Version

¤ Published in September 1998

Report available atReport available at

www.www.swebokswebok.org.org

Page 23: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 23

Presentation PlanPresentation Plan¤ Project background

¤ Project scope, objectives and audience

¤¤ A three-phase development approachA three-phase development approach

¤Description of current phase¤ How you can collaborate?

¤ Concluding remarks

Page 24: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 24

Description of Description of CurrentCurrentPhasePhase

¤ Project Team

¤ Stone Man Deliverables

¤ Development and Review Process

¤ Results to Date

Page 25: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 25

Participants from a BroadParticipants from a BroadSpectrum of AudiencesSpectrum of Audiences

¤ Industry

¤ Professional societies

¤ Standards setting bodies

¤ Academia

¤ Authors

¤ International representation

Page 26: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 26

Project TeamProject Team

¤ Editorial team

¤ Industrial Advisory Board

¤ Panel of Experts

¤ Knowledge Area Specialists

¤ Reviewers/Review Captains

¤ Members of the software engineeringcommunity

Page 27: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 27

Editorial TeamEditorial Team

¤ Project “Champion”:v Leonard Tripp, 1999 President,

IEEE Computer Society

¤ Executive Editors:vAlain Abran, UQAMv James W. Moore, The MITRE Corp.

¤ Editors:vPierre Bourque, UQAMvRobert Dupuis, UQAM

Page 28: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 28

Roles of the IndustrialRoles of the IndustrialAdvisory BoardAdvisory Board

¤ Provide input to ensure relevance to variousaudiences

¤ Review and approve strategy anddeliverables

¤ Oversee development process

¤ Assist in promoting the Guide to theSoftware Engineering Body of Knowledge

¤ Lend credibility to the project

Page 29: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 29

Industrial Advisory BoardIndustrial Advisory Board¤ Met in Canada in the Fall of 1998

¤ Conference call every six weeks

¤ Will meet in Canada in July 1999

¤ Mario R. Barbacci, Software EngineeringInstitute, representing the IEEE ComputerSociety

¤ Carl Chang, University of Illinois at Chicago,Editor Emeritus, IEEE Software,representing Computing Curricula 2001

Page 30: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 30

Industrial Advisory BoardIndustrial Advisory Board¤ François Coallier, Bell Canada, speaking as

ISO/IEC JTC 1 / SC7 Chairman

¤ Morven Gentleman, National ResearchCouncil of Canada

¤ Paula Hawthorn representing the ACM

¤ Richard Heiman, Raytheon SystemsCompany

¤ Laure Le Bars, Saps Labs (Canada)

Page 31: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 31

Industrial Advisory BoardIndustrial Advisory Board

¤ Bryan Pflug, The Boeing Company

¤ Dave Rayford, Comerica Inc.

¤ Larry Reeker, National Institute of Standardsand Technology

¤ Dolores Wallace, National Institute ofStandards and Technology

Page 32: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 32

Panel of ExpertsPanel of Experts

¤ Steve McConnell, Construx Software

¤ Roger Pressman, R.S. Pressman andAssociates

¤ Ian Sommerville, Lancaster University

Page 33: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 33

Project FundingProject Funding

¤ Industry

¤ Professional societies

¤ UQAM

Page 34: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 34

Stone Man Deliverables:Stone Man Deliverables:¤ Consensus on a list of Knowledge

Areas

¤ Consensus on a list of topics andrelevant reference materials for eachKnowledge Area

¤ Consensus on a list of RelatedDisciplines

¤ Available free on the web

Page 35: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 35

KnowledgeKnowledge AreaAreaDescriptionDescription

List oftopics

BriefDescription

of Topics

Classificationof topics

according toan engineering

taxonomy

Classificationof topics

according toBloom's

taxonomy

RelevantKnowledge

Areas ofRelated

Disciplines

ReferenceMaterial

MatrixTopics/

ReferenceMaterial

Page 36: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 36

Stone Stone Man Man Review ProcessReview Process

Version 0.1

ReviewCycle 1

Version 0.5

Reviewcycle 2

Version 0.7

ReviewCycle 3

Version 0.9

Limited number of domain experts

Selected users

Community

Page 37: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 37

Stone Stone ManMan Review Process Review Process¤ Transparency and consensus-building

vAll intermediate versions of documentswill be published and archived onwww.swebok.org

vAll comments will be made public as wellas the identity of the reviewers

vDetailed comment disposition reports willbe produced for Review Cycle 2 and 3

Page 38: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 38

Version 0.5 Version 0.5 Review StrategyReview Strategy

Educators andTrainers

SmallOrg.

...

Req. Analysis Five to Tenreviewers

Design

Construction

.

.

.

Page 39: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 39

Results to Results to DateDate¤ Approved by the Industrial Advisory

Board:

vStone Man Development Plan

vBaseline List of Knowledge Areas

vBaseline List of Related Disciplines

vNomination of Knowledge AreaSpecialists

vKnowledge Area DescriptionSpecifications

Page 40: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 40

Baseline List Baseline List ofof Knowledge AreasKnowledge Areas

¤ Software Requirements Analysis

¤ Software Design

¤ Software Construction

¤ Software Testing

¤ Software Evolution andMaintenance

Page 41: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 41

Baseline List Baseline List ofof Knowledge AreasKnowledge Areas

¤ Software Configuration Management

¤ Software Quality Analysis

¤ Software Engineering Infrastructure

¤ Software Engineering Process

¤ Software Engineering Management

Page 42: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 42

Knowledge Area SpecialistsKnowledge Area Specialists¤ Antonia Bertolino, Istituto di Elaborazione della Informazione,

CNR, Italy

¤ Terry Bollinger, The MITRE Corporation, USA

¤ Dave Carrington, Queensland University, Australia

¤ Khaled El Emam, National Research Council, Canada

¤ Stephen MacDonell, University of Otago, New-Zealand

¤ Pete Sawyer and Gerald Kotonya, Lancaster University, UK

¤ John Scott, The Lawrence Livermore National Laboratory, USA

¤ Guy Tremblay, UQAM, Canada

¤ Chris Verhoef, University of Amsterdam, Netherlands

¤ Dolores Wallace and Larry Reeker, NIST, USA

Page 43: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 43

Baseline List Baseline List ofof Related Related DisciplinesDisciplines

¤ Computer Science (CC2001)

¤ Mathematics (CC2001)

¤ Project Management (PMBOK)

¤ Computer Engineering

¤ Cognitive Sciences and Human Factors

¤ Systems Engineering

¤ Management and Management Science

Page 44: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 44

Knowledge AreaKnowledge Area Jumpstart Jumpstart DocumentsDocuments

¤ Topic breakdown based on the analysis of the four mostwidely-sold generic software engineering textbooks(amazon.com)

¤ Proof of concept for Knowledge Area Descriptions

¤ Method for documenting a form of existing consensus

¤ Viewed as an enabler not a constraint for KnowledgeArea Specialists

¤ Produced by collaborators in Canada, USA and NewZealand

¤ Completed in January 1999

Page 45: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 45

Version 0.1 ofVersion 0.1 of Knowledge KnowledgeArea Area DescriptionsDescriptions

¤ First version by Knowledge Area Specialistsof topic breakdown for each Knowledge Area

¤ Must satisfy criteria specified in KnowledgeArea Description Specifications

¤ Completed in April 1999

¤ Reviewed by a limited number of domainexperts for reasonableness and majoromissions

Page 46: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 46

Version 0.5 of Version 0.5 of KnowledgeKnowledgeArea Area DescriptionsDescriptions

¤ First complete version of KnowledgeArea Descriptions

vBreakdown of topics

vSelected Reference Material

vAccompanying texts and specifiedappendices

Page 47: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 47

Version 0.5 of Version 0.5 of KnowledgeKnowledgeArea Area DescriptionsDescriptions

¤ Currently being submitted to theEditorial Team

¤ Will be reviewed for completeness anddepth of coverage

¤ Reviewed by selected users forcompleteness and depth of coverage inMay, June and July 1999

Page 48: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 48

Presentation PlanPresentation Plan

¤ Project background

¤ Project scope, objectives and audience

¤ A three-phase development approach

¤ Description of current phase

¤How you can collaborate?¤ Concluding remarks

Page 49: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 49

ReviewersReviewers

¤ Reviewers are responsible forv Reading the Knowledge Area Description and

consulting the selected reference material

v Providing comments from one specifiedviewpoint

¤ Schedulev Review Cycle 2: May, June and July 1999

v Review Cycle 3: October 1999

Page 50: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 50

ReviewersReviewers

¤ Çriteria for reviewers arev Knowledge in the Area

v Availability

v Ability to give articulate, constructive comments

v Representative of: software engineeringpractitioners, trainers an educators, standardsdevelopers, small industry, students, etc.

Page 51: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 51

Review CaptainsReview Captains

¤ Responsible for compiling commentsof a group of 5-10 reviewers for aspecific Knowledge Area and ReviewViewpoint

¤ Schedule:

v June and July 1999 timeframe

Page 52: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 52

Institutional Institutional CollaborationCollaboration

¤ Membership on Industrial AdvisoryBoard

¤ Participation in review process anduptake of results by nationalprofessional societies

¤ Endorsement of results by nationalprofessional societies

Page 53: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 53

Presentation PlanPresentation Plan

¤ Project background

¤ Project scope,objectives and audience

¤ A three-phase development approach

¤ Interim results of current phase

¤ Description of current phase

¤¤Concluding remarksConcluding remarks

Page 54: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 54

Concluding RemarksConcluding Remarks

¤ Consensus on the core body ofknowledge is key in all disciplinesand pivotal for the evolution of SEtoward a professional status

Page 55: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 55

Concluding RemarksConcluding Remarks

¤ Involvement of all parties is key forrelevancy, credibility and quick uptake:

v Industry

vProfessional societies

vStandards setting bodies

vAcademia

¤ Seeking many collaborators!

Page 56: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 56

wwwwww..swebokswebok..orgorg

Page 57: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 57

Editorial Team CoordinatesEditorial Team Coordinates

Alain Abran

Université du Québec à Montréal

Computer Science Dept.

C.P. 8888, Succ. Centre-Ville

Montréal, Québec

H3C 3P8 Canada

Tel.: (514) 987-3000 ext. 8900

Fax: (514) 987-8477

[email protected]

Pierre Bourque

Université du Québec à Montréal

Computer Science Dept.

C.P. 8888, Succ. Centre-Ville

Montréal, Québec

H3C 3P8 Canada

Tel.: (514) 987-3000 ext. 0315

Fax: (514) 987-8477

[email protected]

Page 58: Guide to the Software Engineering Body of Knowledge A ...

www.swebok.org 58

Editorial Team CoordinatesEditorial Team Coordinates

Robert Dupuis

Université du Québec à Montréal

Computer Science Dept.

C.P. 8888, Succ. Centre-Ville

Montréal, Québec

H3C 3P8 Canada

Tel.: (514) 987-3000 ext. 3479

Fax: (514) 987-8477

[email protected]

James W. Moore

The MITRE Corporation

1820 Dolley Madison Blvd.

McLean, Virginia 22102-3481

USA

Tel: 703 883-7396

Fax: 703 883-5432

[email protected]