软件工程(高等学校计算机教育规划教材)

软件工程(高等学校计算机教育规划教材)
作 者: 钟珞
出版社: 清华大学出版社
丛编项: 高等学校计算机规划教材
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《软件工程(高等学校计算机教育规划教材)》作者简介

内容简介

《软件工程》面向普通高等院校本科教学的需要及软件工程技术的发展。主要内容包括:软件工程概述、可行性研究和需求定义、需求分析、系统设计、详细设计、程序编码、软件测试、软件维护、软件项目计划与管理、软件过程能力成熟度模型CMM、软件的可靠性及软件工具及环境。本书主要特色在于理论、方法与应用相结合,不仅对软件的分析、设计、开发到维护过程进行全面地讲述,而且配有丰富的实例。除了对传统的软件工程方法进行讲述外,还增添了面向对象的软件工程方法、CMM成熟度模型以及软件工具与环境等较为成熟的内容。本书概念清楚,内容丰富,每章配有小结和习题,便于教学和学习。本书可供高校本科生学习与后续技术开发使用,也可供广大计算机爱好者阅读。

图书目录

第1章

软件工程概述

软件工程的产生

11.1.1

计算机软件及其特点

11.1.2

软件危机

31.1.3

软件工程的定义

软件工程的研究对象和基本原理

51.2.1

软件工程的研究对象

51.2.2

软件工程的基本原理

软件的生存期及常用的开发模型

71.3.1

软件的生存期

71.3.2

常用的软件开发模型

9本章小结

12习题1

14第2章

可行性研究和需求定义

问题定义

152.1.1

问题定义的基本任务

152.1.2

问题定义报告

可行性研究

162.2.1

可行性研究的内容及过程

172.2.2

可行性研究报告

需求定义

192.3.1

需求获取的内容

192.3.2

需求获取的方法

202.3.3

需求规格说明的内容

212.3.4

需求规格说明的评审

222.3.5

需求规格说明书

典型应用分析

25本章小结

29习题2

29第3章

需求分析

需求分析的目标与原则

303.1.1

需求分析的目标

313.1.2

需求分析的原则

需求分析的过程及方法

323.2.1

需求分析的过程

323.2.2

需求分析方法

需求分析的工具

503.3.1

SADT

503.3.2

PSL/PSA

传统的软件建模

523.4.1

软件建模

523.4.2

数据模型的建立

533.4.3

功能模型、行为模型的建立及数据字典

用例建模

563.5.1

用例图

573.5.2

参与者及用例的描述

603.5.3

用例建模过程

面向对象建模

633.6.1

面向对象基础

633.6.2

面向对象分析模型

693.6.3

对象模型的建立

703.6.4

行为模型的建立

723.6.5

功能模型的建立

统一建模语言UML

783.7.1

UML的基本实体

793.7.2

UML的目标及范畴

793.7.3

UML图的使用实例

典型应用分析

843.8.1

结构化分析示例

843.8.2

面向对象分析示例

883.8.3

面向问题域的分析示例

91本章小结

94习题3

95第4章

系统设计

系统设计的任务和过程

964.1.1

系统设计的任务

964.1.2

系统设计的过程

系统设计的基本原则

974.2.1

软件设计

974.2.2

模块设计

1004.2.3

结构设计

面向数据流图的设计方法

1014.3.1

典型的系统结构图

1014.3.2

变换分析

1034.3.3

事务分析

1054.3.4

软件模块结构的改进

面向对象的设计方法

1064.4.1

面向对象的基本概念和特征

1064.4.2

面向对象的技术要点

1064.4.3

面向对象分析模型

面向对象软件设计模型

1074.5.1

设计模式描述

1074.5.2

设计模式的分类

模型-视图-控制器框架

1084.6.1

MVC模式

1084.6.2

MVC中的模型类、视图类和控制类

1094.6.3

MVC的实现

系统设计说明书

典型应用分析

1124.8.1

类设计的目标

1124.8.2

类设计的方针

1124.8.3

通过复用设计类

1134.8.4

计数器类设计的实例

113本章小结

114习题4

115第5章

详细设计

详细设计的任务及过程

1165.1.1

详细设计的任务

1165.1.2

详细设计的过程

1165.1.3

详细设计的原则

1175.1.4

详细设计工具

结构化设计方法

1225.2.1

基于数据流的结构化设计方法

1225.2.2

面向数据结构的结构化设计方法

Jackson程序设计方法

1235.3.1

Jackson方法的基本思想

1235.3.2

Jackson方法的设计技术及实例

Warnier程序设计方法

1315.4.1

Warnier方法的基本思想

1315.4.2

Warnier方法的设计技术及实例

基于组件的设计方法

1355.5.1

基于组件的基本思想

1355.5.2

基于组件的设计技术及实例

1365.5.3

应用

详细设计说明书

1425.6.1

引言

1425.6.2

总体设计概述

1435.6.3

程序描述

143本章小结

143习题5

144第6章

程序编码

程序设计语言

1456.1.1

程序设计语言的发展及分类

1456.1.2

程序设计语言的选择

程序设计风格

1486.2.1

源程序文档化

1486.2.2

数据说明

1496.2.3

表达式和语句

1496.2.4

输入输出

程序设计方法

1506.3.1

结构化程序设计方法

1506.3.2

面向对象的程序设计方法

程序的复杂性及度量

1546.4.1

程序的复杂性

1546.4.2

McCabe度量法

1546.4.3

Halstead方法

155本章小结

156习题6

157第7章

软件测试

软件测试的基本方法

1587.1.1

静态测试和动态测试

1587.1.2

白盒测试和黑盒测试

1597.1.3

ALAC测试

软件测试过程

1607.2.1

单元测试

1607.2.2

集成测试

1607.2.3

确认测试

1617.2.4

系统测试

软件测试

1637.3.1

软件测试角色

1637.3.2

软件测试环境

1647.3.3

软件测试的需求规格说明

1647.3.4

软件测试设计说明

1707.3.5

测试评价

面向对象软件测试

1747.4.1

面向对象测试模型

1747.4.2

面向对象分析的测试

1747.4.3

面向对象设计的测试

1757.4.4

面向对象编程的测试

1757.4.5

面向对象的单元测试

1767.4.6

面向对象的集成测试

1767.4.7

面向对象的系统测试

典型应用分析

177本章小结

183习题7

184第8章

软件维护

软件维护的基本概念

1858.1.1

软件维护的定义

1868.1.2

软件维护的分类

软件维护的特点及过程

1878.2.1

影响软件维护的因素

1878.2.2

软件维护的标准化

1888.2.3

软件维护的特点

1898.2.4

软件维护过程

软件的可维护性

1928.3.1

软件可维护性的定义

1928.3.2

软件可维护性的度量及评估

1928.3.3

提高软件可维护性的方法

195本章小结

196习题8

196第9章

软件项目计划与管理

成本估计

1999.1.1

项目成本估计的基本要素与模式

2009.1.2

软件开发成本估算的常用方法

2039.1.3

软件成本估算的经验模型

效益分析

2139.2.1

几种效益度量方法

2149.2.2

效益分析方法

项目组织与计划

2179.3.1

项目计划的制定

2189.3.2

项目组人员配备规则

2209.3.3

人员组织与管理

进度计划

2259.4.1

制定开发进度计划

2259.4.2

甘特图与时间管理

2269.4.3

工程网络与关键路径

2279.4.4

项目进度跟踪与控制

风险管理

2309.5.1

风险识别与分类

2319.5.2

风险评估与分析

2339.5.3

风险策划与管理

2359.5.4

风险规避与监控

软件质量

2389.6.1

软件质量特性与度量

2409.6.2

软件质量体系与控制

2459.6.3

软件质量保证与评审

2479.6.4

软件配置项及其管理

软件工程标准

2539.7.1

软件工程标准化及其意义

2539.7.2

软件工程标准的类型与层次

2549.7.3

软件质量标准与认证

2589.7.4

软件文档标准化

260本章小结

263习题9

264第10章

软件过程能力成熟度模型CMM

软件过程与软件过程成熟度

26510.1.1

软件过程

26510.1.2

软件过程成熟度

26610.1.3

软件过程改进框架

CMM简介

26710.2.1

CMM的发展过程

26810.2.2

软件过程成熟度的基本概念

26810.2.3

全面质量管理和CMM

26910.2.4

基于模型改进的优点与风险

软件过程成熟度框架

27510.3.1

成熟度的5个级别

27510.3.2

软件过程的可视性

27710.3.3

跳越成熟度级别

能力成熟度模型的结构

27910.4.1

成熟度级别的内部结构

27910.4.2

关键过程域

28010.4.3

关键实践

28010.4.4

共同特性

CMM的应用

28110.5.1

基于CMM的估价方法

28110.5.2

软件过程评估及软件能力评价

28310.5.3

软件过程改进

28510.5.4

使用CMM

28710.5.5

CMM实施工具

288本章小结

290习题10

291第11章

软件的可靠性

软件可靠性基本概念

29211.1.1

软件可靠性定义

29211.1.2

软件可靠性的主要指标

29311.1.3

软件生存期与软件寿命

软件可靠性评估

29411.2.1

软件可靠性模型

29411.2.2

估算软件中错误的方法

软件可靠性技术

29811.3.1

算法模型化

29811.3.2

软件容错技术

299本章小结

301习题11

302第12章

软件工具及环境

软件工具

30412.1.1

软件工具的作用与功能

30412.1.2

软件工具的分类

软件开发环境

30512.2.1

软件开发环境的分类

30612.2.2

软件开发环境的特点

30612.2.3

软件开发环境的组成与结构

计算机辅助软件工程(CASE)

30712.3.1

CASE的概念及现状

30812.3.2

CASE技术的功能及组成

30812.3.3

CASE工具分类及特点

30912.3.4

CASE与软件工程的关系

310本章小结

311习题12

311参考文献