What is SWEBOK?
SWEBOK – a knowledge collection for software engineering
The development of software is a broad field. The Guide to the Software Engineering Body of Knowledge – abbreviated SWEBOK – is a collection of software engineering knowledge that attempts to unify the discipline of software engineering.
The guide is published by the IEEE Computer Society, a society of the IEEE (Institute of Electrical and Electronics Engineers). The origins of the collection of knowledge date back to the early 2000s. Similar to the discipline of software engineering, the guide has evolved over the last 20 years to reflect the industrial, educational, social, technical and technological changes in society.
The publication of the 2014 version of the guide (SWEBOK Guide v3) is considered an important milestone in establishing software engineering as a recognised engineering discipline. SWEBOK Version 4.0 has been available since mid-October 2024.
Compared to other knowledge or best practice collections such as the Project Management Body of Knowledge (PMBOK) or the Business Analysis Body of Knowledge (BABOK), SWEBOK is less well known. One reason – especially in contrast to the PMBOK – could be the acceptance of the knowledge collection: PMBOK is approved as a standard by ANSI and also the IEEE has recognised the work as a standard (IEEE Std 1490-2003). The SWEBOK Guide on the other hand has “only” gained recognition as ISO Technical Report 19759.
SWEBOK Goals
As a guideline, the SWEBOK has the following objectives:
- Presentation, structuring and unification of the discipline Software Engineering
- Promotion of a globally uniform view of software development
- Differentiation of software engineering from other disciplines
- Creating a foundation for training materials, curriculum development, and certification of software engineers
These goals are at least considered very ambitious, if not unattainable. Software technology is developing rapidly. Every day there are new techniques, tools or devices; it is almost impossible to establish a worldwide uniform view.
SWEBOK knowledge areas
In the current version, the two authors Michelle Phon and Eric Berkowitz list a total of 18 knowledge areas:
- Software Requirements including software requirements fundamentals, requirements process, requirements elicitation, analysis, specification, validation, and practical considerations and tools.
- Software Architecture with fundamentals and description, software architecture process and evaluation.
- Software Design including software design fundamentals, key issues, software structure and architecture, user interface design, design notations as well as strategies and methods, …
- Software Construction with fundamentals, technologies and practical considerations …
- Software Testing with fundamentals, test levels and techniques, measures, process and tools.
- Software Engineering Operations including fundamentals, planning, provisioning, governance, practical considerations, and tools.
- Software Maintenance with fundamentals, key issues, process, techniques and tools.
- Software Configuration Management including process, identification, control, auditing etc.
- Software Engineering Management with initiation and scope definition, project planning, enactment, review and evaluation …
- Software Engineering Process including definition, life cycles, assessment and improvement, as well as measurement and tools.
- Software Engineering Models and Methods including modeling, types of models, analysis and methods.
- Software Quality with fundamentals, processes, tools and practical considerations …
- Software security with fundamentals, management and organisation, engineering and process, systems and tools.
- Software Engineering Professional Practice with certification, code of ethics, group dynamics, etc.
- Software Engineering Economics with fundamentals, risks and uncertainties, outsourcing, etc.
- Computing Foundations
- Mathematical Foundations
- Engineering Foundations
What is new in SWEBOK v4.0?
Compared to version 3.0 from 2014, SWEBOK version 4.0 offers a number of new features:
- Three new knowledge areas have been added: software architecture, software security and software engineering operations.
- Existing knowledge areas have been updated with modern practices, including Agile and DevOps.
- Technologies such as AI, machine learning and IoT are now included in all knowledge areas.
The knowledge collection has been fundamentally restructured to improve clarity and usability and to make it easier to apply the knowledge on a daily basis. Whether this really works with 413 pages (compared to 335 pages in version 3.0) remains to be seen.
Here you can download SWEBOK 4.0. There is no German version.
If you like the article or would like to discuss it, please feel free to share it in your network. And if you have any comments, please do not hesitate to send us a message.
Here you will find additional information from our Smartpedia section: