第1章 概述
1. 1 软件的概念
1. 1. 1 软件技术的发展阶段
1. 1. 2 软件的定义
1. 1. 3 软件的分类
1. 2 软件危机
1. 2. 1 什么是软件危机
1. 2. 2 产生软件危机的原因
1. 2. 3 解决软件危机的途径
1. 3 软件工程
1. 3. 1 软件工程的定义
1. 3. 2 软件工程的内容
1. 3. 3 软件工程的基本原理
1. 3. 4 软件工程项目的基本目标
1. 3. 5 软件工程的开发原则
1. 4 软件过程和软件生存期
1. 4. 1 软件过程
1. 4. 2 软件生存周期
1. 5 软件开发过程模型
1. 5. 1 瀑布模型
1. 5. 2 原型模型(快速原型模型)
1. 5. 3 螺旋模型
1. 5. 4 喷泉模型
1. 5. 5 构件组装模型
1. 5. 6 统一过程RUP模型
1. 5. 7 第四代技术
1. 6 软件开发方法简述
1. 6. 1 结构化方法
1. 6. 2 面向数据结构的开发方法
1. 6. 3 面向对象的方法
1. 6. 4 可视化开发方法
1. 7 软件工程的最新发展动向
小结
习题1
第2章 软件计划
2. 1 可行性研究
2. 1. 1 可行性研究的任务
2. 1. 2 可行性研究的步骤
2. 2 系统流程图
2. 2. 1 系统流程图的符号
2. 2. 2 系统流程图举例
2. 2. 3 分层
2. 3 制定软件计划
2. 3. 1 确定软件计划
2. 3. 2 复审软件计划
2. 4 成本/效益分析
2. 4. 1 成本估算技术
2. 4. 2 成本/效益分析的方法
小结
习题2
第3章 需求分析
3. 1 需求分析的概念和任务
3. 1. 1 需求的概念
3. 1. 2 需求的层次
3. 1. 3 需求分析的任务
3. 2 获取需求的方法
3. 2. 1 存在问题
3. 2. 2 常用方法
3. 2. 3 需求分析的原则
3. 2. 4 需求分析方法概述
3. 3 结构化分析方法
3. 3. 1 结构化分析方法的基本思想
3. 3. 2 描述工具
3. 3. 3 数据流图
3. 3. 4 数据字典
3. 3. 5 加工逻辑说明
3. 4 原型法
3. 4. 1 原型的概念
3. 4. 2 快速原型开发过程
小结
习题3
第4章 总体设计
4. 1 总体设计的任务及目标
4. 1. 1 总体设计的任务
4. 1. 2 总体设计的目标
4. 2 总体设计的概念和原理
4. 2. 1 软件结构和过程
4. 2. 2 模块化
4. 3 设计准则
4. 4 总体设计的常用方法及工具
4. 4. 1 面向数据流的设计方法
4. 4. 2 面向数据结构的分析设计方法
小结
习题4
第5章 详细设计
5. 1 详细设计的任务
5. 2 详细设计的原则
5. 3 详细设计的方法和工具
5. 3. 1 详细设计的方法
5. 3. 2 详细设计的工具
5. 3. 3 详细设计工具的选择
5. 4 详细设计规格说明与复审
5. 4. 1 详细设计说朋
5. 4. 2 设计复审
5. 5 界面设计
5. 5. 1 用户界面设计的一般原则和步骤
5. 5. 2 字符界面设计
5. 5. 3 菜单设计
5. 5. 4 对话框设计
5. 5. 5 多窗口界面设计
5. 6 软件体系结构
5. 6. 1 软件体系结构的兴起
5. 6. 2 软件体系结构的概念
5. 6. 3 软件体系结构的现状及发展方向
5. 6. 4 软件体系结构的风格
5. 6. 5 软件体系结构的描述方法
5. 7 几种新型的软件体系结构
5. 7. 1 正交软件体系结构
5. 7. 2 三层C/S软件体系结构
5. 7. 3 C/S与B/S混合软件体系结构
5. 8 软件体系结构与操作系统
5. 8. 1 操作系统的体系结构
5. 8. 2 模块结构
5. 8. 3 分层结构
5. 8. 4 微内核结构
小结
习题5
第6章 编码
6. 1 程序设计语言
6. 1. 1 程序设计语言的分类
6. 1. 2 选择程序设计语言的标准
6. 2 程序设计风格
6. 2. 1 源程序文档化
6. 2. 2 数据说明
6. 2. 3 语句结构
6. 2. 4 输入和输出(I/O)
6. 3 实例
小结
习题6
第7章 软件测试
7. 1 软件测试的任务和目标
7. 1. 1 软件测试的目标
7. 1. 2 软件测试原则
7. 2 软件测试的方法
7. 2. 1 白盒测试法
7. 2. 2 黑盒测试法
7. 3 软件测试的步骤
7. 3. 1 单元测试
7. 3. 2 集成测试
7. 3. 3 确认测试
7. 3. 4 系统测试
7. 4 调试
7. 4. 1 调试过程
7. 4. 2 调试方法
7. 4. 3 调试原则
7. 5 软件测试工具
7. 5. 1 自动软件测试的优点
7. 5. 2 测试工具分类
7. 5. 3 测试脚本
7. 5. 4 自动测试的相关问题
7. 5. 5 常用软件测试工具及特点
7. 6 实例
小结
习题7
第8章 软件维护
8. 1 软件维护的概念
8. 2 软件维护的特点
8. 2. 1 影响维护的问题很多
8. 2. 2 维护的代价高昂
8. 3 软件维护的步骤
8. 3. 1 维护申请报告
8. 3. 2 维护工作实施
8. 3. 3 维护文档整理
8. 3. 4 维护活动评价
8. 4 软件的可维护性
8. 4. 1 影响软件可维护性的因素
8. 4. 2 提高软件的可维护性方法
8. 5 逆向工程和再工程
8. 5. 1 预防性维护
8. 5. 2 软件的逆向工程和再工程
8. 6 实例
小结
习题8
第9章 面向对象方法学
9. 1 面向对象方法学的引入
9. 1. 1 传统方法学的缺点
9. 1. 2 面向对象技术特点
9. 1. 3 面向对象方法学的优点
9. 2 面向对象的基本概念和特性
9. 2. 1 面向对象的基本概念
9. 2. 2 面向对象的基本特性
9. 3 面向对象分析
9. 3. 1 面向对象分析的目标和任务
9. 3. 2 面向对象分析的基本原则
9. 3. 3 面向对象分析的基本过程
9. 3. 4 面向对象建模
9. 4 面向对象设计
9. 4. 1 面向对象设计的基本原则
9. 4. 2 面向对象设计的基本内容
9. 5 几种流行的面向对象方法
9. 5. 1 Coad-Yourdon方法
9. 5. 2 对象模型技术
9. 5. 3 Booch的方法
9. 6 统一建模语言
9. 6. 1 统一建模语言概述
9. 6. 2 UML视图
9. 6. 3 对象建模
9. 6. 4 动态建模
9. 6. 5 功能建模
9. 7 面向对象实现
9. 7. 1 程序设计语言
9. 7. 2 程序设计风格
9. 7. 3 面向对象的程序测试
9. 7. 4 面向对象的软件维护
9. 8 面向对象实例
9. 8. 1 图书馆管理信息系统的需求说明
9. 8. 2 UML建模
小结
习题9
第10章 软件工程标准化和软件文档
10. 1 软件工程标准化的概念
10. 1. 1 什么是软件工程标准化
10. 1. 2 软件工程标准化的意义
10. 1. 3 软件工程标准化的类型
10. 2 软件工程标准的制定与推行
10. 2. 1 软件工程标准的制定与推行
10. 2. 2 软件工程标准在开发机构中的推行
10. 3 软件工程标准的层次和体系框架
10. 3. 1 软件工程标准的层次
10. 3. 2 软件工程标准的体系框架
10. 3. 3 中国的软件工程标准化工作
10. 4 ISO 9000国际标准简介
10. 4. 1 ISO 9000标准概述
10. 4. 2 ISO 9000标准的特点
10. 4. 3 ISO 9000标准的构成
10. 5 软件文档
10. 5. 1 软件文档的作用和分类
10. 5. 2 软件文档的编制要求
10. 5. 3 软件文档的管理和维护
小结
习题10
第11章 软件工程质量
11. 1 软件质量特性
11. 1. 1 软件质量的定义
11. 1. 2 软件质量的特性
11. 2 软件质量的度量和评价
11. 2. 1 软件质量的度量
11. 2. 2 软件质量的评价
11. 3 软件质量保证
11. 3. 1 什么是软件质量保证
11. 3. 2 软件质量保证的主要任务
11. 3. 3 软件质量保证体系
11. 4 软件质量管理体系
11, 4. 1 软件产品质量管理的特点
11. 4. 2 软件质量管理的指导思想
11. 4. 3 软件开发的质量管理体系
小结
习题11
第12章 软件工程项目管理
12. 1 软件项目管理
12. 1. 1 软件项目管理的特点
12. 1. 2 软件项目管理的主要职能
12. 2 常见管理技术及工具简介
12. 2. 1 软件项目管理的主要内容
12. 2. 2 常见工具简介
12. 3 软件过程成熟度模型
12. 3. 1 CMM概述
12, 3. 2 CMM的成熟度级别
12. 4 利用CMM对软件机构进行成熟度评估
12. 5 项目管理认证体系IPMP与PMP
12. 5. 1 IPMP概况
12. 5. 2 PMP简介
12. 5. 3 我国目前的项目管理认证体系的发展状况
小结
习题12
第13章 开发实例
13. 1 项目论证和计划
13. 1. 1 系统调查
13. 1. 2 新系统的总体功能需求和性能要求
13. 1. 3 完成文档
13. 2 需求分析
13. 2. 1 数据流分析
13. 2. 2 数据字典
13. 2. 3 处理逻辑描述
13. 2. 4 形成需求规格说明书并进行需求评审
13. 3 系统设计
13. 3. 1 系统总体概要设计
13. 3. 2 代码设计
13. 3. 3 数据库设计
13. 3. 4 界面设计
13. 3. 5 完成设计文档和设计评审
13. 4 系统实现
小结
附录A 项目开发文档
参考文献