第1章 软件工程概述
1.1 软件与软件工程
1.1.1 软件的概念
1.1.2 软件危机
1.1.3 软件工程
1.2 软件工程方法与环境
1.2.1 软件工程方法
1.2.2 软件工具与环境
1.3 软件项目管理
1.3.1 项目与软件项目
1.3.2 项目管理基础
1.3.3 软件项目管理要素
习题1
第2章 软件过程
2.1 软件过程概述
2.1.1 软件生命周期
2.1.2 软件过程的概念
2.2 软件过程模型
2.2.1 瀑布模型
2.2.2 演化过程模型
2.2.3 增量过程模型
2.2.4 专用过程模型
2.2.5 Rational统一过程
2.2.6 敏捷过程模型
2.2.7 微软软件过程
2.3 软件项目过程
2.3.1 项目生命周期
2.3.2 项目管理过程
2.3.3 华为项目管理过程
2.4 软件过程改进
2.4.1 软件过程标准
2.4.2 软件能力成熟度模型
2.4.3 软件过程评估与改进
习题2
第3章 软件项目策划与项目计划
3.1 软件项目策划
3.1.1 软件项目策划概述
3.1.2 现有系统分析
3.2 可行性研究
3.2.1 可行性研究概述
3.2.2 可行性研究的主要问题
3.2.3 可行性研究的过程
3.3 软件项目计划
3.3.1 软件项目计划概述
3.3.2 软件项目计划基础工作
3.3.3 软件项目计划的内容
3.3.4 软件项目计划过程
习题3
第4章 软件需求工程
4.1 软件需求工程概述
4.1.1 软件需求工程基础
4.1.2 软件需求工程过程
4.2 需求开发与管理
4.2.1 需求获取
4.2.2 需求分析
4.2.3 需求定义
4.2.4 需求验证
4.2.5 需求管理
4.3 结构化分析
4.3.1 结构化分析概述
4.3.2 建立数据模型
4.3.3 建立功能模型
4.3.4 建立行为模型
4.3.5 数据字典
4.3.6 加工规格说明
4.4 面向对象分析
4.4.1 面向对象方法概述
4.4.2 统一建模语言
4.4.3 建立对象模型
4.4.4 建立动态模型
4.4.5 建立功能模型
习题4
第5章 软件设计
5.1 软件设计基础
5.1.1 软件设计概述
5.1.2 软件设计基本原理
5.2 软件设计技术过程
5.2.1 软件体系结构设计
5.2.2 数据设计
5.2.3 过程设计
5.2.4 用户界面设计
5.3 结构化设计
5.3.1 结构化设计过程
5.3.2 面向数据流的设计
5.4 面向对象的设计
5.4.1 面向对象的设计基础
5.4.2 建立物理模型
5.4.3 对象设计及优化
5.4.4 建立实现模型
习题5
第6章 编程与测试
6.1 程序设计基础
6.1.1 程序设计概述
6.1.2 程序设计语言
6.1.3 程序设计方法
6.2 软件测试基础
6.2.1 软件测试概述
6.2.2 软件测试过程与管理
6.2.3 软件测 例设计
6.3 软件测试过程与策略
6.3.1 软件测试过程
6.3.2 面向对象软件测试
6.3.3 用户界面测试
6.4 软件调试
6.4.1 软件调试概述
6.4.2 软件调试技术与方法
习题6
第7章 软件交付与维护
7.1 软件发布与项目总结
7.1.1 软件发布与交付
7.1.2 交付阶段的文档
7.1.3 项目总结
7.2 软件维护
7.2.1 软件维护概述
7.2.2 软件维护的内容
7.2.3 软件维护活动
7.2.4 软件的可维护性
7.3 软件重用与再工程
7.3.1 软件重用
7.3.2 软件再工程
习题7
第8章 项目组织与控制管理
8.1 软件项目组织管理
8.1.1 组织结构管理
8.1.2 项目团队建设
8.2 软件项目控制管理
8.2.1 质量管理
8.2.2 风险管理
8.2.3 文档管理
8.2.4 软件配置管理
习题8
附录A 软件开发文档参考规范
参考文献