前言
第1章 软件工程概述
1.1 软件
1.1.1 软件的概念与特点
1.1.2 软件的分类
1.2 软件危机
1.3 软件工程
1.3.1 软件工程的概念
1.3.2 软件工程的基本目标
1.3.3 软件工程的基本原理
1.3.4 软件工程的原则
1.4 软件生存周期
1.4.1 软件的定义阶段
1.4.2 软件的开发阶段
1.4.3 软件的使用、维护和退役阶段
1.5 软件的开发模型
1.5.1 瀑布模型
1.5.2 原型模型
1.5.3 螺旋模型
1.5.4 喷泉模型
1.5.5 基于第四代技术的模型
1.5.6 增量模型
1.5.7 迭代模型
1.6 软件开发方法和工具
1.6.1 结构化方法
1.6.2 面向对象方法
1.6.3 软件工具与开发环境
小结
习题
第2章 软件需求基础
2.1 需求分析概述
2.1.1 需求分析的难点
2.1.2 需求分析的基本原则
2.1.3 需求分析的基本任务
2.2 可行性研究
2.2.1 可行性研究的内容
2.2.2 可行性研究的具体步骤
2.2.3 可行性研究报告的内容
2.3 初步需求获取方法
2.3.1 访谈与会议
2.3.2 观察用户工作流程
2.3.3 建立联合小组
2.3.4 其他获取方法
2.4 需求分析的过程及方法
2.4.1 需求分析过程
2.4.2 软件需求建模
2.4.3 需求分析方法
2.5 软件需求规格说明和需求评审
2.5.1 软件需求规格说明和初步用户手册
2.5.2 软件需求评审
小结
习题
第3章 软件设计基础
3.1 软件设计概述
3.1.1 软件设计在开发阶段的重要性
3.1.2 软件设计的任务
3.1.3 软件设计的目标
3.1.4 软件设计的过程
3.2 软件设计的基本概念
3.2.1 抽象与逐步求精
3.2.2 模块化
3.2.3 信息隐蔽
3.2.4 模块独立
3.3 软件体系结构设计
3.3.1 基本概念
3.3.2 体系结构设计的风格
3.4 数据结构设计
3.4.1 数据结构设计
3.4.2 在设计程序结构时数据结构的选择方法
3.5 软件过程设计
3.5.1 结构化程序设计方法
3.5.2 图形设计工具
3.5.3 判定表和判定树
3.5.4 过程设计语言PDL
3.6 软件设计规格说明及评审
小结
习题
第4章 结构化分析与设计
4.1 结构化分析方法概述
4.2 数据流图
4.2.1 数据流图的图形表示
4.2.2 分层数据流图的画法
4.2.3 分层数据流图的审查
4.3 数据字典
4.3.1 数据字典的描述符号
4.3.2 字典条目
4.3.3 数据字典的实现
4.4 描述基本加工的小说明
4.5 E-R图
4.6 结构化设计方法概述
4.7 数据流图到软件体系结构的映射
4.7.1 信息流类型
4.7.2 映射步骤
4.7.3 变换分析
4.7.4 事务分析
4.8 启发式设计策略
小结
习题
第5章 面向对象的分析与设计
5.1 面向对象的概念
5.1.1 对象
5.1.2 类
5.1.3 实例
5.1.4 消息
5.1.5 属性
5.1.6 操作和方法
5.1.7 继承
5.1.8 封装
5.1.9 多态性
5.1.1 0重载
5.1.1 1面向对象方法的要点
5.2 UML概述
5.2.1 UML发展历史
5.2.2 UML简介
5.3 RUP统一过程开发模型
5.4 用例建模
5.4.1 用例图
5.4.2 用例图分析流程
5.4.3 用例建模小结
5.5 静态建模
5.5.1 类图
5.5.2 类与类之间的静态关系
5.5.3 对象图
5.5.4 包图
5.5.5 静态建模的基本方法及举例
5.5.6 静态建模小结
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 布署图
5.8 面向对象的软件建模工具
5.8.1 建模工具简介
5.8.2 RationalRose简介
小结
习题
第6章 人机界面设计
6.1 人的因素
6.1.1 人对感知过程的认识
6.1.2 用户的技能和用户间的差异
6.2 人机界面的风格与交互方式
6.2.1 人机界面的风格
6.2.2 ,人机界面的交互方式
6.3 人机界面的设计过程
6.3.1 界面设计中涉及的模型
……
第7章 编码
第8章 软件测试
第9章 软件维护
第10章 软件项目管理
第11章 软件工程标准化与软件文档
第12章 Web工程
参考文献