简介
本书着重从实用角度讲述软件工程的基本概念、原理、方法和工具,系统地介绍目前较成熟的、广泛使用的软件工程技术。具体内容包括有:软件工程概论,需求分析,系统设计与实现(概要设计、详细设计、界面设计与程序设汁),软件测试、验证与确认,软件维护,面向对象设计方法和UML的使用,软件工程管理技术,软件开发工具与集成化环境,软件开发实例等。本书不仅可作为应用型本科和高职高专计算机专业的教材,也可供从事计算机软件开发及应用的广大科技人员参考。
软件工程已成为计算机科学的一个重要分支。本书着重从实用角度讲述软件工程的基本概念、原理、方法和工具,系统地介绍目前较成熟的、广泛使用的软件工程技术。
本书内容包括:软件工程概论,需求分析,系统设计与实现(概要设计、详细设计、界面设计与程序设汁),软件测试、验证与确认,软件维护,面向对象设计方法和UML的使用,软件工程管理技术,软件开发工具与集成化环境,软件开发实例等。每章都有小结供读者复习总结,有习题供选用。
本书可作为应用型本科和高职高专计算机专业的教材,也可供从事计算机软件开发及应用的广大科技人员参考。
目录
第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.3 软件开发方法
1.3.1 面向数据流设计方法
1.3.2 面向数据结构设计方法
1.3.3 面向对象设计方法
小结
习题1
第2章 需求分析
2.1 需求分析的任务
2.1.1 确定目标系统的具体要求
2.1.2 建立目标系统的逻辑模型
.2.1.3 软件需求规格说明
2.1.4 修正系统开发计划
2.1.5 制定初步的系统测试计划
2.1.6 编写用户手册
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 数据流图的4种基本符号
2.4.2 数据流图的几种附加符号
2.4.3 画数据流图的步骤
2.4.4 几点注意事项
2.5 状态转换图
2.5.1 画状态转换图的步骤
2.5.2 状态转换图的符号
2.6 数据字典
2.6.1 数据字典的内容
2.6.2 数据字典使用的符号
2.6.3 数据字典与数据流图
2.7 需求分析图形工具
2.7.1 层次图
2.7.2 warnier图
2.7.3 ipo图
小结
习题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.4.3 评估界面设计的标准
3.4.4 界面设计指南
3.5 过程设计
3.6 详细设计工具
3.6.1 流程图
3.6.2 盒图
3.6.3 pad图
3.6.4 判定表
3.6.5 判定树
3.6.6 过程设计语言
3.7 结构化设计方法
3.7.1 变换型
3.7.2 事务型
3.8 结构化程序设计
3.8.1 程序设计语言的选择
3.8.2 程序设计风格
3.9 程序结构复杂程度的度量
3.9.1 mccabe方法
3.9.2 halstead方法
小结
习题3
第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.3.4 确认测试
4.3.5 平行运行
4.4 设计测试方案、实用测试策略
4.4.1 等价类划分法
4.4.2 边界值分析法
4.4.3 错误推测法
4.4.4 逻辑覆盖法
4.4.5 因果图法
4.4.6 实用测试策略
4.4.7 软件调试
4.5 软件验证与确认
4.5.1 软件验证
4.5.2 软件确认
小结
习题4
第5章 软件维护
5.1 维护的定义、特点、过程
5.1.1 维护的定义
5.1.2 维护的特点
5.1.3 维护的过程
5.2 可维护性
5.2.1 决定可维护性的因素
5.2.2 可维护性的度量
5.2.3 如何提高程序的可维护性
小结
习题5
第6章 面向对象方法学
6.1 面向对象技术的概念
6.1.1 面向对象方法学概述
6.1.2 面向对象的概念
6.2 面向对象分析
6.2.1 对象模型
6.2.2 对象抽象的原则
6.2.3 划分主题
6.2.4 建立对象模型的基本方法
6.2.5 动态模型
6.2.6 功能模型
6.2.7 uml图
6.3 面向对象设计
6.3.1 系统设计
6.3.2 对象设计
6.3.3 面向对象设计的准则
6.3.4 面向对象设计的启发规则
6.4 面向对象系统实现
小结
习题6
第7章 软件工程管理技术
7.1 成本估计技术
7.1.1 代码行技术
7.1.2 任务估算技术
7.2 人员组织
7.2.1 brooks定律
7.2.2 软件开发组织的管理结构
7.2.3 程序设计小组的组织
7.3 计划管理
7.3.1 gantt图
7.3.2 工程网络技术
7.4 软件配置管理
7.4.1 配置标识
7.4.2 变动控制
7.4.3 配置审计
7.4.4 配置状态报告
7.5 软件质量保证
7.5.1 软件质量的特性
7.5.2 软件质量的保证
7.6 软件工程文件规范
7.6.1 总体要求
7.6.2 可行性研究报告的编写提示
7.6.3 项目开发计划的编写提示
7.6.4 软件需求说明书的编写提示
7.6.5 数据要求说明书的编写提示
7.6.6 概要设计说明书的编写提示
7.6.7 详细设计说明书的编写提示
7.6.8 数据库设计说明书的编写提示
7.6.9 用户手册的编写提示
7.6.10 操作手册的编写提示
7.6.11 模块开发卷宗的编写提示
7.6.12 测试计划的编写提示
7.6.13 测试分析报告的编写提示
7.6.14 开发进度月报的编写提示
7.6.15 项目开发总结报告的编写提示
小结
习题7
第8章 软件开发工具与集成化环境
8.1 case技术
8.1.1 case的基本组成部分
8.1.2 case的软件平台
8.1.3 case的硬件平台
8.2 软件开发工具
8.2.1 软件开发工具的功能
8.2.2 软件开发工具的性能
8.2.3 软件开发工具的分类
8.3 集成化环境
8.3.1 软件工程环境的定义
8.3.2 软件工程环境的分类
8.3.3 软件工程环境的构成和特性
8.3.4 集成化环境
8.3.5 集成化的层次
小结
习题8
第9章 实例——招干考试成绩管理系统
9.1 问题定义
9.2 可行性研究
9.2.1 技术可行性
9.2.2 经济可行性
9.3 需求分析
9.3.1 考生情况分析
9.3.2 成绩输入
9.3.3 录用
9.3.4 输出需求
9.3.5 数据流图和数据字典
9.3.6 ipo图
9.4 概 要 设 计
9.4.1 数据库结构设计
9.4.2 系统结构设计
9.4.3 测试方案设计
9.5 详细设计
9.5.1 系统界面设计
9.5.2 考前处理
9.5.3 输入设计
9.5.4 成绩处理
9.5.5 录用过程设计
9.5.6 输出设计
9.5.7 测试用例设计
9.6 程序设计提示
9.6.1 进入系统时密码设置
9.6.2 考前处理
9.6.3 成绩输入设计
9.6.4 成绩处理
9.6.5 录用过程设计
9.6.6 初始化程序
9.7 软件测试
习题9...
参考文献
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.3 软件开发方法
1.3.1 面向数据流设计方法
1.3.2 面向数据结构设计方法
1.3.3 面向对象设计方法
小结
习题1
第2章 需求分析
2.1 需求分析的任务
2.1.1 确定目标系统的具体要求
2.1.2 建立目标系统的逻辑模型
.2.1.3 软件需求规格说明
2.1.4 修正系统开发计划
2.1.5 制定初步的系统测试计划
2.1.6 编写用户手册
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 数据流图的4种基本符号
2.4.2 数据流图的几种附加符号
2.4.3 画数据流图的步骤
2.4.4 几点注意事项
2.5 状态转换图
2.5.1 画状态转换图的步骤
2.5.2 状态转换图的符号
2.6 数据字典
2.6.1 数据字典的内容
2.6.2 数据字典使用的符号
2.6.3 数据字典与数据流图
2.7 需求分析图形工具
2.7.1 层次图
2.7.2 warnier图
2.7.3 ipo图
小结
习题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.4.3 评估界面设计的标准
3.4.4 界面设计指南
3.5 过程设计
3.6 详细设计工具
3.6.1 流程图
3.6.2 盒图
3.6.3 pad图
3.6.4 判定表
3.6.5 判定树
3.6.6 过程设计语言
3.7 结构化设计方法
3.7.1 变换型
3.7.2 事务型
3.8 结构化程序设计
3.8.1 程序设计语言的选择
3.8.2 程序设计风格
3.9 程序结构复杂程度的度量
3.9.1 mccabe方法
3.9.2 halstead方法
小结
习题3
第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.3.4 确认测试
4.3.5 平行运行
4.4 设计测试方案、实用测试策略
4.4.1 等价类划分法
4.4.2 边界值分析法
4.4.3 错误推测法
4.4.4 逻辑覆盖法
4.4.5 因果图法
4.4.6 实用测试策略
4.4.7 软件调试
4.5 软件验证与确认
4.5.1 软件验证
4.5.2 软件确认
小结
习题4
第5章 软件维护
5.1 维护的定义、特点、过程
5.1.1 维护的定义
5.1.2 维护的特点
5.1.3 维护的过程
5.2 可维护性
5.2.1 决定可维护性的因素
5.2.2 可维护性的度量
5.2.3 如何提高程序的可维护性
小结
习题5
第6章 面向对象方法学
6.1 面向对象技术的概念
6.1.1 面向对象方法学概述
6.1.2 面向对象的概念
6.2 面向对象分析
6.2.1 对象模型
6.2.2 对象抽象的原则
6.2.3 划分主题
6.2.4 建立对象模型的基本方法
6.2.5 动态模型
6.2.6 功能模型
6.2.7 uml图
6.3 面向对象设计
6.3.1 系统设计
6.3.2 对象设计
6.3.3 面向对象设计的准则
6.3.4 面向对象设计的启发规则
6.4 面向对象系统实现
小结
习题6
第7章 软件工程管理技术
7.1 成本估计技术
7.1.1 代码行技术
7.1.2 任务估算技术
7.2 人员组织
7.2.1 brooks定律
7.2.2 软件开发组织的管理结构
7.2.3 程序设计小组的组织
7.3 计划管理
7.3.1 gantt图
7.3.2 工程网络技术
7.4 软件配置管理
7.4.1 配置标识
7.4.2 变动控制
7.4.3 配置审计
7.4.4 配置状态报告
7.5 软件质量保证
7.5.1 软件质量的特性
7.5.2 软件质量的保证
7.6 软件工程文件规范
7.6.1 总体要求
7.6.2 可行性研究报告的编写提示
7.6.3 项目开发计划的编写提示
7.6.4 软件需求说明书的编写提示
7.6.5 数据要求说明书的编写提示
7.6.6 概要设计说明书的编写提示
7.6.7 详细设计说明书的编写提示
7.6.8 数据库设计说明书的编写提示
7.6.9 用户手册的编写提示
7.6.10 操作手册的编写提示
7.6.11 模块开发卷宗的编写提示
7.6.12 测试计划的编写提示
7.6.13 测试分析报告的编写提示
7.6.14 开发进度月报的编写提示
7.6.15 项目开发总结报告的编写提示
小结
习题7
第8章 软件开发工具与集成化环境
8.1 case技术
8.1.1 case的基本组成部分
8.1.2 case的软件平台
8.1.3 case的硬件平台
8.2 软件开发工具
8.2.1 软件开发工具的功能
8.2.2 软件开发工具的性能
8.2.3 软件开发工具的分类
8.3 集成化环境
8.3.1 软件工程环境的定义
8.3.2 软件工程环境的分类
8.3.3 软件工程环境的构成和特性
8.3.4 集成化环境
8.3.5 集成化的层次
小结
习题8
第9章 实例——招干考试成绩管理系统
9.1 问题定义
9.2 可行性研究
9.2.1 技术可行性
9.2.2 经济可行性
9.3 需求分析
9.3.1 考生情况分析
9.3.2 成绩输入
9.3.3 录用
9.3.4 输出需求
9.3.5 数据流图和数据字典
9.3.6 ipo图
9.4 概 要 设 计
9.4.1 数据库结构设计
9.4.2 系统结构设计
9.4.3 测试方案设计
9.5 详细设计
9.5.1 系统界面设计
9.5.2 考前处理
9.5.3 输入设计
9.5.4 成绩处理
9.5.5 录用过程设计
9.5.6 输出设计
9.5.7 测试用例设计
9.6 程序设计提示
9.6.1 进入系统时密码设置
9.6.2 考前处理
9.6.3 成绩输入设计
9.6.4 成绩处理
9.6.5 录用过程设计
9.6.6 初始化程序
9.7 软件测试
习题9...
参考文献
软件工程简明教程
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
