Software Engineering - Guide to the Software Engineering Body of Knowledge (SWEBOK)

ISO/IEC 19759:2005, a guide to the software engineering body of knowledge (SWEBOK), identifies and describes that subset of the body of knowledge that is generally accepted, even though software engineers must be knowledgeable not only in software engineering, but also, of course, in other related disciplines. SWEBOK is an all-inclusive term that describes the sum of knowledge within the profession of software engineering.

Ingénierie du logiciel — Guide du corps de connaissance de l'ingénierie du logiciel (SWEBOK)

General Information

Status
Withdrawn
Publication Date
22-Sep-2005
Withdrawal Date
22-Sep-2005
Current Stage
9599 - Withdrawal of International Standard
Start Date
28-Sep-2015
Completion Date
30-Oct-2025
Ref Project

Relations

Technical report
ISO/IEC TR 19759:2005 - Software Engineering -- Guide to the Software Engineering Body of Knowledge (SWEBOK)
English language
187 pages
sale 15% off
Preview
sale 15% off
Preview

Frequently Asked Questions

ISO/IEC TR 19759:2005 is a technical report published by the International Organization for Standardization (ISO). Its full title is "Software Engineering - Guide to the Software Engineering Body of Knowledge (SWEBOK)". This standard covers: ISO/IEC 19759:2005, a guide to the software engineering body of knowledge (SWEBOK), identifies and describes that subset of the body of knowledge that is generally accepted, even though software engineers must be knowledgeable not only in software engineering, but also, of course, in other related disciplines. SWEBOK is an all-inclusive term that describes the sum of knowledge within the profession of software engineering.

ISO/IEC 19759:2005, a guide to the software engineering body of knowledge (SWEBOK), identifies and describes that subset of the body of knowledge that is generally accepted, even though software engineers must be knowledgeable not only in software engineering, but also, of course, in other related disciplines. SWEBOK is an all-inclusive term that describes the sum of knowledge within the profession of software engineering.

ISO/IEC TR 19759:2005 is classified under the following ICS (International Classification for Standards) categories: 35.080 - Software. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC TR 19759:2005 has the following relationships with other standards: It is inter standard links to ISO/IEC TR 19759:2015. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

You can purchase ISO/IEC TR 19759:2005 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.

Standards Content (Sample)


TECHNICAL ISO/IEC
REPORT TR
IEEE
First edition
2005-09-15
Software Engineering — Guide to the
Software Engineering Body of Knowledge
(SWEBOK)
Ingénierie du logiciel — Guide du corps de connaissance de l'ingénierie
du logiciel (SWEBOK)
Reference number
©
ISO/IEC 2005
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.

ISO
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
ii © ISO/IEC 2005 – All rights reserved

Technical Report ISO/IEC TR 19759:2005(E)
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are members of
ISO or IEC participate in the development of International Standards through technical committees
established by the respective organization to deal with particular fields of technical activity. ISO and IEC
technical committees collaborate in fields of mutual interest. Other international organizations, governmental
and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information
technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of the joint technical committee is to prepare International Standards. Draft International
Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as
an International Standard requires approval by at least 75 % of the national bodies casting a vote.
In exceptional circumstances, the joint technical committee may propose the publication of a Technical Report
of one of the following types:
— type 1, when the required support cannot be obtained for the publication of an International Standard,
despite repeated efforts;
— type 2, when the subject is still under technical development or where for any other reason there is the
future but not immediate possibility of an agreement on an International Standard;
— type 3, when the joint technical committee has collected data of a different kind from that which is
normally published as an International Standard (“state of the art”, for example).
Technical Reports of types 1 and 2 are subject to review within three years of publication, to decide whether
they can be transformed into International Standards. Technical Reports of type 3 do not necessarily have to
be reviewed until the data they provide are considered to be no longer valid or useful.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
ISO/IEC TR 19759, which is a Technical Report of type 3, was prepared by the IEEE Computer Society as the
Guide to the Software Engineering Body of Knowledge, 2004 Version, and was adopted without change by
ISO/IEC JTC 1/SC 7, Software and Systems Engineering.

International Organization for Standardization/International Electrotechnical Commission
Case postale 56 • CH-1211 Genève 20 • Switzerland
iii
Introduction
The purpose of the Guide to the Software Engineering Body of Knowledge is to provide a consensually
validated characterization of the bounds of the software engineering discipline and to provide a topical access
to the Body of Knowledge supporting that discipline. The Body of Knowledge is subdivided into ten software
engineering Knowledge Areas (KA) plus an additional chapter providing an overview of the Knowledge Areas
of strongly related disciplines. The descriptions of the KAs are designed to discriminate among the various
important concepts, permitting readers to find their way quickly to subjects of interest. Upon finding a subject,
readers are referred to key papers or book chapters selected because they succinctly present the knowledge.
An emphasis on engineering practice leads the Guide toward a strong relationship with the normative
literature. Most of the computer science, information technology and software engineering literature provides
information useful to software engineers, but a relatively small portion is normative. A normative document
prescribes what an engineer should do in a specified situation rather than providing information that might be
helpful. The normative literature is validated by consensus formed among practitioners and is concentrated in
standards and related documents. From the beginning, the SWEBOK project was conceived as having a
strong relationship to the normative literature of software engineering. The two major standards bodies for
software engineering (IEEE Computer Society Software and Systems Engineering Standards Committee and
ISO/IEC JTC1/SC7) are represented in the project. Ultimately, it is hoped that software engineering practice
standards will contain principles directly traceable to the Guide.
The Guide is oriented toward a variety of audiences, all over the world. It aims to serve public and private
organizations in need of a consistent view of software engineering for defining education and training
requirements, classifying jobs, developing performance evaluation policies or specifying software
development tasks. It also addresses practicing, or managing, software engineers and the officials responsible
for making public policy regarding licensing and professional guidelines. In addition, professional societies and
educators defining the certification rules, accreditation policies for university curricula, and guidelines for
professional practice will benefit from the SWEBOK Guide, as well as the students learning the software
engineering profession and educators and trainers engaged in defining curricula and course content.

iv © ISO/IEC 2005 – All rights reserved

TECHNICAL REPORT ISO/IEC TR 19759:2005(E)

Software Engineering — Guide to the Software Engineering
Body of Knowledge (SWEBOK)
1 Scope
This Technical Report characterizes the boundaries of the software engineering discipline and provides topical
access to the literature supporting that discipline.
2 Recommendations
As a type 3 Technical Report, this document does not make technical recommendations. The information
provided is that contained in the following publication (reproduced on the following pages), which is adopted
as a Technical Report:
Guide to the Software Engineering Body of Knowledge, 2004 Version, IEEE Computer Society.
3 Revision of the IEEE Computer Society publication
It has been agreed with the IEEE Computer Society that ISO/IEC JTC 1/SC 7 will be consulted in the event of
any revision or amendment of this IEEE Computer Society publication. Consultation will be accomplished by
the existing Category A liaison relationship between SC7 and IEEE Computer Society.
4 Publication
The report of the IEEE Computer Society appears on the following pages.
© ISO/IEC 2005 – All rights reserved 1

2 © ISO/IEC 2005 – All rights reserved

Guide to the Software Engineering
Body of Knowledge
2004 Version ®
SWEBOK
A project of the IEEE Computer Society
Professional Practices Committee
© IEEE – 2004 Version   ®SWEBOK is an official service mark of the IEEE

© IEEE – 2004 Version
Guide to the Software Engineering Body of
Knowledge
2004 Version ®
SWEBOK
Executive Editors
Alain Abran, École de technologie supérieure
James W. Moore, The MITRE Corp.
Editors
Pierre Bourque, École de technologie supérieure
Robert Dupuis, Université du Québec à Montréal
Project Champion
Leonard L. Tripp, Chair, Professional Practices Committee,
IEEE Computer Society (2001-2003)
http://computer.org
Los Alamitos, California
Washington     •     Brussels     •     Tokyo
© IEEE – 2004 Version   ®SWEBOK is an official service mark of the IEEE

Copyright and Reprint Permissions: This document may be copied, in whole or in part, in any form or by any means, as is, or
with alterations, provided that (1) alterations are clearly marked as alterations and (2) this copyright notice is included
unmodified in any copy. Any other use or distribution of this document is prohibited without the prior express permission of
IEEE.
You use this document on the condition that you indemnify and hold harmless IEEE from any and all liability or damages to
yourself or your hardware or software, or third parties, including attorneys' fees, court costs, and other related costs and expenses,
arising out of your use of this document irrespective of the cause of said liability.
IEEE MAKES THIS DOCUMENT AVAILABLE ON AN "AS IS" BASIS AND MAKES NO WARRANTY, EXPRESS OR IMPLIED, AS TO
THE ACCURACY, CAPABILITY, EFFICIENCY MERCHANTABILITY, OR FUNCTIONING OF THIS DOCUMENT. IN NO EVENT
WILL IEEE BE LIABLE FOR ANY GENERAL, CONSEQUENTIAL, INDIRECT, INCIDENTAL, EXEMPLARY, OR SPECIAL
DAMAGES, EVEN IF IEEE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
IEEE Computer Society Order Number C2330
ISBN 0-7695-2330-7
Library of Congress Number 2005921729
Additional copies may be ordered from:
IEEE Computer Society IEEE Service Center IEEE Computer Society
Customer Service Center 445 Hoes Lane Asia/Pacific Office
10662 Los Vaqueros Circle P.O. Box 1331 Watanabe Bldg., 1-4-2
P.O. Box 3014 Piscataway, NJ 08855-1331 Minami-Aoyama
Los Alamitos, CA 90720-1314 Tel: + 1-732-981-0060 Minato-ku, Tokyo 107-0062
Tel: + 1-714-821-8380 Fax: + 1-732-981-9667 JAPAN
Fax: + 1-714-821-4641 http://shop.ieee.org/store/ Tel: + 81-3-3408-3118
E-mail: cs.books@computer.org customer-service@ieee.org Fax: + 81-3-3408-3553
tokyo.ofc@computer.org
Publisher: Angela Burgess
Group Managing Editor, CS Press: Deborah Plummer
Advertising/Promotions: Tom Fink
Production Editor: Bob Werner
Printed in the United States of America
© IEEE – 2004 Version
TABLE OF CONTENTS
FOREWORD.vii
PREFACE.xvii
CHAPTER 1 INTRODUCTION TO THE GUIDE.1-1
CHAPTER 2 SOFTWARE REQUIREMENTS.2-1
CHAPTER 3 SOFTWARE DESIGN.3-1
CHAPTER 4 SOFTWARE CONSTRUCTION.4-1
CHAPTER 5 SOFTWARE TESTING .5-1
CHAPTER 6 SOFTWARE MAINTENANCE.6-1
CHAPTER 7 SOFTWARE CONFIGURATION MANAGEMENT.7-1
CHAPTER 8 SOFTWARE ENGINEERING MANAGEMENT .8-1
CHAPTER 9 SOFTWARE ENGINEERING PROCESS.9-1
CHAPTER 10 SOFTWARE ENGINEERING TOOLS AND METHODS .10-1
CHAPTER 11 SOFTWARE QUALITY .11-1
CHAPTER 12 RELATED DISCIPLINES OF SOFTWARE ENGINEERING .12-1
APPENDIX A KNOWLEDGE AREA DESCRIPTION SPECIFICATIONS FOR THE
IRONMAN VERSION OF THE GUIDE TO THE SOFTWARE ENGINEERING
BODY OF KNOWLEDGE .A-1
APPENDIX B EVOLUTION OF THE GUIDE TO THE SOFTWARE ENGINEERING
BODY OF KNOWLEDGE .B-1
APPENDIX C ALLOCATION OF IEEE AND ISO SOFTWARE ENGINEERING STANDARDS TO
SWEBOK KNOWLEDGE AREAS.C-1
APPENDIX D CLASSIFICATION OF TOPICS ACCORDING TO BLOOM’S TAXONOMY.D-1
IEEE – 2004 Version v
vi
FOREWORD
In this Guide, the IEEE Computer Society establishes for the first time a baseline for the body of knowledge for
the field of software engineering, and the work partially fulfills the Society’s responsibility to promote the
advancement of both theory and practice in this field. In so doing, the Society has been guided by the experience of
disciplines with longer histories but was not bound either by their problems or their solutions.
It should be noted that the Guide does not purport to define the body of knowledge but rather to serve as a
compendium and guide to the body of knowledge that has been developing and evolving over the past four decades.
Furthermore, this body of knowledge is not static. The Guide must, necessarily, develop and evolve as software
engineering matures. It nevertheless constitutes a valuable element of the software engineering infrastructure.
In 1958, John Tukey, the world-renowned statistician, coined the term software. The term software engineering
was used in the title of a NATO conference held in Germany in 1968. The IEEE Computer Society first published its
Transactions on Software Engineering in 1972. The committee established within the IEEE Computer Society for
developing software engineering standards was founded in 1976.
The first holistic view of software engineering to emerge from the IEEE Computer Society resulted from an
effort led by Fletcher Buckley to develop IEEE standard 730 for software quality assurance, which was completed in
1979. The purpose of IEEE Std 730 was to provide uniform, minimum acceptable requirements for preparation and
content of software quality assurance plans. This standard was influential in completing the developing standards in
the following topics: configuration management, software testing, software requirements, software design, and
software verification and validation.
During the period 1981-1985, the IEEE Computer Society held a series of workshops concerning the application
of software engineering standards. These workshops involved practitioners sharing their experiences with existing
standards. The workshops also held sessions on planning for future standards, including one involving measures and
metrics for software engineering products and processes. The planning also resulted in IEEE Std 1002, Taxonomy of
Software Engineering Standards (1986), which provided a new, holistic view of software engineering. The standard
describes the form and content of a software engineering standards taxonomy. It explains the various types of
software engineering standards, their functional and external relationships, and the role of various functions
participating in the software life cycle.
In 1990, planning for an international standard with an overall view was begun. The planning focused on
reconciling the software process views from IEEE Std 1074 and the revised US DoD standard 2167A. The revision
was eventually published as DoD Std 498. The international standard was completed in 1995 with designation,
ISO/IEC12207, and given the title of Standard for Software Life Cycle Processes. Std ISO/IEC 12207 provided a
major point of departure for the body of knowledge captured in this book.
It was the IEEE Computer Society Board of Governors’ approval of the motion put forward in May 1993 by
Fletcher Buckley which resulted in the writing of this book. The Association for Computing Machinery (ACM)
Council approved a related motion in August 1993. The two motions led to a joint committee under the leadership of
Mario Barbacci and Stuart Zweben who served as cochairs. The mission statement of the joint committee was “To
establish the appropriate sets(s) of criteria and norms for professional practice of software engineering upon which
industrial decisions, professional certification, and educational curricula can be based.” The steering committee
organized task forces in the following areas:
1. Define Required Body of Knowledge and Recommended Practices.
2. Define Ethics and Professional Standards.
3. Define Educational Curricula for undergraduate, graduate, and continuing education.
This book supplies the first component: required body of knowledge and recommend practices.
The code of ethics and professional practice for software engineering was completed in 1998 and approved by
both the ACM Council and the IEEE Computer Society Board of Governors. It has been adopted by numerous
corporations and other organizations and is included in several recent textbooks.
The educational curriculum for undergraduates is being completed by a joint effort of the IEEE Computer
Society and the ACM and is expected to be completed in 2004.
© IEEE – 2004 Version vii
Every profession is based on a body of knowledge and recommended practices, although they are not always
defined in a precise manner. In many cases, these are formally documented, usually in a form that permits them to be
used for such purposes as accreditation of academic programs, development of education and training programs,
certification of specialists, or professional licensing. Generally, a professional society or related body maintains
custody of such a formal definition. In cases where no such formality exists, the body of knowledge and
recommended practices are “generally recognized” by practitioners and may be codified in a variety of ways for
different uses.
It is hoped that readers will find this book useful in guiding them toward the knowledge and resources they need
in their lifelong career development as software engineering professionals.
The book is dedicated to Fletcher Buckley in recognition of his commitment to promoting software engineering
as a professional discipline and his excellence as a software engineering practitioner in radar applications.
Leonard L. Tripp, IEEE Fellow 2003
Chair, Professional Practices Committee, IEEE Computer Society (2001-2003)
Chair, Joint IEEE Computer Society and ACM Steering Committee
for the Establishment of Software Engineering as a Profession (1998-1999)
Chair, Software Engineering Standards Committee, IEEE Computer Society (1992-1998)
viii  © IEEE – 2004 Version
ASSOCIATE EDITORS
The following persons served as Associate Editors for either the Trial version published in 2001 or for the 2004
version.
Software Requirements
Peter Sawyer and Gerald Kotonya, Computing Department, Lancaster University, UK,
{p.sawyer}{g.kotonya}@lancaster.ac.uk
Software Design
Guy Tremblay, Département d’informatique, UQAM, Canada, tremblay.guy@uqam.ca
Software Construction
Steve McConnell, Construx Software, USA, Steve.McConnell@construx.com
Terry Bollinger, the MITRE Corporation, USA, terry@mitre.org
Philippe Gabrini, Département d’informatique, UQAM, Canada, gabrini.philippe@uqam.ca
Louis Martin, Département d’informatique, UQAM, Canada, martin.louis@uqam.ca
Software Testing
Antonia Bertolino and Eda Marchetti, ISTI-CNR, Italy, {antonia.bertolino}{eda.marchetti}@isti.cnr.it
Software Maintenance
Thomas M. Pigoski, Techsoft Inc., USA, tmpigoski@techsoft.com
Alain April, École de technologie supérieure, Canada, aapril@ele.etsmtl.ca
Software Configuration Management
John A. Scott, Lawrence Livermore National Laboratory, USA, scott7@llnl.gov
David Nisse, USA, nissed@worldnet.att.net
Software Engineering Management
Dennis Frailey, Raytheon Company, USA, DJFrailey@Raytheon.com
Stephen G. MacDonell, Auckland University of technology, New Zealand, smacdone@aut.ac.nz
Andrew R. Gray, University of Otago, New Zealand
Software Engineering Process
Khaled El Emam, served while at the Canadian National Research Council, Canada,
khaled.el-emam@nrc-cnrc.gc.ca
Software Engineering Tools and Methods
David Carrington, School of Information Technology and Electrical Engineering, The University of
Queensland, Australia, davec@itee.uq.edu.au
Software Quality
Alain April, École de technologie supérieure, Canada, aapril@ele.etsmtl.ca
Dolores Wallace, retired from the National Institute of Standards and Technology, USA,
Dolores.Wallace@nist.gov
Larry Reeker, NIST, USA, Larry.Reeker@nist.gov
References Editor
Marc Bouisset, Département d’informatique, UQAM, Bouisset.Marc@uqam.ca
© IEEE – 2004 Version ix
INDUSTRIAL ADVISORY
BOARD
At the time of the publication, the following people formed the Industrial Advisory Board:
Mario R. Barbacci, Software Engineering Institute, representing the
IEEE Computer Society
Carl Chang, representing Computing Curricula 2001
François Coallier, École de technologie supérieure, speaking as ISO/IEC JTC 1 / SC7 Chairman
Charles Howell, The MITRE Corporation
Anatol Kark, National Research Council of Canada
Philippe Kruchten, University of British Columbia, served as representative of Rational Software
Laure Le Bars, SAP Labs (Canada)
Steve McConnell, Construx Software
Dan Nash, Raytheon Company
Fred Otto, Canadian Council of Professional Engineers (CCPE)
Richard Metz, The Boeing Company
Larry Reeker, National Institute of Standards and Technology, Department of Commerce, USA
The following persons served along with the IAB in the Executive Change Control Board for the 2004 edition:
Donald Bagert, Rose-Hulman Institute of Technology, representing the IEEE Computer Society Professional
Practices Committee
Ann Sobel, Miami University, representing the Computing Curricula Software Engineering Steering Committee
x  © IEEE – 2004 Version
PANEL OF EXPERTS
The following persons served on the panel of experts for the preparation of the Trial version of the Guide:
Steve McConnell, Construx Software
Roger Pressman, R.S. Pressman and Associates
Ian Sommerville, Lancaster University, UK
© IEEE – 2004 Version xi
REVIEW TEAM
The following people participated in the review process of this Guide for the Trial version and/or for the 2004
version.
Abbas, Rasha, Australia Bierwolf, Robert, The Charette, Robert, USA
Abran, Alain, Canada Netherlands Chevrier, Marielle, Canada
Accioly, Carlos, Brazil Bisbal, Jesus, Ireland Chi, Donald, USA
Chiew, Vincent, Canada
Ackerman, Frank, USA Boivin, Michel, Canada
Akiyama, Yoshihiro, Japan Bolton, Michael, Canada Chilenski, John, USA
Al-Abdullah, Mohammad, USA Bomitali, Evelino, Italy Chow, Keith, Italy
Alarcon, Miren Idoia, Spain Bonderer, Reto, Switzerland Ciciliani, Ricardo, Argentina
Alawy, Ahmed, USA Bonk, Francis, USA Clark, Glenda, USA
Alleman, Glen, USA Booch, Grady, USA Cleavenger, Darrell, USA
Allen, Bob, Canada Booker, Glenn, USA Cloos, Romain, Luxembourg
Allen, David, USA Börstler, Jürgen, Sweden Coallier, François, Canada
Amorosa, Francesco, Italy Borzovs, Juris, Latvia Coblentz, Brenda, USA
Amyot, Daniel, Canada Botting, Richard, USA Cohen, Phil, Australia
Andrade, Daniel, Brazil Bourque, Pierre, Canada Collard, Ross, New Zealand
Bowen, Thomas, USA Collignon, Stephane, Australia
April, Alain, Canada
Arroyo-Figueror, Javier, USA Boyd, Milt, USA Connors, Kathy Jo, USA
Ashford, Sonny, USA Boyer, Ken, USA Cooper, Daniel, USA
Atsushi, Sawada, Japan Brashear, Phil, USA Councill, Bill, USA
Backitis Jr., Frank, USA Briggs, Steve, USA Cox, Margery, USA
Bagert, Donald, USA Bright, Daniela, USA Cunin, Pierre-Yves, France
Baker, Jr., David, USA Brosseau, Jim, Canada DaLuz, Joseph, USA
Baker, Theodore, USA Brotbeck, George, USA Dampier, David, USA
Baldwin, Mark, USA Brown, Normand, Canada Daneva, Maya, Canada
Bales, David, UK Bruhn, Anna, USA Daneva, Maya, Canada
Bamberger, Judy, USA Brune, Kevin, USA Daughtry, Taz, USA
Bryant, Jeanne, USA Davis, Ruth, USA
Banerjee, Bakul, USA
Barber, Scott, USA Buglione, Luigi, Italy De Cesare, Sergio, UK
Barker, Harry, UK Bullock, James, USA Dekleva, Sasa, USA
Barnes, Julie, USA Burns, Robert, USA Del Castillo, Federico, Peru
Barney, David, Australia Burnstein, Ilene, USA Del Dago, Gustavo, Argentina
Barros, Rafael, Colombia Byrne, Edward, USA DeWeese, Perry, USA
Bastarache, Louis, Canada Calizaya, Percy, Peru Di Nunno, Donn, USA
Bayer, Steven, USA Carreon, Juan, USA Diaz-Herrera, Jorge, USA
Beaulac, Adeline, Canada Carroll, Sue, USA Dieste, Oscar, Spain
Beck, William, USA Carruthers, Kate, Australia Dion, Francis, Canada
Beckman, Kathleen, USA Caruso, Richard, USA Dixon, Wes, USA
Carvalho, Paul, Canada Dolado, Javier, Spain
Below, Doreen, USA
Benediktsson, Oddur, Iceland Case, Pam, USA Donaldson, John, UK
Ben-Menachem, Mordechai, Cavanaugh, John, USA Dorantes, Marco, Mexico
Israel Celia, John A., USA Dorofee, Audrey, USA
Bergeron, Alain, Canada Chalupa Sampaio, Alberto Douglass, Keith, Canada
Berler, Alexander, Greece Antonio, Portugal Du, Weichang, Canada
Bernet, Martin, USA Chan, F.T., Hong Kong Duben, Anthony, USA
Bernstein, Larry, USA Chan, Keith, Hong Kong Dudash, Edward, USA
Bertram, Martin, Germany Chandra, A.K., India Duncan, Scott, USA
Bialik, Tracy, USA Chang, Wen-Kui, Taiwan Duong, Vinh, Canada
Bielikova, Maria, Slovakia Chapin, Ned, USA Durham, George, USA
xii  © IEEE – 2004 Version
Dutil, Daniel, Canada Gresse von Wangenheim, Jones, James E., USA
Dutton, Jeffrey, USA Christiane, Brazil Jones, Alan, UK
Ebert, Christof, France Grigonis, George, USA Jones, James, USA
Edge, Gary, USA Gupta, Arun, USA Jones, Larry, Canada
Edwards, Helen Maria, UK Gustafson, David, USA Jones, Paul, USA
El-Kadi, Amr, Egypt Gutcher, Frank, USA Ju, Dehua, China
Endres, David, USA Haas, Bob, USA Juan-Martinez, Manuel-
Engelmann, Franz, Switzerland Hagar, Jon, USA Fernando, Spain
Escue, Marilyn, USA Hagstrom, Erick, USA Juhasz, Zoltan, Hungary
Espinoza, Marco, Peru Hailey, Victoria, Canada Juristo, Natalia, Spain
Fay, Istvan, Hungary Hall, Duncan, New Zealand Kaiser, Michael, Switzerland
Fayad, Mohamed, USA Haller, John, USA Kambic, George, USA
Fendrich, John, USA Halstead-Nussloch, Richard, Kamthan, Pankaj, Canada
Ferguson, Robert, USA USA Kaner, Cem, USA
Fernandez, Eduardo, USA Hamm, Linda, USA Kark, Anatol, Canada
Fernandez-Sanchez, Jose Luis, Hankewitz, Lutz, Germany Kasser, Joe, USA
Spain Harker, Rob, USA Kasser, Joseph, Australia
Filgueiras, Lucia, Brazil Hart, Hal, USA Katz, Alf, Australia
Finkelstein, Anthony, UK Hart, Ronald, USA Kececi, Nihal, Canada
Flinchbaugh, Scott, USA Hartner, Clinton, USA Kell, Penelope, USA
Forrey, Arden, USA Hayeck, Elie, USA Kelly, Diane, Canada
Fortenberry, Kirby, USA He, Zhonglin, UK Kelly, Frank, USA
Foster, Henrietta, USA Hedger, Dick, USA Kenett, Ron, Israel
Fowler, Martin, USA Hefner, Rick, USA Kenney, Mary L., USA
Fowler, John Jr., USA Heinrich, Mark, USA Kerievsky, Joshua, USA
Fox, Christopher, USA Heinze, Sherry, Canada Kerr, John, USA
Frankl, Phyllis, USA Hensel, Alan, USA Kierzyk, Robert, USA
Freibergs, Imants, Latvia Herrmann, Debra, USA Kinsner, W., Canada
Frezza, Stephen, USA Hesse, Wolfgang, Germany Kirkpatrick, Harry, USA
Fruehauf, Karol, Switzerland Hilburn, Thomas, USA Kittiel, Linda, USA
Fuggetta, Alphonso, Italy Hill, Michael, USA Klappholz, David, USA
Fujii, Roger, USA Ho, Vinh, Canada Klein, Joshua, Israel
FUSCHI, David Luigi, Italy Hodgen, Bruce, Australia Knight, Claire, UK
Fuschi, David Luigi, Italy Hodges, Brett, Canada Knoke, Peter, USA
Gabrini, Philippe, Canada Hoffman, Douglas, Canada Ko, Roy, Hong Kong
Gagnon, Eric, Canada Hoffman, Michael, USA Kolewe, Ralph, Canada
Ganor, Eitan, Israel Hoganson, Tammy, USA Komal, Surinder Singh, Canada
Garbajosa, Juan, Spain Hollocker, Chuck, USA Kovalovsky, Stefan, Austria
Garceau, Benoît, Canada Horch, John, USA Krauth, Péter, Hungary
Garcia-Palencia, Omar, Howard, Adrian, UK Krishnan, Nirmala, USA
Colombia Huang, Hui Min, USA Kromholz, Alfred, Canada
Garner, Barry, USA Hung, Chih-Cheng, USA Kruchten, Philippe, Canada
Gelperin, David, USA Hung, Peter, USA Kuehner, Nathanael, Canada
Gersting, Judith, Hawaii Hunt, Theresa, USA Kwok, Shui Hung, Canada
Giesler, Gregg, USA Hunter, John, USA Lacroix, Dominique, Canada
Gil, Indalecio, Spain Hvannberg, Ebba Thora, Iceland LaMotte, Stephen W., USA
Gilchrist, Thomas, USA Hybertson, Duane, USA Land, Susan, USA
Giurescu, Nicolae, Canada Ikiz, Seckin, Turkey Lange, Douglas, USA
Glass, Robert, USA Iyengar, Dwaraka, USA Laporte, Claude, Canada
Glynn, Garth, UK Jackelen, George, USA Lawlis, Patricia, USA
Goers, Ron, USA Jaeger, Dawn, USA Le, Thach, USA
Gogates, Gregory, USA Jahnke, Jens, Canada Leavitt, Randal, Canada
Goldsmith, Robin, USA James, Jean, USA LeBel, Réjean, Canada
Goodbrand, Alan, Canada Jino, Mario, Brazil Leciston, David, USA
Gorski, Janusz, Poland Johnson, Vandy, USA Lee, Chanyoung, USA
Graybill, Mark, USA Jones, Griffin, USA Lehman, Meir (Manny), UK
© IEEE – 2004 Version xiii
Leigh, William, USA Miranda, Eduardo, Canada Phister, Paul, USA
Lembo, Jim, USA Mistrik, Ivan, Germany Phister, Jr., Paul, USA
Lenss, John, USA Mitasiunas, Antanas, Lithuania Piattini, Mario, Spain
Leonard, Eugene, USA Modell, Howard, USA Piersall, Jeff, USA
Lethbridge, Timothy, Canada Modell, Staiger,USA Pillai, S.K., India
Leung, Hareton, Hong Kong Modesitt, Kenneth, USA Pinder, Alan, UK
Lever, Ronald, The Netherlands Moland, Kathryn, USA Pinheiro, Francisco A., Brazil
Levesque, Ghislain, Canada Moldavsky, Symon, Ukraine Plekhanova, Valentina, UK
Ley, Earl, USA Montequín, Vicente R., Spain Poon, Peter, USA
Linders, Ben, Netherlands Moreno, Ana Maria, Spain Poppendieck, Mary, USA
Linscomb, Dennis, USA Mosiuoa, Tseliso, Lesotho Powell, Mace, USA
Little, Joyce Currie, USA Moudry, James, USA Predenkoski, Mary, USA
Logan, Jim, USA Msheik, Hamdan, Canada Prescott, Allen, USA
Long, Carol, UK Mularz, Diane, USA Pressman, Roger, USA
Lounis, Hakim, Canada Mullens, David, USA Price, Art, USA
Low, Graham, Australia Müllerburg, Monika, Germany Price, Margaretha, USA
Lutz, Michael, USA Murali, Nagarajan, Australia Pullum, Laura, USA
Lynch, Gary, USA Murphy, Mike, USA Purser, Keith, USA
Machado, Cristina, Brazil Napier, John, USA Purssey, John, Australia
MacKay, Stephen, Canada Narasimhadevara, Sudha, Pustaver, John, USA
MacKenzie, Garth, USA Canada Quinn, Anne, USA
MacNeil, Paul, USA Narawane, Ranjana, India Radnell, David, Australia
Magel, Kenneth, USA Narayanan, Ramanathan, India Rae, Andrew, UK
Mains, Harold, USA Navarro Ramirez, Daniel, Rafea, Ahmed, Egypt
Malak, Renee, USA Mexico Ramsden, Patrick, Australia
Maldonado, José Carlos, Brazil Navas Plano, Francisco, Spain Rao, N.Vyaghrewara, India
Marcos, Esperanza, Spain Navrat, Pavol, Slovakia Rawsthorne, Dan, USA
Marinescu, Radu, Romania Neumann, Dolly, USA Reader, Katherine, USA
Marm, Waldo, Peru Nguyen-Kim, Hong, Canada Reddy, Vijay,USA
Marusca, Ioan, Canada Nikandros, George, Australia Redwine, Samuel, USA
Matlen, Duane, USA Nishiyama, Tetsuto, Japan Reed, Karl, Australia
Matsumoto, Yoshihiro, Japan Nunn, David, USA Reedy, Ann, USA
McBride, Tom, Australia O'Donoghue, David, Ireland Reeker, Larry, USA
McCarthy, Glenn, USA Oliver, David John, Australia Rethard, Tom, USA
McChesney, Ian, UK Olson, Keith, USA Reussner, Ralf, Germany
McCormick, Thomas, Canada Oskarsson, Östen, Sweden Rios, Joaquin, Spain
McCown, Christian, USA Ostrom, Donald, USA Risbec, Philippe, France
McDonald, Jim, USA Oudshoorn, Michael, Australia Roach, Steve, USA
McGrath Carroll, Sue, USA Owen, Cherry, USA Robillard, Pierre, Canada
McHutchison, Diane, USA Pai, Hsueh-Ieng, Canada Rocha, Zalkind, Brazil
McKinnell, Brian, Canada Parrish, Lee, USA Rodeiro Iglesias, Javier, Spain
McMichael, Robert, USA Parsons, Samuel, USA Rodriguez-Dapena, Patricia,
McMillan, William, USA Patel, Dilip, UK Spain
McQuaid, Patricia, USA Paulk, Mark, USA Rogoway, Paul, Israel
Mead, Nancy, USA Pavelka, Jan, Czech Republic Rontondi, Guido, Italy
Meeuse, Jaap, The Netherlands Pavlov, Vladimir, Ukraine Roose, Philippe, France
Meier, Michael, USA Pawlyszyn, Blanche, USA Rosca, Daniela, USA
Meisenzahl, Christopher, USA Pecceu, Didier, France Rosenberg, Linda, USA
Melhart, Bonnie, USA Perisic, Branko, Yugoslavia Rourke, Michael, Australia
Mengel, Susan, USA Perry, Dale, USA Rout, Terry, Australia
Meredith, Denis, USA Peters, Dennis, Canada Rufer, Russ, USA
Meyerhoff, Dirk, Germany Petersen, Erik, Australia Ruiz, Francisco, Spain
Mili, Hafedh, Canada Pfahl, Dietmar, Germany Ruocco, Anthony, USA
Miller, Chris, Netherlands Pfeiffer, Martin, Germany Rutherfoord, Rebecca, USA
Miller, Keith, USA Phillips, Dwayne, USA Ryan, Michael, Ireland
Miller, Mark, USA Phipps, Robert, USA Salustri, Filippo, Canada
xiv  © IEEE – 2004 Version
Salustri, Filippo, Canada Soundarajan, Neelam, USA Urbanowicz, Theodore, USA
Salwin, Arthur, USA Sousa Santos, Frederico, Van Duine, Dan, USA
Sanden, Bo, USA Portugal Van Ekris, Jaap, Netherlands
Sandmayr, Helmut, Switzerland Spillers, Mark, USA Van Oosterhout, Bram, Australia
Santana Filho, Ozeas Vieira, Spinellis, Diomidis, Greece Vander Plaats, Jim, USA
Brazil Splaine, Steve, USA Vegas, Sira, Spain
Sato, Tomonobu, Japan Springer, Donald, USA Verner, June, USA
satyadas, antony, USA Staiger, John, USA Villas-Boas, André, Brazil
Satyadas, Antony, USA Starai, Thomas, USA Vollman, Thomas, USA
Schaaf, Robert, USA Steurs, Stefan, Belgium Walker, Richard, Australia
Scheper, Charlotte, USA St-Pierre, Denis, Canada Walsh, Bucky, USA
Schiffel, Jeffrey, USA Stroulia, Eleni, Canada Wang, Yingxu, Sweden
Schlicht, Bill, USA Subramanian, K.S., India Wear, Larry, USA
Schrott, William, USA Sundaram, Sai, UK Weigel, richard, USA
Schwarm, Stephen, USA Swanek, James, USA Weinstock, Charles, USA
Schweppe, Edmund, USA Swearingen, Sandra, USA Wenyin, Liu, China
Sebern, Mark, USA Szymkowiak, Paul, Canada Werner, Linda, USA
Seffah, Ahmed, Canada Tamai, Tetsuo, Japan Wheeler, David, USA
Selby, Nancy, USA Tasker, Dan, New Zealand White, Nathan, USA
Selph, William, USA Taylor, Stanford, USA White, Stephanie, USA
Sen, Dhruba, USA Terekhov, Andrey A., Russian Whitmire, Scott, USA
Senechal, Raymond, USA Federation Wijbrans, Klaas, The
Sepulveda, Christian, USA Terski, Matt, USA Netherlands
Setlur, Atul, USA Thayer, Richard, USA Wijbrans-Roodbergen, Margot,
Sharp, David, USA Thomas, Michael, USA The Netherlands
Shepard, Terry, Canada Thompson, A. Allan, Australia Wilkie, Frederick, UK
Shepherd, Alan, Germany Thompson, John Barrie, UK Wille, Cornelius, Germany
Shillato, Rrobert W, USA Titus, Jason, USA Wilson, Charles, USA
Shintani, Katsutoshi, Japan Tockey, Steve, USA Wilson, Leon, USA
Silva, Andres, Spain Tovar, Edmundo, Spain Wilson, Russell, USA
Silva, Andres, Spain Towhidnejad, Massood, USA Woechan, Kenneth, USA
Singer, Carl, USA Trellue, Patricia, USA Woit, Denise, Canada
Sinnett, Paul, UK Trèves, Nicolas, France Yadin, Aharon, Israel
Sintzoff, André, France Troy, Elliot, USA Yih, Swu, Taiwan
Sitte, Renate, Australia Tsui, Frank, USA Young, Michal, USA
Sky, Richard, USA Tsuneo, Furuyama, Japan Yrivarren, Jorge, Peru
Smilie, Kevin, USA Tuohy, Kenney, USA Znotka, Juergen, Germany
Smith, David, USA Tuohy, Marsha P., USA Zuser, Wolfgang, Austria
Sophatsathit, Peraphon, Thailand Turczyn, Stephen, USA Zvegintzov, Nicholas, USA
Sorensen, Reed, USA Upchurch, Richard, USA Zweben, Stu, USA
© IEEE – 2004 Version xv
The following motion was unanimously adopted by the Industrial Advisory Board
on 6 February 2004.
The Industrial Advisory Board finds that the Software Engineering Body of Knowledge project initiated
in 1998 has been successfully completed; and endorses the 2004 Version of the Guide to the SWEBOK
and commends it to the IEEE Computer Society Board of Governors for their approval.
The following motion was adopted by the IEEE Computer Society Board of
Governors in February 2004.
MOVED, that the Board of Governors of the IEEE Computer Society approves the 2004 Edition of the
Guide to the Software Engineering Body of Knowledge and authorizes the Chair of the Professional
Practices Committee to proceed with printing.
xvi © IEEE – 2004 Version
PREFACE
has long offered a certification for computing
Software engineering is an emerging discipline and
professionals.
there are unmistakable trends indicating an increasing
level of maturity:
All of these efforts are based upon the presumption
that there is a Body of Knowledge that should be
Š Several universities throughout the world offer
mastered by practicing software engineers. The Body
undergraduate degrees in software engineering.
of Knowledge exists in the literature that has
For example, such degrees are offered at the
accumulated over the past thirty years. This book
University of New South Wales (Australia),
provides a Guide to that Body of Knowledge.
McMaster University (Canada), the Rochester
Institute of Technology (US), the University of
Sheffield (UK), and other universities.
PURPOSE
Š In the US, the Engineering Accreditation
The purpose of the Guide to the Software Engineering
Commission of the Accreditation Board for
Body of Knowledge is to provide a consensually
Engineering and Technology (ABET) is
validated characterization of the bounds of the
responsible for the accreditation of undergraduate
software engineering discipline and to provide a
software engineering programs.
topical access to the Body of Knowledge supporting
Š The Canadian Information Processing Society has
that discipline. The Body of Knowledge is subdivided
published criteria to accredit software engineering into ten software engineering Knowledge Areas (KA)
undergraduate university programs. plus an additional chapter providing an overview of the
KAs of strongly related disciplines. The descriptions of
Š The Software Engineering Institute’s Capability
the KAs are designed to discriminate among the
Maturity Model for Software (SW CMM) and the
various important concepts, permitting readers to find
new Capability Maturity Model Integration
their way quickly to subjects of interest. Upon finding
(CMMI) are used to assess organizational
a subject, readers are referred to key papers or book
capability for software engineering. The famous
chapters selected because they succinctly present the
ISO 9000 quality management standards have
knowledge.
been applied to software engineering by the new
ISO/IEC 90003.
In browsing the Guide, readers will note that the
content is markedly different from computer science.
Š The Texas Board of Professional Engineers has
Just as electrical engineering is based upon the science
begun to license professional software engineers.
of physics, software engineering should be based,
Š The Association of Professional Engineers and
among other things, upon computer science. In these
Geoscientists of British Columbia (APEGBC) has
two cases, though, the emphasis is necessarily
begun registering software professional engineers,
different. Scientists extend our knowledge of the laws
and the Professional Engineers of Ontario (PEO)
of nature while engineers apply those laws of nature to
has also announced requirements for licensing.
build useful artifacts, under a number of constraints.
Š The Association for Computing Machinery Therefore, the emphasis of the Guide is placed on the
(ACM) and the Computer Society of the Institute construction of useful software artifacts.
of Electrical and Electronics Engineers (IEEE)
Readers will also notice that many important aspects of
have jointly developed and adopted a Code of
information technology that may constitute important
Ethics and Professional Practice for software
software engineering knowledge are not covered in the
engineering professionals.
Guide, including specific programming languages,
Š The IEEE Computer Society offers the Certified relational databases, and networks. This is a
Software Development Professional certification consequence of an engineering-based approach. In all
for software engineering. The Institute for fields—not only computing—the designers of
Certification of Computing Professionals (ICCP) engineering curricula have realized that specific
technologies are replaced much more rapidly than the
engineering work force. An engineer must be equipped

with the essential knowledge that supports the
The ACM/CS Software Engineering Code of Ethics and
selection of the appropriate technology at the
Professional Practice can be found at
appropriate time in the appropriate circumstance. For
http://www.computer.org/certification/ethics.htm.
© IEEE – 2004 Version xvii
example, software might be built in Fortran using organizations in need of a consistent view of software
functional decomposition or in C++ using object- engineering for defining education and training
oriented techniques. The techniques for software requirements, classifying jobs, developing
configuring instances of those systems would be quite pe
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...