第1章 软件工程概述
1.1 软件的概念、特点和分类
1.2 软件的发展和软件危机
1.3 软件工程过程和软件生存期
1.4 软件生存期模型(SoftwareLifeCycleModel)
1.5 软件工程的基本目标
第2章 系统分析
2.1 基于计算机的系统
2.2 计算机系统工程
2.3 系统需求识别
2.4 可行性研究
2.5 成本-效益分析
2.6 技术分析
2.7 分配与权衡
2.8 系统结构的模型化
2.9 系统定义与评审
第3章 软件需求分析
3.1 软件需求分析的任务
3.2 需求分析的过程
3.3 软件需求分析的原则
3.4 分析员和用户的责任
3.5 软件需求分析方法
3.6 原型化方法(Protorping)
3.7 结构化分析方法(StructuredAnalisys,SA)
3.8 系统动态分析
3.9 数据及数据库需求
3.10 软件需求分析工具
第4章 软件设计
4.1 软件设计的目标和任务
4.2 软件设计基础
4.3 模块的独立性
4.4 结构化设计方法(StructuredDesign,sD)
4.5 数据设计及文件设计
4.6 过程设计
第5章 Jackson系统开发(JSD)方法
5.1 进程模型
5.2 JSD方法的步骤
5.3 实体动作分析
5.4 实体结构分析
5.5 定义初始模型
5.6 功能描述
5.7 决定系统时间特性
5.8 实现
第6章 用户界面设计
6.1 用户界面应具备的特性
6.2 用户界面设计的任务分析
6.3 用户界面任务和工作设计
6.4 界面设计的基本类型
6.5 数据输入界面设计
6.6 数据显示界面设计
6.7 控制界面的设计
第7章 程序编码
7.1 对源程序的质量要求
7.2 结构化程序设计(Structuredprogramming)
7.3 程序设计风格(ProgrammingStyle)
7.4 程序效率
7.5 程序设计语言
7.6 程序复杂性度量
第8章 软件测试
8.1 软件测试的基础
8.2 测试用例设计
8.3 白盒测试的测试用例设计
8.4 黑盒测试的测试用例设计
8.5 软件测试的策略
8.6 程序的静态分析方法
8.7 调试(Debug,排错)
8.8 软件测试工具
第9章 面向对象技术
9.1 面向对象的概念
9.2 开发过程
9.3 面向对象分析与高层设计
9.4 类的设计
9.5 实现与测试
9.6 Coad与Yourdon面向对象分析与设计技术
9.7 CRC卡片
9.8 Booch的方法
第10章 软件质量保证
10.1 软件质量的概念
10.2 软件质量的度量和评价
10.3 软件质量保证
10.4 软件质量保证体系
10.5 质量保证的实施
10.6 软件的质量设计
10.7 技术评审
10.8 软件可靠性
10.9 测试中的可靠性分析
10.10 软件容错技术
第11章 软件维护
11.1 软件维护的概念,
11.2 软件维护活动
11.3 程序修改的步骤及修改的副作用
11.4 软件可维护性
11.5 提高可维护性的方法
11.6 维护“老化代码”
11.7 逆向工程和再工程
11.8 软件配置管理(SoftwareConfigurationMa
第12章 软件工程标准化与软件文档
12.1 什么是软件工程标准
12.2 软件工程标准化的意义
12.3 软件工程标准的制定与推行
12.5 我国的软件工程标准化工作
12.6 ISO9000—3标准及软件质量认证
12.7 在开发机构中推行软件工程标准化
12.8 文档的作用与分类
第13章 软件项目管理与计划
13.1 项目管理过程
13.2 软件生产率和质量的度量
13.3 在软件工程过程中使用度量
13.4 软件项目估算
13.5 软件开发成本估算
13.6 风险分析
13.7 进度安排
13.8 软件项目的组织与计划
13.9 软件过程成熟度模型(CMM,CapatilityMaturityModel)
附录 计算机软件开发文档编写指南
一、可行性研究报告
二、项目开发计划
三、需求规格说明书
四、概要设计说明书
五、详细设计说明书
六、用户操作手册
七、测试计划
八、测试分析报告
九、开发进度月报
十、项目开发总结报告
十一、程序维护手册
十二、软件问题报告
十三、软件修改报告
参考文献