| Part of a series on |
| Software development |
|---|
Paradigms and models |
Standards and bodies of knowledge |
TheSoftware Engineering Body of Knowledge (SWEBOK (/ˈswiːˌbɒk/SWEE-bok)) refers to the collective knowledge, skills, techniques, methodologies, best practices, and experiences accumulated within the field ofsoftware engineering over time. A baseline for this body of knowledge is presented in theGuide to the Software Engineering Body of Knowledge,[1] also known as theSWEBOK Guide, anISO/IEC standard originally recognized as ISO/IEC TR 19759:2005[2] and later revised by ISO/IEC TR 19759:2015.[3] TheSWEBOK Guide serves as a compendium and guide to the body of knowledge that has been developing and evolving over the past decades.
TheSWEBOK Guide has been created through cooperation among several professional bodies and members of industry and is published by theIEEE Computer Society (IEEE),[4] from which it can be accessed for free.
In late 2013,SWEBOK V3 was approved for publication and released.[5]
In 2016, the IEEE Computer Society began the SWEBOK Evolution effort to develop future iterations of the body of knowledge.[6] The SWEBOK Evolution project resulted in the publication ofSWEBOK Guide version 4 in October 2024.[7]
The published version ofSWEBOK V4 (Guide to the Software Engineering Body of Knowledge) has the following 18knowledge areas (KAs) within the field ofsoftware engineering:
It also recognized, but did not define, these related disciplines:
The published version ofSWEBOK V3 has the following 15knowledge areas (KAs) within the field ofsoftware engineering:
It also recognized, but did not define, these related disciplines:
The 2004 edition of theSWEBOK Guide, known asSWEBOK 2004, defined tenknowledge areas (KAs) within the field ofsoftware engineering:
The following disciplines are also defined as being related to software engineering:
A similar effort to define a body of knowledge for software engineering is the "Computing Curriculum Software Engineering (CCSE)," officially namedSoftware Engineering 2004 (SE2004). The curriculum largely overlaps withSWEBOK 2004 since the latter has been used as one of its sources, although it is more directed towards academia. Whereas theSWEBOK Guide defines the software engineering knowledge that practitioners should have after four years of practice, SE2004 defines the knowledge that anundergraduate software engineering student should possess upon graduation (including knowledge of mathematics, general engineering principles, and other related areas).SWEBOK V3 aims to address these intersections.