书籍详情
软件工程
作者:王宜贵编
出版社:机械工业出版社
出版时间:2004-07-01
ISBN:9787111107897
定价:¥23.00
购买这本书可以去
内容简介
本书系统地介绍了软件工程的基本概念、软件开发方法、软件开发工具和软件项目管理。其中,第1章概要介绍软件工程;第2~7章按生命周期模型详细介绍制定计划、需求分析、软件设计、程序编码、软件检验和软件维护各个阶段的相关概念和工作内容,重点介绍了结构化方法和面向对象方法;第8章介绍软件开发工具和环境;第9章介绍软件项目管理;第10章是一个文档实例最后介绍了统一建模语言(UML)。 本书可供高职高专计算机专业及其相关专业师生使用。
作者简介
暂缺《软件工程》作者简介
目录
出版说明
前言
第1章 软件工程概述
1.1 软件的概念
1.2 软件危机
1.3 软件工程的目标和原则
1.4 软件生命周期和开发模型
1.5 软件开发方法和软件开发工具
1.5.1 软件开发方法的概念
1.5.2 软件开发的基本方法
1.5.3 软件开发工具
1.6 小结
1.7 习题
第2章 软件开发计划制定
2.1 问题定义
2.2 可行性研究
2.3 软件开发计划
2.3.1 软件开发计划的内容
2.3.2 软件开发计划编写实例
2.4 小结
2.5 习题
第3章 软件需求分析
3.1 需求分析的概念
3.1.1 需求分析的任务
3.1.2 需求分析的过程
3.1.3 需求获取技术
3.2 结构化分析方法
3.2.1 结构化分析概述
3.2.2 数据流图
3.2.3 数据词典
3.2.4 小说明
3.3 需求分析的其他工具
3.3.1 E-R模型
3.3.2 层次方框图
3.3.3 IPO图
3.3.4 Warnier图
3.4 需求规格说明书
3.5 小结
3.6 习题
第4章 软件设计
4.1 软件设计原则
4.1.1 模块化
4.1.2 抽象化
4.1.3 信息隐蔽
4.2 模块化设计
4.2.1 模块的特性
4.2.2 模块独立性
4.2.3 内聚
4.2.4 耦合
4.3 结构化设计方法
4.3.1 结构图
4.3.2 系统结构图中模块
4.3.3 数据流图的类型
4.3.4 变换分析
4.3.5 事务分析
4.3.6 系统结构图的改进
4.3.7 设计的后处理
4.4 详细设计
4.4.1 详细设计概述
4.4.2 结构化程序设计
4.4.3 程序流程图
4.4.4 N-S图
4.4.5 问题分析图
4.4.6 程序设计语言
4.5 Jackson方法
4.5.1 Jackson方法概述
4.5.2 三种基本结构
4.5.3 设计过程
4.6 小结
4.7 习题
第5章 程序编码
5.1 结构化程序设计(Structured Programming)
5.1.1 结构化程序设计的提出
5.1.2 结构化程序设计思想
5.1.3 自顶向下,逐步求精的设计方法
5.2 程序设计风格
5.2.1 程序内部的文档
5.2.2 数据说明
5.2.3 语句构造
5.2.4 输入和输出(I/O)
5.3 程序的效率
5.3.1 程序运行时间
5.3.2 存储器效率
5.3.3 输入/输出的效率
5.4 程序设计语言
5.4.1 程序设计语言的分类
5.4.2 程序设计语言性能的讨论
5.4.3 程序设计语言的选择
5.5 程序复杂性度量
5.5.1 McCabe度量法
5.5.2 Halstead方法
5.6 小结
5.7 习题
第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.3.1 单元测试
6.3.2 集成测试
6.3.3 确认测试
6.3.4 系统测试
6.4 测试用例设计
6.4.1 逻辑覆盖
6.4.2 等价类划分
6.4.3 边界值分析
6.4.4 错误推测法
6.5 程序调试
6.5.1 调试方法
6.5.2 调试策略
6.6 小结
6.7 习题
第7章 面向对象的软件工程
7.1 面向对象的基本概念
7.1.1 对象(Object)
7.1.2 类(Class)
7.1.3 继承(Inheritance)
7.1.4 其他概念
7.2 面向对象的软件开发过程
7.2.1 面向对象的分析(OOA)
7.2.2 面向对象的设计(OOD)
7.2.3 面向对象的实现(OOP)
7.3 对象模型化技术
7.3.1 对象模型
7.3.2 动态模型
7.3.3 功能模型
7.4 Coad/Yourdon面向对象分析与设计技术
7.4.1 面向对象的分析技术(OOA)
7.4.2 面向对象的设计技术(OOD)
7.5 Booch方法
7.5.1 Booch方法的设计步骤
7.5.2 Booch方法的基本图形符号
7.6 小结
7.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.3.1 程序修改的步骤
8.3.2 程序修改的副作用
8.4 软件的可维护性
8.4.1 决定软件可维护性的因素
8.4.2 提高可维护性的方法
8.4.3 可维护性复审
8.5 软件逆向工程和再工程
8.6 小结
8.7 习题
第9章 软件复用技术
9.1 软件复用技术概述
9.1.1 软件复用的意义
9.1.2 软件复用的过程
9.1.3 软件复用的类型
9.1.4 分层式体系结构
9.2 构件库的构造
9.2.1 领域分析
9.2.2 构件的开发
9.2.3 构件库的组织
9.2.4 软件构件的复用
9.3 面向对象的软件复用技术
9.3.1 类构件
9.3.2 类库
9.4 小结
9.5 习题
第10章 软件管理
10.1 软件过程
10.1.1 软件过程的概念
10.1.2 软件过程模型
10.2 软件项目管理过程
10.3 软件质量的度量
10.3.1 软件度量的分类
10.3.2 软件质量的度量
10.4 估算
10.4.1 软件项目的估算
10.4.2 软件开发成本估算
10.5 成本—效益分析
10.5.1 度量效益的几种方法
10.5.2 成本—效益的分析
10.6 风险分析
10.6.1 风险识别
10.6.2 风险估计
10.6.3 风险评价
10.6.4 风险驾驭和监控
10.7 进度安排
10.7.1 软件开发小组人数与软件生产率
10.7.2 任务的并行性
10.7.3 制定开发进度计划
10.7.4 进度安排的图形方法
10.7.5 项目的追踪和控制
10.8 软件项目的组织
10.8.1 软件项目管理的困难
10.8.2 项目任务的划分
10.8.3 软件项目组织的建立
10.8.4 人员配备
10.8.5 指导与检验
10.8.6 软件项目中人的因素
10.9 小结
10.10 习题
第11章 软件质量保证
11.1 软件质量保证概述
11.1.1 质量保证的概念
11.1.2 软件质量保证的主要任务
11.1.3 质量保证与检验
11.2 软件质量保证体系与实施
11.2.1 软件质量保证体系
11.2.2 质量保证的实施
11.3 正式技术评审
11.3.1 评审内容
11.3.2 正式技术评审
11.4 软件配置管理
11.4.1 软件配置项(Software Configuration Item,简称SCI)
11.4.2 基线(Baseline)
11.4.3 软件配置管理的过程和任务
11.5 软件工程标准化
11.5.1 软件工程标准化的意义
11.5.2 软件工程标准的制定与推行
11.5.3 软件工程标准的层次
11.6 软件文档
11.6.1 文档的概念
11.6.2 软件文档的分类
11.6.3 软件文档的工作
11.6.4 软件文档的编制
11.7 软件过程评估与过程改进
11.7.1 剪裁过程
11.7.2 过程模型建造技术
11.7.3 软件过程的改进
11.8 软件过程能力评估的CMM模型
11.8.1 软件机构的过程成熟度
11.8.2 软件机构的能力成熟度模型CMM
11.8.3 关键过程领域KPA
11.8.4 利用CMM对软件机构进行成熟度评估
11.8.5 软件人员能力成熟度模型P-CMM
11.9 在软件开发机构中贯彻ISO 9000国际标准
11.9.1 ISO 9000标准的特点
11.9.2 ISO 9000系列标准的内容
11.9.3 ISO 9000系列质量标准概要
11.10 小结
11.11 习题
第12章 软件工具和软件开发环境
12.1 软件工具
12.1.1 软件开发工具
12.1.2 软件维护工具
12.1.3 软件管理和软件支持工具
12.1.4 软件开发工具的评价和选择
12.2 软件开发环境
12.2.1 集成型软件开发环境
12.2.2 ECMA/NIST集成化软件开发环境参考模型
12.2.3 可移植公共工具环境
12.3 实例——青鸟系统
12.3.1 支持面向对象方法的CASE工具集(JBOO)
12.3.2 支持结构化方法的CASE工具集(JBST)
12.4 小结
12.5 习题
第13章 软件开发实例
13.1 可行性研究
13.2 系统开发计划
13.3 需求分析
13.4 系统设计
13.5 程序设计
附录A
前言
第1章 软件工程概述
1.1 软件的概念
1.2 软件危机
1.3 软件工程的目标和原则
1.4 软件生命周期和开发模型
1.5 软件开发方法和软件开发工具
1.5.1 软件开发方法的概念
1.5.2 软件开发的基本方法
1.5.3 软件开发工具
1.6 小结
1.7 习题
第2章 软件开发计划制定
2.1 问题定义
2.2 可行性研究
2.3 软件开发计划
2.3.1 软件开发计划的内容
2.3.2 软件开发计划编写实例
2.4 小结
2.5 习题
第3章 软件需求分析
3.1 需求分析的概念
3.1.1 需求分析的任务
3.1.2 需求分析的过程
3.1.3 需求获取技术
3.2 结构化分析方法
3.2.1 结构化分析概述
3.2.2 数据流图
3.2.3 数据词典
3.2.4 小说明
3.3 需求分析的其他工具
3.3.1 E-R模型
3.3.2 层次方框图
3.3.3 IPO图
3.3.4 Warnier图
3.4 需求规格说明书
3.5 小结
3.6 习题
第4章 软件设计
4.1 软件设计原则
4.1.1 模块化
4.1.2 抽象化
4.1.3 信息隐蔽
4.2 模块化设计
4.2.1 模块的特性
4.2.2 模块独立性
4.2.3 内聚
4.2.4 耦合
4.3 结构化设计方法
4.3.1 结构图
4.3.2 系统结构图中模块
4.3.3 数据流图的类型
4.3.4 变换分析
4.3.5 事务分析
4.3.6 系统结构图的改进
4.3.7 设计的后处理
4.4 详细设计
4.4.1 详细设计概述
4.4.2 结构化程序设计
4.4.3 程序流程图
4.4.4 N-S图
4.4.5 问题分析图
4.4.6 程序设计语言
4.5 Jackson方法
4.5.1 Jackson方法概述
4.5.2 三种基本结构
4.5.3 设计过程
4.6 小结
4.7 习题
第5章 程序编码
5.1 结构化程序设计(Structured Programming)
5.1.1 结构化程序设计的提出
5.1.2 结构化程序设计思想
5.1.3 自顶向下,逐步求精的设计方法
5.2 程序设计风格
5.2.1 程序内部的文档
5.2.2 数据说明
5.2.3 语句构造
5.2.4 输入和输出(I/O)
5.3 程序的效率
5.3.1 程序运行时间
5.3.2 存储器效率
5.3.3 输入/输出的效率
5.4 程序设计语言
5.4.1 程序设计语言的分类
5.4.2 程序设计语言性能的讨论
5.4.3 程序设计语言的选择
5.5 程序复杂性度量
5.5.1 McCabe度量法
5.5.2 Halstead方法
5.6 小结
5.7 习题
第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.3.1 单元测试
6.3.2 集成测试
6.3.3 确认测试
6.3.4 系统测试
6.4 测试用例设计
6.4.1 逻辑覆盖
6.4.2 等价类划分
6.4.3 边界值分析
6.4.4 错误推测法
6.5 程序调试
6.5.1 调试方法
6.5.2 调试策略
6.6 小结
6.7 习题
第7章 面向对象的软件工程
7.1 面向对象的基本概念
7.1.1 对象(Object)
7.1.2 类(Class)
7.1.3 继承(Inheritance)
7.1.4 其他概念
7.2 面向对象的软件开发过程
7.2.1 面向对象的分析(OOA)
7.2.2 面向对象的设计(OOD)
7.2.3 面向对象的实现(OOP)
7.3 对象模型化技术
7.3.1 对象模型
7.3.2 动态模型
7.3.3 功能模型
7.4 Coad/Yourdon面向对象分析与设计技术
7.4.1 面向对象的分析技术(OOA)
7.4.2 面向对象的设计技术(OOD)
7.5 Booch方法
7.5.1 Booch方法的设计步骤
7.5.2 Booch方法的基本图形符号
7.6 小结
7.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.3.1 程序修改的步骤
8.3.2 程序修改的副作用
8.4 软件的可维护性
8.4.1 决定软件可维护性的因素
8.4.2 提高可维护性的方法
8.4.3 可维护性复审
8.5 软件逆向工程和再工程
8.6 小结
8.7 习题
第9章 软件复用技术
9.1 软件复用技术概述
9.1.1 软件复用的意义
9.1.2 软件复用的过程
9.1.3 软件复用的类型
9.1.4 分层式体系结构
9.2 构件库的构造
9.2.1 领域分析
9.2.2 构件的开发
9.2.3 构件库的组织
9.2.4 软件构件的复用
9.3 面向对象的软件复用技术
9.3.1 类构件
9.3.2 类库
9.4 小结
9.5 习题
第10章 软件管理
10.1 软件过程
10.1.1 软件过程的概念
10.1.2 软件过程模型
10.2 软件项目管理过程
10.3 软件质量的度量
10.3.1 软件度量的分类
10.3.2 软件质量的度量
10.4 估算
10.4.1 软件项目的估算
10.4.2 软件开发成本估算
10.5 成本—效益分析
10.5.1 度量效益的几种方法
10.5.2 成本—效益的分析
10.6 风险分析
10.6.1 风险识别
10.6.2 风险估计
10.6.3 风险评价
10.6.4 风险驾驭和监控
10.7 进度安排
10.7.1 软件开发小组人数与软件生产率
10.7.2 任务的并行性
10.7.3 制定开发进度计划
10.7.4 进度安排的图形方法
10.7.5 项目的追踪和控制
10.8 软件项目的组织
10.8.1 软件项目管理的困难
10.8.2 项目任务的划分
10.8.3 软件项目组织的建立
10.8.4 人员配备
10.8.5 指导与检验
10.8.6 软件项目中人的因素
10.9 小结
10.10 习题
第11章 软件质量保证
11.1 软件质量保证概述
11.1.1 质量保证的概念
11.1.2 软件质量保证的主要任务
11.1.3 质量保证与检验
11.2 软件质量保证体系与实施
11.2.1 软件质量保证体系
11.2.2 质量保证的实施
11.3 正式技术评审
11.3.1 评审内容
11.3.2 正式技术评审
11.4 软件配置管理
11.4.1 软件配置项(Software Configuration Item,简称SCI)
11.4.2 基线(Baseline)
11.4.3 软件配置管理的过程和任务
11.5 软件工程标准化
11.5.1 软件工程标准化的意义
11.5.2 软件工程标准的制定与推行
11.5.3 软件工程标准的层次
11.6 软件文档
11.6.1 文档的概念
11.6.2 软件文档的分类
11.6.3 软件文档的工作
11.6.4 软件文档的编制
11.7 软件过程评估与过程改进
11.7.1 剪裁过程
11.7.2 过程模型建造技术
11.7.3 软件过程的改进
11.8 软件过程能力评估的CMM模型
11.8.1 软件机构的过程成熟度
11.8.2 软件机构的能力成熟度模型CMM
11.8.3 关键过程领域KPA
11.8.4 利用CMM对软件机构进行成熟度评估
11.8.5 软件人员能力成熟度模型P-CMM
11.9 在软件开发机构中贯彻ISO 9000国际标准
11.9.1 ISO 9000标准的特点
11.9.2 ISO 9000系列标准的内容
11.9.3 ISO 9000系列质量标准概要
11.10 小结
11.11 习题
第12章 软件工具和软件开发环境
12.1 软件工具
12.1.1 软件开发工具
12.1.2 软件维护工具
12.1.3 软件管理和软件支持工具
12.1.4 软件开发工具的评价和选择
12.2 软件开发环境
12.2.1 集成型软件开发环境
12.2.2 ECMA/NIST集成化软件开发环境参考模型
12.2.3 可移植公共工具环境
12.3 实例——青鸟系统
12.3.1 支持面向对象方法的CASE工具集(JBOO)
12.3.2 支持结构化方法的CASE工具集(JBST)
12.4 小结
12.5 习题
第13章 软件开发实例
13.1 可行性研究
13.2 系统开发计划
13.3 需求分析
13.4 系统设计
13.5 程序设计
附录A
猜您喜欢