Overview

IEEE Computer Society (2014, v3.0) — The canonical reference defining the scope and boundaries of software engineering as a professional discipline. Organizes the field into 15 knowledge areas with detailed breakdowns of topics, sub-topics, and references.

Knowledge Areas

#AreaScope
1Software RequirementsFundamentals, process, elicitation, analysis, specification, validation
2Software DesignFundamentals, key issues, structure/architecture, UI design, analysis/evaluation
3Software ConstructionFundamentals, managing construction, practical considerations
4Software TestingFundamentals, test levels, techniques, measures, process
5Software MaintenanceFundamentals, key issues, process, techniques
6Software Configuration ManagementManagement of SCM process, identification, control, status, audit, release
7Software Engineering ManagementInitiation, planning, enactment, review, closure, measurement
8Software Engineering ProcessProcess definition, lifecycle, assessment, measurement
9Software Engineering Models & MethodsModeling, types of models, analysis
10Software QualityFundamentals, management processes, practical considerations
11Software Engineering Professional PracticeProfessionalism, codes of ethics, group dynamics
12Software Engineering EconomicsLifecycle economics, risk, estimation
13Computing FoundationsProblem solving, abstraction, programming, data structures, algorithms
14Mathematical FoundationsSets, relations, functions, graph basics, proof techniques, probability
15Engineering FoundationsEmpirical methods, statistical analysis, measurement, engineering design

Significance

SWEBOK defines what a software engineer should know. It’s the foundation for IEEE’s professional certification (CSEP) and informs curricula worldwide. Useful as a self-assessment tool: which areas are strong, which need development?