内容简介
第1章 软件工程基础
1.1计算机系统工程
1.1.1硬件与硬件工程
1.1.2软件与软件工程
1.1.3人机工程
1.1.4数据库工程
1.1.5 网络工程
1.2软件工程
1.2.1软件
1.2.2软件工程的概念
1.2.3软件生命周期
1.2.4软件开发模型
1.3软件生存期模型
1.3.1软件生存期模型基础
1.3.2瀑布模型
1.3.3原型模型
1.3.4螺旋模型
1.3.5 基于四代技术模型
1.3.6 喷泉模型
1.3.7增量模型
1.4软件开发方法
1.4.1结构化方法
1.4.2面向数据结构方法
1.4.3面向对象方法
1.4.4原型法
1.5软件工程环境
1.5.1软件工程环境的定义
1.5.2软件开发环境的特点
1.6小结
习题1
2.1软件项目管理概述
第2章 软件项目管理基础
2.2.1任务和活动
2.2软件项目管理基本概念
2.2.2工作产品、工作包和角色
2.2.3工作分解结构
2.2.4任务模型
2.2.5 技能矩阵
2.2.6组织
2.2.7呈现组织结构
2.2.8软件项目管理计划
2.3软件项目管理活动
2.3.1计划项目
2.3.2组织项目
2.3.3 控制项目
2.3.4终结项目
习题2
2.4小结
第3章 软件需求分析基础
3.1需求分析的概念和原则
3.1.1需求分析
3.1.2需求分析中的沟通方法
3.1.3分析原则
3.1.4需求规格说明
3.1.5评审
3.2传统的软件需求分析基础
3.2.1 数据流图
3.2.2数据字典
3.2.3 实体-关系图(E-R图)
3.2.4状态转换图
习题3
3.3小结
第4章 软件设计基础
4.1软件设计的目标和任务
4.2软件设计基本概念
4.2.1模块与模块化
4.2.2抽象与逐步求精
4.2.3信息隐藏
4.2.4模块独立性
4.2.5软件体系结构
4.2.6 程序结构
4.2.7数据结构
4.3软件设计原则
4.4软件程序结构的启发式设计准则与优化
4.5设计规格说明书与设计复审
4.5.1设计规格说明书
4.5.2设计复审
4.6小结
习题4
第5章 软件体系结构设计
5.1软件体系结构
5.1.1软件体系结构的概念
5.1.2为什么软件体系结构重要
5.2数据体系结构设计
5.3软件体系结构风格
5.4软件体系结构中的技术
5.4.1 软件体系结构的开发技术
5.4.2软件分治策略
5.4.3软件可变性和依赖性管理
5.4.4集成策略
5.5将需求映射到软件体系结构
5.5.1 变换流
5.5.2 事务流
5.6面向数据流方法设计过程
5.6.1变换映射
5.6.2事务映射
5.6.3体系结构设计求精
5.7小结
习题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.4人机界面设计过程
6.4.1界面设计的模型
6.4.2任务分析与建模
6.4.3界面设计的一般问题
6.4.4构造界面原型
6.4.5界面设计的评估
6.5人机界面设计的原则与标准
6.5.1界面设计原则
6.5.2界面设计标准
6.6小结
习题6
7.1.1心理特性
7.1程序设计语言的特性
第7章 构件级设计与实现
7.1.2工程特性
7.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
第8章 面向对象的概念和记号
8.1面向对象的概念
8.1.1 对象概念
8.1.2类及其他关系概念
8.2面向对象建模中的记号
8.2.1 用例图
8.2.2类图
8.2.3交互图
8.2.4状态图
8.2.5 活动图
8.3小结
习题8
第9章 面向对象的需求获取与需求分析
9.1 面向对象的需求获取概述
9.1.1 对需求获取的总的看法
9.1.2需求获取概念
9.2需求获取活动
9.2.1标识参与者
9.2.2标识场景
9.2.3标识用例
9.2.4求精用例
9.2.5标识参与者和用例之间的关系
9.2.6标识初始的分析对象
9.2.7标识非功能需求
9.3需求获取管理
9.3.1 客户谈判规格说明:联合应用设计
9.3.2追踪性维护
9.3.3需求获取的书面说明
9.4面向对象分析
9.4.1分析的概述
9.4.2分析的概念
9.4.3分析活动:从用例导出对象
9.5小结
习题9
第10章 面向对象设计
10.1 面向对象的系统设计
10.1.1系统设计概述
10.1.2系统设计概念
10.1.3 系统设计活动:从对象到子系统
10.2面向对象目标贯彻
10.2.1 面向对象设计的目标贯彻
10.2.2系统设计活动概述
10.2.3 UML部署图
10.2.4系统设计活动中的设计目标贯彻
10.2.5管理系统设计
10.3.1使用模式设计对象
10.3面向对象的对象设计
10.3.2对象设计总论
10.3.3重用中的概念:解对象、继承和设计模式
10.4接口设计
10.4.1接口规格说明综述
10.4.2接口规格说明概念
10.4.3接口规格说明活动
10.4.4管理对象设计
10.5小结
习题10
第11章 软件测试
11.1 导言
11.1.1 软件测试的意义
11.1.3 软件测试的定义、目的、原则和研究对象
11.1.2基本概念
11.1.4软件测试的发展历史及趋势
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.5软件测试策略
11.5.1单元测试
11.5.2集成测试
11.5.3确认测试
11.5.4系统测试
11.5.5验收测试
11.5.6其他测试种类
11.5.7 排错
11.6 面向对象软件测试的基本思想
11.6.1 测试面向对象软件的特殊性
11.6.2面向对象软件的测试
11.7小结
习题11
第12章 软件维护
12.1软件维护概述
12.1.1软件维护及其分类
12.1.2软件维护成本
12.1.3软件维护策略
12.2.1软件维护活动
12.2软件维护过程及其模型
12.2.2软件维护过程模型
12.3软件的可维护性及其度量
12.3.1软件的可维护性
12.3.2软件可维护性度量
12.3.3提高可维护性的方法
12.4软件维护的副作用
12.5软件再工程
12.5.1什么是软件再工程
12.5.2软件再工程过程
12.5.3软件再工程的方法
12.6小结
习题12
附录A UML常用符号
附录B计算机软件开发文档指南
参考文献