内容简介
第一篇 软件工程概述
第1章 软件工程
1.1 软件
1.1.1 软件的发展
1.1.2 软件定义
1.2 软件危机
1.2.1 软件危机及其产生原因
1.2.2 解决软件危机的途径
1.3 软件工程
1.3.1 软件工程的概念
1.3.2 软件工程的基本原理
1.3.3 软件工程方法学
1.4 本章小结
习题
第2章 软件过程
2.1 软件过程
2.2 软件的生命周期
2.3 软件过程模型
2.3.1 瀑布模型
2.3.2 原型模型
2.3.3 增量模型
2.3.4 螺旋模型
2.3.5 变换模型
2.3.6 喷泉模型
2.3.7 智能模型
2.3.8 第四代技术(4GT)模型
2.4 软件过程改进
2.5 本章小结
习题
第二篇 传统方法学
第3章 结构化分析
3.1 结构化分析概述
3.2 软件计划
3.2.1 问题定义
3.2.2 可行性分析
3.3 需求分析概述
3.3.1 需求分析的任务
3.3.2 需求分析的过程
3.4 需求获取
3.5 分析建模
3.5.1 分析模型
3.5.2 数据流图
3.5.3 数据字典
3.5.4 加工说明的描述工具
3.5.5 实体联系图
3.6 需求需求说明书
3.7 需求验证
3.8 本章小结
习题
第4章 结构化设计
4.1 结构化设计概述
4.1.1 结构化设计的概念与原理
4.1.2 模块独立
4.1.3 结构设计准则
4.2 总体设计
4.2.1 总体设计过程
4.2.2 面向数据流的设计方法
4.2.3 设计优化
4.2.4 总体设计说明书
4.3 详细设计
4.3.1 详细设计概述
4.3.2 详细设计工具
4.3.3 数据库设计
4.3.4 人机界面设计
4.3.5 库存管理系统详细设计
4.3.6 详细设计说明书
4.4 本章小结
习题
第5章 结构化实现
5.1 程序编码
5.1.1 结构化程序设计
5.1.2 程序设计语言
5.1.3 编码风格
5.1.4 编码效率
5.2 软件测试
5.2.1 测试的基本概念
5.2.2 白盒测试
5.2.3 黑盒测试
5.2.4 单元测试
5.2.5 集成测试
5.2.6 确认测试
5.2.7 系统测试
5.2.8 测试策略
5.3 软件调试
5.3.1 调试过程
5.3.2 调试技术
5.3.3 调试原则
5.4 本章小结
习题
第三篇 面向对象方法学
第6章 面向对象方法学
6.1 面向对象方法概述
6.1.1 对象
6.1.2 类
6.1.3 面向对象的定义
6.1.4 面向对象的基本特征
6.1.5 面向对象方法的优点
6.2 面向对象开发过程
6.2.1 面向对象分析
6.2.2 面向对象设计
6.2.3 面向对象编程
6.2.4 面向对象测试
6.2.5 面向对象维护
6.3 面向对象建模
6.3.1 模型
6.3.2 建模的目的
6.3.3 建模的重要性
6.3.4 面向对象建模方法
6.4 UML
6.4.1 UML的组成
6.4.2 UML的建模机制
6.4.3 常用的UML图
6.4.4 UML的主要特点
6.4.5 UML的应用领域
6.5 本章小结
习题
第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.2.5 识别对象之间的交互
7.3 本章小结
习题
第8章 面向对象设计
8.1 面向对象设计概述
8.1.1 面向对象设计任务
8.1.2 面向对象设计的准则
8.2 系统设计
8.2.1 子系统划分
8.2.2 体系结构设计
8.2.3 人机界面设计
8.2.4 数据库设计
8.3 类设计
8.3.1 类设计的目标
8.3.2 对象描述
8.3.3 算法设计
8.4 本章小结
习题
第9章 面向对象实现
9.1 面向对象编程
9.1.1 面向对象语言
9.1.2 面向对象语言的选择
9.1.3 程序设计风格
9.2 面向对象测试
9.2.1 面向对象测试概述
9.2.2 面向对象测试模型
9.2.3 面向对象测试用例设计
9.2.4 面向对象测试工具简介
9.3 面向对象维护
9.3.1 面向对象维护概述
9.3.2 分析理解面向对象软件
9.4 本章小结
习题
第四篇 软件项目管理
第10章 软件项目计划
10.1 软件生产率和质量度量
10.1.1 软件度量
10.1.2 面向规模的度量
10.1.3 面向功能的度量
10.1.4 软件质量的度量
10.1.5 影响软件生产率的因素
10.2 软件项目估算与开发成本估算
10.2.1 软件项目计划的目标
10.2.2 软件的范围
10.2.3 软件开发的资源
10.2.4 软件项目估算
10.2.5 分解技术
10.2.6 软件开发成本估算
10.3 进度计划
10.3.1 各阶段工作量的分配
10.3.2 制订开发进度计划
10.3.3 进度安排的方法
10.4 本章小结
习题
第11章 软件项目组织
11.1 组织原则
11.2 组织结构模式
11.3 程序设计小组的组织形式
11.4 人员配备
11.4.1 项目开发各阶段所需人员
11.4.2 配备人员的原则
11.4.3 对项目经理人员的要求
11.4.4 评价软件人员的条件
11.5 指导与检验
11.5.1 软件项目指导
11.5.2 软件项目检验
11.6 本章小结
习题
第12章 软件项目控制
12.1 风险管理
12.1.1 软件风险分类
12.1.2 风险识别
12.1.3 风险预测
12.1.4 处理风险的策略
12.2 质量保证
12.2.1 软件质量
12.2.2 软件质量保证措施
12.3 配置管理
12.3.1 软件配置管理的内容
12.3.2 软件配置管理的基本目标
12.3.3 软件配置管理角色职责
12.3.4 软件配置管理过程描述
12.3.5 软件配置管理的关键活动
12.4 本章小结
习题
第13章 软件工程标准化与软件文档
13.1 软件工程标准化
13.1.1 什么是软件工程标准
13.1.2 软件工程标准化的作用
13.1.3 软件工程标准化的级别分类
13.2 软件国际标准
13.2.1 ISO 90000质量标准
13.2.2 ISO/IEC 12207软件生存周期过程标准
13.2.3 ISO/IEC TR15504软件过程评估标准
13.2.4 IEEE1058.1软件项目管理计划标准
13.2.5 能力成熟度模型
13.3 软件文档
13.3.1 软件文档的作用与分类
13.3.2 文档的管理与维护
13.4 本章小结
习题