跳转至

SWEBOK V3.0⚓︎

SWEBOK(Software Engineering Body of Knowledge,软件工程领域知识)^{[1]}

KA(Knowledge Area,知识领域)

我们在这一节中并不展开讲解,只是罗列一下知识领域,让大家可以模糊地认识到软件工程的复杂性,便于做好学习本书的充分准备。具体细节会渗透在后面的每一章节中。

15个领域知识

序号 英文名称         
中文名称         
说明<这一列需要以后再重写>
软件开发领域
1 Software Requirements 软件需求 需求获取、需求分析、需求描述、需求验证、需求变更、需求控制等
2 Software Design 软件设计 技术/框架选型、结构/架构设计、用户界面设计、组件/接口设计等
3 Software Construction 软件构建 程序编码、单元测试、集成测试的过程
4 Software Testing 软件测试 用事先设计的好的测试用例检测软件错误和失败
软件管理领域
5 Software Maintenance 软件维护 根据反馈意见和新需求做软件的修改、测试、更新
6 Software Configuration Management 软件配置管理 简单地理解就是版本控制,是一个时间点上所有与软件相关的信息的快照
7 Software Engineering Management 软件工程管理 启动、规划、实施、监控、结束等
8 Software Engineering Process 软件工程过程 软件生命周期过程本身的定义、实现、评估、管理、变更和改进
工程实践领域
9 Software Engineering Models and Methods 软件工程模型与方法 在软件的生产与使用、退役等各个过程中的参考模型的总称,诸如需求开发模型、架构设计模型等都属于软件工程模型的范畴;软件开发方法,主要讨论软件开发各种方法及其工作模型
10 Software Quality 软件质量 目标、评审、总结报告等
11 Software Engineering Professional Practice 软件工程职业实践 软件工程师应履行其实践承诺,使用软件的需求分析、规格说明、设计、开发、测试和维护成为一项有益受人尊敬的职业;还包括团队精神和沟通技巧等内容
基础知识领域
12 Software Engineering Economics 软件工程经济 研究为实现特定功能需求的软件工程项目而提出的在技术方案、生产(开发)过程、产品或服务等方面所做的经济服务与论证,计算与比较的一门系统方法论学科
13 Computing Foundations 计算基础 解决问题的技巧、抽象、编程基础、编程语言的基础知识、调试工具和技术、数据结构和表示、算法和复杂度、系统的基本概念、计算机的组织结构、编译基础知识、操作系统基础知识,数据库基础知识和数据管理、网络通信基础知识、并行和分布式计算、基本的用户人为因素、基本的开发人员人为因素和安全的软件开发和维护等方面的内容
14 Mathematical Foundations 数学基础 集合、关系和函数,基本的逻辑、证明技巧、计算的基础知识、图和树、离散概率、有限状态机、语法,数字精度、准确性和错误,数论和代数结构等方面的内容
15 Engineering Foundations 工程基础 实验方法和实验技术、统计分析、度量、工程设计,建模、模拟和建立原型,标准和影响因素分析等方面的内容

相关领域

序号 英文名称 中文名称
1 Computer Engineering 计算机工程
2 Computer Science 计算机科学
3 General Management 通用管理学
4 Mathematics 数学
5 Project Management 项目管理
6 Quality Management 质量管理
7 Systems Engineering 系统工程

[1] https://ieeecs-media.computer.org/media/education/swebok/swebok-v3.pdf