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