简介
软件工程既是一门理论课程,又是一门实践性极强的实用学科,软件
工程研究的自标是让软件开发者在最短时间内以最少的成本开发出高质量
的产品。
本书从实用角度出发,介绍了如下内容:软件工程基本概念;软件开
发过程概述;项目计划与可行性研究;需求分析;软件概要设计;软件详
细设计;数据库设计;用户界面设计;面向对象的分析;面向对象的设计
;软件的实现;软件测试流程;软件测试方法;软件能力成熟度模型CMM;
实验指导。
本书适合作为高职教材,也可以作为工程技术人员的参考用书。
目录
目录
第1章 软件工程综述
1.1 计算机软件与计算机系统
1.1.1 软件的发展
1.1.2 计算机系统
1.2 工程、项目与软件工程的产生
1.2.1 工程和项目
1.2.2 软件工程的产生与定义
1.2.3 软件工程的原则
1.3 软件工程的基本原理
1.4 软件体系结构
1.4.1 层次结构
1.4.2 C/S结构
1.4.3 B/S结构
1.4.4 B/S和C/S比较
1.5 软件工程的研究范畴
1.5.1 软件工程方法学
1.5.2 软件工具和软件支撑环境
1.5.3 软件管理
1.5.4 软件的规范与标准
1.6 软件工程的目标
本章小结
习题
第2章 软件开发过程概述
2.1 软件生存周期
2.1.1 问题的定义及规划阶段
2.1.2 软件开发阶段
2.1.3 软件维护阶段
2.2 软件开发方法综述
2.2.1 结构化方法
2.2.2 面向数据结构的软件开发方法
2.2.3 面向问题的分析方法
2.2.4 面向对象的开发方法
2.2.5 可视化开发方法与工具
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.4.4 快速原型开发法的优点
2.5 软件工程思维的培养
2.6 软件开发成本估算
本章小结
习题
第3章 项目计划与可行性研究
3.1 项目工作计划
3.1.1 人力资源计划
3.1.2 硬件资源规划
3.1.3 软件资源规划
3.2 可行性研究
3.2.1 可行性研究的任务
3.2.2 可行性研究的步骤
3.3 《可行性分析报告》书写规范
3.4 项目启动
3.4.1 项目立项
3.4.2 项目组织的成立
本章小结
习题
第4章 软件需求分析
4.1 软件需求基础
4.1.1 需求分析的目标
4.1.2 需求分析的任务
4.2 软件需求分析过程
4.2.1 如何获取项目的需求
4.2.2 分析与综合
4.2.3 编制需求分析文档
4.2.4 综合评审
4.2.5 需求变更管理
4.3 数据流图
4.3.1 数据流图的构成
4.3.2 数据流图的绘制步骤
4.3.3 举例
4.4 数据字典
4.4.1 数据字典的用途
4.4.2 数据字典的内容
4.4.3 定义数据的方法
4.4.4 举例
4.5 《需求分析报告》书写规范
4.6 需求分析报告说明书实例
本章小结
习题
第5章 软件概要设计
5.1 概要设计综述
5.1.1 概要设计的任务
5.1.2 概要设计的过程
5.1.3 概要设计原则
5.2 结构化设计工具
5.2.1 IPO图
5.2.2 模块结构图
5.3 结构化设计方法
5.3.1 事务设计
5.3.2 变换设计
5.4 概要设计说明书
5.5 概要设计实例
本章小结
习题
第6章 软件详细设计
6.1 详细设计的任务
6.2 详细设计的原则
6.3 详细设计工具
6.3.1 程序流程图
6.3.2 方块图
6.3.3 PAD图
6.3.4 PDL
6.4 《详细设计说明书》格式
6.5 详细设计实例
6.5.1 图书管理子系统菜单设计
6.5.2 系统模块
6.5.3 系统管理
6.5.4 数据流程图
本章小结
习题
第7章 数据库设计
7.1 数据库设计概述
7.2 需求分析阶段的设计
7.2.1 业务与组织结构分析
7.2.2 数据流图
7.2.3 数据字典
7.3 概念设计阶段
7.3.1 概念模型的表示方法
7.3.2 E-R图的绘制步骤
7.4 逻辑设计阶段
7.4.1 逻辑模型的转换规则
7.4.2 模式转换示例
7.5 物理设计阶段
7.6 物理设计的内容
7.7 《数据库设计说明书》书写规范
7.8 实例:图书管理系统数据库设计
7.8.1 需求分析
7.8.2 数据库概念结构设计
7.8.3 数据库逻辑结构设计
本章小结
习题
第8章 用户界面设计
8.1 用户分类
8.2 用户界面的设计目标
8.3 用户界面设计方法
8.3.1 界面一致性
8.3.2 菜单的设计
8.3.3 鼠标与键盘对应原则
8.3.4 向导使用原则
8.3.5 系统响应时间
8.3.6 用户帮助设施
8.3.7 出错信息和警告
8.3.8 输入界面设计
8.3.9 输出界面设计
8.3.10 基于Web界面设计
本章小结
习题
第9章 面向对象与UML建模
9.1 传统开发方法
9.2 面向对象的方法及其基本概念
9.2.1 对象
9.2.2 类
9.2.3 实例
9.2.4 消息
9.2.5 方法
9.2.6 属性
9.2.7 继承
9.2.8 多态性
9.2.9 重载
9.3 UML建模语言
9.3.1 UML建模机制与建模方法
9.3.2 UML的结构
9.3.3 UML的关系与符号
9.4 UML图
9.4.1 类图
9.4.2 用例图
9.4.3 对象图
9.4.4 包图
9.4.5 交互图
9.4.6 状态图
9.4.7 活动图
9.4.8 组件图
9.4.9 部署图
9.5 系统分析实例
9.5.1 用例图
9.5.2 类图
9.5.3 序列图
9.5.4 状态图
9.5.5 活动图
9.5.6 协作图
9.6 结构化方法与面向对象方法的区别
本章小结
习题
第10章 使用Rational Rose工具快速建模
10.1 Rational Rose简介
10.2 Rose界面简介
10.3 创建角色
10.4 删除元素
10.5 建立角色和用例的关联
10.6 创建序列图
10.6.1 创建序列图标
10.6.2 描述对象
10.7 创建协作图
10.8 建立静态模型
10.8.1 创建类
10.8.2 细化类的设计
10.9 实现模型
本章小结
习题
第11章 面向对象的分析与设计
11.1 面向对象的分析
11.1.1 面向对象分析的任务
11.1.2 面向对象分析的步骤
11.2 面向对象的设计
11.3 面向对象的系统设计原则
11.4 面向对象的实施方法
11.5 实例:银行ATM自动取款机系统的分析与设计
11.5.1 系统的需求
11.5.2 建立对象模型
11.5.3 建立动态模型
11.5.4 建立功能模型
11.5.5 策划总体用户界面
本章小结
习题
第12章 软件编程质量
12.1 程序设计语言的特点与应用范围
12.1.1 程序设计语言的发展与分类
12.1.2 选择程序设计语言的方法
12.2 Java程序设计风格
12.3 程序设计算法与效率
12.3.1 程序设计算法
12.3.2 程序的运行效率
12.4 程序说明书
12.4.1 C/S结构
12.4.2 B/S结构
本章小结
习题
第13章 软件测试准备
13.1 软件测试的定义
13.2 图书借阅系统需求分析
13.3 图书借阅系统测试环境搭建
13.4 图书借阅系统软件设计
13.5 图书借阅系统的代码设计
13.5.1 信息保存
13.5.2 信息定义
13.5.3 函数
13.5.4 代码
13.6 测试计划说明书
本章小结
习题
第14章 软件测试方法
14.1软件测试方法介绍
14.2 白盒测试方法
14.2.1 任务1:利用语句覆盖方法设计测试用例
14.2.2 任务2:利用判断(分支)覆盖方法设计测试用例
14.2.3 任务3:利用条件覆盖方法设计测试用例
14.2.4 任务4:利用判断与条件覆盖测试方法设计测试用例
14.2.5 任务5:利用条件组合覆盖方法设计测试用例
14.2.6 任务6:利用路径覆盖方法设计测试用例
14.3 黑盒测试方法
14.3.1 任务7:利用等价类划分法设计测试用例
14.3.2 任务8:利用边界值分析方法设计测试用例
14.4 《缺陷报告单》格式
14.5 软件测试过程
14.5.1 单元测试
14.5.2 集成测试
14.5.3 系统测试
本章小结
习题
第15章 软件测试工具LoadRunner
15.1 LoadRunner的测试流程介绍
15.2 制定性能测试计划
15.2.1 分析应用程序
15.2.2 确定系统测试目标
15.3 创建负载测试
15.3.1 创建虚拟用户
15.3.2 查看脚本
15.4 测试实例
15.4.1 测试需求
15.4.2 录制和编辑脚本
15.4.3 回放脚本
15.4.4 优化脚本
15.5 创建运行场景
15.5.1 创建运行场景简介
15.5.2 在实际运行时查看脚本
15.6 运行负载测试
15.6.1 编译脚本
15.6.2 开始运行测试
15.7 分析及监视场景
本章小结
习题
第16章 软件能力成熟度模型CMM
16.1 CMM简介
16.2 CMM的等级
16.2.1 初始级
16.2.2 可重复级
16.2.3 已定义级
16.2.4 定量管理级
16.2.5 优化级
16.3 CMMI
16.4 CMMI的软件管理思想
16.5 CMM的关键过程域
16.5.1 可重复级中的关键过程域
16.5.2 已定义级中的关健过程域
16.5.3 定量管理级中的关键过程域
16.5.4 优化级中的关键过程域
16.6 CMM、ISO 9000与项目管理之间的关系
本章小结
习题
第17章 实验指导
17.1 软件工程工具及环境
17.1.1 实验目的
17.1.2 实验内容与步骤
17.2 软件开发绘图工具Visio
17.2.1 实验目的
17.2.2 实验内容与步骤
17.3 数据库设计工具PowerDesigner
17.3.1 实验目的
17.3.2 实验内容
17.3.3 项目需求
17.3.4 建立概念数据模型
17.3.5 建立概念模型和物理模型的步骤
本章小结
参考文献
第1章 软件工程综述
1.1 计算机软件与计算机系统
1.1.1 软件的发展
1.1.2 计算机系统
1.2 工程、项目与软件工程的产生
1.2.1 工程和项目
1.2.2 软件工程的产生与定义
1.2.3 软件工程的原则
1.3 软件工程的基本原理
1.4 软件体系结构
1.4.1 层次结构
1.4.2 C/S结构
1.4.3 B/S结构
1.4.4 B/S和C/S比较
1.5 软件工程的研究范畴
1.5.1 软件工程方法学
1.5.2 软件工具和软件支撑环境
1.5.3 软件管理
1.5.4 软件的规范与标准
1.6 软件工程的目标
本章小结
习题
第2章 软件开发过程概述
2.1 软件生存周期
2.1.1 问题的定义及规划阶段
2.1.2 软件开发阶段
2.1.3 软件维护阶段
2.2 软件开发方法综述
2.2.1 结构化方法
2.2.2 面向数据结构的软件开发方法
2.2.3 面向问题的分析方法
2.2.4 面向对象的开发方法
2.2.5 可视化开发方法与工具
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.4.4 快速原型开发法的优点
2.5 软件工程思维的培养
2.6 软件开发成本估算
本章小结
习题
第3章 项目计划与可行性研究
3.1 项目工作计划
3.1.1 人力资源计划
3.1.2 硬件资源规划
3.1.3 软件资源规划
3.2 可行性研究
3.2.1 可行性研究的任务
3.2.2 可行性研究的步骤
3.3 《可行性分析报告》书写规范
3.4 项目启动
3.4.1 项目立项
3.4.2 项目组织的成立
本章小结
习题
第4章 软件需求分析
4.1 软件需求基础
4.1.1 需求分析的目标
4.1.2 需求分析的任务
4.2 软件需求分析过程
4.2.1 如何获取项目的需求
4.2.2 分析与综合
4.2.3 编制需求分析文档
4.2.4 综合评审
4.2.5 需求变更管理
4.3 数据流图
4.3.1 数据流图的构成
4.3.2 数据流图的绘制步骤
4.3.3 举例
4.4 数据字典
4.4.1 数据字典的用途
4.4.2 数据字典的内容
4.4.3 定义数据的方法
4.4.4 举例
4.5 《需求分析报告》书写规范
4.6 需求分析报告说明书实例
本章小结
习题
第5章 软件概要设计
5.1 概要设计综述
5.1.1 概要设计的任务
5.1.2 概要设计的过程
5.1.3 概要设计原则
5.2 结构化设计工具
5.2.1 IPO图
5.2.2 模块结构图
5.3 结构化设计方法
5.3.1 事务设计
5.3.2 变换设计
5.4 概要设计说明书
5.5 概要设计实例
本章小结
习题
第6章 软件详细设计
6.1 详细设计的任务
6.2 详细设计的原则
6.3 详细设计工具
6.3.1 程序流程图
6.3.2 方块图
6.3.3 PAD图
6.3.4 PDL
6.4 《详细设计说明书》格式
6.5 详细设计实例
6.5.1 图书管理子系统菜单设计
6.5.2 系统模块
6.5.3 系统管理
6.5.4 数据流程图
本章小结
习题
第7章 数据库设计
7.1 数据库设计概述
7.2 需求分析阶段的设计
7.2.1 业务与组织结构分析
7.2.2 数据流图
7.2.3 数据字典
7.3 概念设计阶段
7.3.1 概念模型的表示方法
7.3.2 E-R图的绘制步骤
7.4 逻辑设计阶段
7.4.1 逻辑模型的转换规则
7.4.2 模式转换示例
7.5 物理设计阶段
7.6 物理设计的内容
7.7 《数据库设计说明书》书写规范
7.8 实例:图书管理系统数据库设计
7.8.1 需求分析
7.8.2 数据库概念结构设计
7.8.3 数据库逻辑结构设计
本章小结
习题
第8章 用户界面设计
8.1 用户分类
8.2 用户界面的设计目标
8.3 用户界面设计方法
8.3.1 界面一致性
8.3.2 菜单的设计
8.3.3 鼠标与键盘对应原则
8.3.4 向导使用原则
8.3.5 系统响应时间
8.3.6 用户帮助设施
8.3.7 出错信息和警告
8.3.8 输入界面设计
8.3.9 输出界面设计
8.3.10 基于Web界面设计
本章小结
习题
第9章 面向对象与UML建模
9.1 传统开发方法
9.2 面向对象的方法及其基本概念
9.2.1 对象
9.2.2 类
9.2.3 实例
9.2.4 消息
9.2.5 方法
9.2.6 属性
9.2.7 继承
9.2.8 多态性
9.2.9 重载
9.3 UML建模语言
9.3.1 UML建模机制与建模方法
9.3.2 UML的结构
9.3.3 UML的关系与符号
9.4 UML图
9.4.1 类图
9.4.2 用例图
9.4.3 对象图
9.4.4 包图
9.4.5 交互图
9.4.6 状态图
9.4.7 活动图
9.4.8 组件图
9.4.9 部署图
9.5 系统分析实例
9.5.1 用例图
9.5.2 类图
9.5.3 序列图
9.5.4 状态图
9.5.5 活动图
9.5.6 协作图
9.6 结构化方法与面向对象方法的区别
本章小结
习题
第10章 使用Rational Rose工具快速建模
10.1 Rational Rose简介
10.2 Rose界面简介
10.3 创建角色
10.4 删除元素
10.5 建立角色和用例的关联
10.6 创建序列图
10.6.1 创建序列图标
10.6.2 描述对象
10.7 创建协作图
10.8 建立静态模型
10.8.1 创建类
10.8.2 细化类的设计
10.9 实现模型
本章小结
习题
第11章 面向对象的分析与设计
11.1 面向对象的分析
11.1.1 面向对象分析的任务
11.1.2 面向对象分析的步骤
11.2 面向对象的设计
11.3 面向对象的系统设计原则
11.4 面向对象的实施方法
11.5 实例:银行ATM自动取款机系统的分析与设计
11.5.1 系统的需求
11.5.2 建立对象模型
11.5.3 建立动态模型
11.5.4 建立功能模型
11.5.5 策划总体用户界面
本章小结
习题
第12章 软件编程质量
12.1 程序设计语言的特点与应用范围
12.1.1 程序设计语言的发展与分类
12.1.2 选择程序设计语言的方法
12.2 Java程序设计风格
12.3 程序设计算法与效率
12.3.1 程序设计算法
12.3.2 程序的运行效率
12.4 程序说明书
12.4.1 C/S结构
12.4.2 B/S结构
本章小结
习题
第13章 软件测试准备
13.1 软件测试的定义
13.2 图书借阅系统需求分析
13.3 图书借阅系统测试环境搭建
13.4 图书借阅系统软件设计
13.5 图书借阅系统的代码设计
13.5.1 信息保存
13.5.2 信息定义
13.5.3 函数
13.5.4 代码
13.6 测试计划说明书
本章小结
习题
第14章 软件测试方法
14.1软件测试方法介绍
14.2 白盒测试方法
14.2.1 任务1:利用语句覆盖方法设计测试用例
14.2.2 任务2:利用判断(分支)覆盖方法设计测试用例
14.2.3 任务3:利用条件覆盖方法设计测试用例
14.2.4 任务4:利用判断与条件覆盖测试方法设计测试用例
14.2.5 任务5:利用条件组合覆盖方法设计测试用例
14.2.6 任务6:利用路径覆盖方法设计测试用例
14.3 黑盒测试方法
14.3.1 任务7:利用等价类划分法设计测试用例
14.3.2 任务8:利用边界值分析方法设计测试用例
14.4 《缺陷报告单》格式
14.5 软件测试过程
14.5.1 单元测试
14.5.2 集成测试
14.5.3 系统测试
本章小结
习题
第15章 软件测试工具LoadRunner
15.1 LoadRunner的测试流程介绍
15.2 制定性能测试计划
15.2.1 分析应用程序
15.2.2 确定系统测试目标
15.3 创建负载测试
15.3.1 创建虚拟用户
15.3.2 查看脚本
15.4 测试实例
15.4.1 测试需求
15.4.2 录制和编辑脚本
15.4.3 回放脚本
15.4.4 优化脚本
15.5 创建运行场景
15.5.1 创建运行场景简介
15.5.2 在实际运行时查看脚本
15.6 运行负载测试
15.6.1 编译脚本
15.6.2 开始运行测试
15.7 分析及监视场景
本章小结
习题
第16章 软件能力成熟度模型CMM
16.1 CMM简介
16.2 CMM的等级
16.2.1 初始级
16.2.2 可重复级
16.2.3 已定义级
16.2.4 定量管理级
16.2.5 优化级
16.3 CMMI
16.4 CMMI的软件管理思想
16.5 CMM的关键过程域
16.5.1 可重复级中的关键过程域
16.5.2 已定义级中的关健过程域
16.5.3 定量管理级中的关键过程域
16.5.4 优化级中的关键过程域
16.6 CMM、ISO 9000与项目管理之间的关系
本章小结
习题
第17章 实验指导
17.1 软件工程工具及环境
17.1.1 实验目的
17.1.2 实验内容与步骤
17.2 软件开发绘图工具Visio
17.2.1 实验目的
17.2.2 实验内容与步骤
17.3 数据库设计工具PowerDesigner
17.3.1 实验目的
17.3.2 实验内容
17.3.3 项目需求
17.3.4 建立概念数据模型
17.3.5 建立概念模型和物理模型的步骤
本章小结
参考文献
软件工程案例开发与实践
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
