软件工程基础——高等学校计算机专业教材

软件工程基础——高等学校计算机专业教材
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2005-09
版次: 1
ISBN: 9787115139290
定价: 19.00
装帧: 平装
开本: 其他
纸张: 胶版纸
1人买过
  •   本书系统地介绍了软件工程的基本概念、原理、方法及目前较成熟的软件工程技术。内容包括:软件工程概述,软件的可行性研究、需求分析、概要设计、用户界面设计、过程设计、程序设计、软件测试、软件维护等阶段的方法、步骤和文档规范,面向对象方法和统一建模语言(UML),软件开发环境,软件重用,软件质量保证和软件工程管理等。为了使读者更好地学习和掌握有关知识,每章都有小结,并配有适量的例题和习题。

      本书的编写力求做到结合实际、注重应用、便于教学,注意内容的新颖、实用和系统性。

      本书可作为普通高等学校计算机科学与技术、计算机软件及计算机应用等专业的本科教材,也可供从事计算机应用软件开发和维护的广大科技人员作参考。 第1章 概述 1

    1.1 软件工程简介 1

    1.1.1 软件生产的发展 1

    1.1.2 软件危机 2

    1.1.3 软件工程 3

    1.2 软件工程学 4

    1.2.1 软件工程学的主要内容 4

    1.2.2 软件工程过程 6

    1.2.3 软件工程的基本原理 6

    1.3 软件生存周期 7

    1.4 软件开发模型 8

    1.4.1 瀑布模型 9

    1.4.2 快速原型模型 10

    1.4.3 增量模型 11

    1.4.4 喷泉模型 12

    1.4.5 螺旋模型 13

    1.4.6 统一过程 14

    本章小结 15

    习题一 16

    第2章 软件定义与软件计划 18

    2.1 软件定义与可行性研究 18

    2.1.1 软件定义 18

    2.1.2 可行性研究 19

    2.1.3 可行性研究的结论 20

    2.2 软件工程开发计划 20

    2.2.1 软件工程项目概述和实施计划 21

    2.2.2 软件开发计划与复审 21

    本章小结 22

    习题二 23

    第3章 需求分析 24

    3.1 需求分析的任务 24

    3.1.1 确定目标系统的具体要求 25

    3.1.2 建立目标系统的逻辑模型 26

    3.2 结构化分析步骤 27

    3.2.1 进行调查研究 27

    3.2.2 分析和描述系统的逻辑模型 28

    3.2.3 需求分析的复审 28

    3.3 需求分析的图形工具 29

    3.3.1 实体-关系图 29

    3.3.2 数据流图 31

    3.3.3 状态转换图 33

    3.3.4 IPO图 34

    3.4 数据字典 35

    3.4.1 数据字典的内容 35

    3.4.2 数据字典使用的符号 36

    3.4.3 数据字典与图形工具 37

    3.5 需求分析文档 38

    3.5.1 软件需求规格说明 38

    3.5.2 编写需求分析文档的步骤 38

    3.5.3 用户手册编写提示 39

    本章小结 39

    习题三 40

    第4章 概要设计 42

    4.1 概要设计步骤 42

    4.1.1 软件结构设计 42

    4.1.2 数据结构及数据库设计 43

    4.1.3 系统接口设计 44

    4.1.4 设计测试方案 44

    4.2 软件结构设计的基本原理 44

    4.2.1 模块与信息隐蔽 44

    4.2.2 模块化 45

    4.2.3 模块的耦合和内聚 47

    4.2.4 软件结构设计优化准则 49

    4.3 软件结构设计的图形工具 51

    4.3.1 层次图 51

    4.3.2 结构图 51

    4.4 概要设计方法 52

    4.4.1 结构化方法 53

    4.4.2 面向数据结构的设计方法 55

    4.5 代码设计 58

    4.5.1 代码设计原则 59

    4.5.2 代码种类 59

    4.5.3 代码设计方法 61

    4.6 数据输入/输出设计 61

    4.6.1 输入设计 61

    4.6.2 输出设计 62

    4.7 数据的安全设计 62

    4.8 概要设计文档与复审 63

    4.8.1 概要设计说明书 63

    4.8.2 概要设计复审 64

    4.8.3 数据库设计说明书 65

    本章小结 66

    习题四 66

    第5章 详细设计 68

    5.1 用户界面设计 68

    5.1.1 用户界面设计问题 68

    5.1.2 用户界面设计过程 70

    5.1.3 用户界面设计的基本原则 70

    5.1.4 用户界面设计指南 70

    5.2 过程设计 72

    5.2.1 流程图 72

    5.2.2 盒图 76

    5.2.3 PAD图 77

    5.2.4 判定表 79

    5.2.5 判定树 79

    5.2.6 过程设计语言 80

    5.3 详细设计文档与复审 82

    5.3.1 详细设计说明书 82

    5.3.2 操作手册编写提示 82

    5.3.3 详细设计的复审 83

    本章小结 84

    习题五 84

    第6章 软件实现 85

    6.1 结构化程序设计 85

    6.2 选择程序设计语言 86

    6.3 程序设计风格 88

    6.4 程序设计质量的评价 89

    6.5 程序设计文档 90

    6.6 软件测试的目标和原则 90

    6.6.1 软件测试的目标 90

    6.6.2 测试原则 91

    6.7 软件测试的方法 91

    6.7.1 静态分析与动态测试 91

    6.7.2 黑盒法与白盒法 92

    6.8 软件测试的步骤 93

    6.8.1 模块测试 93

    6.8.2 集成测试 93

    6.8.3 程序审查会和人工运行 94

    6.8.4 确认测试 95

    6.8.5 平行运行 96

    6.9 设计测试方案 96

    6.9.1 等价类划分法 96

    6.9.2 边界值分析法 97

    6.9.3 错误推测法 97

    6.9.4 逻辑覆盖法 98

    6.9.5 因果图法 101

    6.9.6 实用测试策略 103

    6.10 软件调试、验证与确认 104

    6.10.1 软件调试 104

    6.10.2 程序正确性验证 105

    6.10.3 软件确认 106

    6.11 软件测试计划和分析报告 106

    本章小结 107

    习题六 108

    第7章 软件维护 112

    7.1 软件维护过程 112

    7.1.1 维护的种类 112

    7.1.2 结构性维护与非结构性维护 113

    7.1.3 维护的费用 114

    7.1.4 维护的困难 114

    7.1.5 维护的实施 114

    7.1.6 维护的副作用 116

    7.2 软件的可维护性 117

    7.2.1 决定软件可维护性的因素 117

    7.2.2 可维护性的度量 117

    7.2.3 提高软件的可维护性 118

    本章小结 119

    习题七 120

    第8章 面向对象方法学与UML 121

    8.1 面向对象方法概述 121

    8.1.1 面向对象方法学的主要优点 122

    8.1.2 面向对象的概念 123

    8.2 UML概述 125

    8.2.1 UML的发展 125

    8.2.2 UML的设计目标和内容 126

    8.2.3 UML的语义 127

    8.3 UML图 128

    8.3.1 用例图 128

    8.3.2 类图和包 129

    8.3.3 对象图 133

    8.3.4 状态图 133

    8.3.5 顺序图 135

    8.3.6 活动图 135

    8.3.7 协作图 136

    8.3.8 构件图 137

    8.3.9 部署图 137

    本章小结 138

    习题八 139

    第9章 面向对象技术及UML应用 140

    9.1 面向对象分析 140

    9.1.1 面向对象的分析过程 140

    9.1.2 面向对象的分析原则 140

    9.2 建立对象模型 141

    9.2.1 确定对象和类 141

    9.2.2 确定类的相互关系 142

    9.2.3 划分主题 145

    9.3 建立动态模型 147

    9.3.1 编写脚本 148

    9.3.2 设计用户界面 149

    9.3.3 画UML顺序图或活动图 149

    9.3.4 画状态转换图 149

    9.4 建立功能模型 150

    9.5 面向对象设计 151

    9.5.1 系统设计 152

    9.5.2 对象设计 155

    9.5.3 面向对象设计的准则 156

    9.5.4 面向对象设计的启发规则 156

    9.6 UML的应用 157

    9.6.1 UML模型 157

    9.6.2 UML视图 158

    9.6.3 UML使用准则 160

    9.6.4 UML的扩展机制 161

    9.6.5 UML的应用领域 162

    9.7 面向对象系统的实现 162

    9.7.1 选择程序设计语言 162

    9.7.2 面向对象程序设计 163

    9.7.3 面向对象的测试 164

    9.8 统一过程 164

    9.8.1 RUP的开发模式 165

    9.8.2 RUP的特点 166

    9.8.3 RUP的要素 166

    本章小结 167

    习题九 168

    第10章 软件开发环境 169

    10.1 软件开发工具 169

    10.2 软件工程环境 172

    10.3 CASE 技术 174

    本章小结 175

    习题十 176

    第11章 软件重用 177

    11.1 可重用的软件成分 177

    11.2 软件重用的过程 178

    11.2.1 软件重用过程模型 178

    11.2.2 开发可重用的软件构件 179

    11.2.3 分类和检索软件构件 180

    11.2.4 软件重用环境 181

    本章小结 181

    习题十一 182

    第12章 软件工程管理 183

    12.1 软件工程管理概述 183

    12.2 软件规模估算 184

    12.2.1 软件开发成本估算方法 184

    12.2.2 代码行技术和任务估算技术 185

    12.2.3 功能点技术 186

    12.2.4 COCOMO模型 188

    12.2.5 程序环行复杂程度的度量 190

    12.3 进度计划 191

    12.3.1 Gantt图 191

    12.3.2 工程网络技术 191

    12.4 人员组织 194

    12.5 软件配置管理 196

    12.6 软件质量保证 199

    12.6.1 软件质量的特性 199

    12.6.2 软件质量保证措施 200

    12.7 软件工程标准与软件文档 201

    12.7.1 软件工程标准 201

    12.7.2 软件文档的编写 203

    本章小结 204

    习题十二 204

    附录 选择题参考答案 206

    参考文献 207
  • 内容简介:
      本书系统地介绍了软件工程的基本概念、原理、方法及目前较成熟的软件工程技术。内容包括:软件工程概述,软件的可行性研究、需求分析、概要设计、用户界面设计、过程设计、程序设计、软件测试、软件维护等阶段的方法、步骤和文档规范,面向对象方法和统一建模语言(UML),软件开发环境,软件重用,软件质量保证和软件工程管理等。为了使读者更好地学习和掌握有关知识,每章都有小结,并配有适量的例题和习题。

      本书的编写力求做到结合实际、注重应用、便于教学,注意内容的新颖、实用和系统性。

      本书可作为普通高等学校计算机科学与技术、计算机软件及计算机应用等专业的本科教材,也可供从事计算机应用软件开发和维护的广大科技人员作参考。
  • 目录:
    第1章 概述 1

    1.1 软件工程简介 1

    1.1.1 软件生产的发展 1

    1.1.2 软件危机 2

    1.1.3 软件工程 3

    1.2 软件工程学 4

    1.2.1 软件工程学的主要内容 4

    1.2.2 软件工程过程 6

    1.2.3 软件工程的基本原理 6

    1.3 软件生存周期 7

    1.4 软件开发模型 8

    1.4.1 瀑布模型 9

    1.4.2 快速原型模型 10

    1.4.3 增量模型 11

    1.4.4 喷泉模型 12

    1.4.5 螺旋模型 13

    1.4.6 统一过程 14

    本章小结 15

    习题一 16

    第2章 软件定义与软件计划 18

    2.1 软件定义与可行性研究 18

    2.1.1 软件定义 18

    2.1.2 可行性研究 19

    2.1.3 可行性研究的结论 20

    2.2 软件工程开发计划 20

    2.2.1 软件工程项目概述和实施计划 21

    2.2.2 软件开发计划与复审 21

    本章小结 22

    习题二 23

    第3章 需求分析 24

    3.1 需求分析的任务 24

    3.1.1 确定目标系统的具体要求 25

    3.1.2 建立目标系统的逻辑模型 26

    3.2 结构化分析步骤 27

    3.2.1 进行调查研究 27

    3.2.2 分析和描述系统的逻辑模型 28

    3.2.3 需求分析的复审 28

    3.3 需求分析的图形工具 29

    3.3.1 实体-关系图 29

    3.3.2 数据流图 31

    3.3.3 状态转换图 33

    3.3.4 IPO图 34

    3.4 数据字典 35

    3.4.1 数据字典的内容 35

    3.4.2 数据字典使用的符号 36

    3.4.3 数据字典与图形工具 37

    3.5 需求分析文档 38

    3.5.1 软件需求规格说明 38

    3.5.2 编写需求分析文档的步骤 38

    3.5.3 用户手册编写提示 39

    本章小结 39

    习题三 40

    第4章 概要设计 42

    4.1 概要设计步骤 42

    4.1.1 软件结构设计 42

    4.1.2 数据结构及数据库设计 43

    4.1.3 系统接口设计 44

    4.1.4 设计测试方案 44

    4.2 软件结构设计的基本原理 44

    4.2.1 模块与信息隐蔽 44

    4.2.2 模块化 45

    4.2.3 模块的耦合和内聚 47

    4.2.4 软件结构设计优化准则 49

    4.3 软件结构设计的图形工具 51

    4.3.1 层次图 51

    4.3.2 结构图 51

    4.4 概要设计方法 52

    4.4.1 结构化方法 53

    4.4.2 面向数据结构的设计方法 55

    4.5 代码设计 58

    4.5.1 代码设计原则 59

    4.5.2 代码种类 59

    4.5.3 代码设计方法 61

    4.6 数据输入/输出设计 61

    4.6.1 输入设计 61

    4.6.2 输出设计 62

    4.7 数据的安全设计 62

    4.8 概要设计文档与复审 63

    4.8.1 概要设计说明书 63

    4.8.2 概要设计复审 64

    4.8.3 数据库设计说明书 65

    本章小结 66

    习题四 66

    第5章 详细设计 68

    5.1 用户界面设计 68

    5.1.1 用户界面设计问题 68

    5.1.2 用户界面设计过程 70

    5.1.3 用户界面设计的基本原则 70

    5.1.4 用户界面设计指南 70

    5.2 过程设计 72

    5.2.1 流程图 72

    5.2.2 盒图 76

    5.2.3 PAD图 77

    5.2.4 判定表 79

    5.2.5 判定树 79

    5.2.6 过程设计语言 80

    5.3 详细设计文档与复审 82

    5.3.1 详细设计说明书 82

    5.3.2 操作手册编写提示 82

    5.3.3 详细设计的复审 83

    本章小结 84

    习题五 84

    第6章 软件实现 85

    6.1 结构化程序设计 85

    6.2 选择程序设计语言 86

    6.3 程序设计风格 88

    6.4 程序设计质量的评价 89

    6.5 程序设计文档 90

    6.6 软件测试的目标和原则 90

    6.6.1 软件测试的目标 90

    6.6.2 测试原则 91

    6.7 软件测试的方法 91

    6.7.1 静态分析与动态测试 91

    6.7.2 黑盒法与白盒法 92

    6.8 软件测试的步骤 93

    6.8.1 模块测试 93

    6.8.2 集成测试 93

    6.8.3 程序审查会和人工运行 94

    6.8.4 确认测试 95

    6.8.5 平行运行 96

    6.9 设计测试方案 96

    6.9.1 等价类划分法 96

    6.9.2 边界值分析法 97

    6.9.3 错误推测法 97

    6.9.4 逻辑覆盖法 98

    6.9.5 因果图法 101

    6.9.6 实用测试策略 103

    6.10 软件调试、验证与确认 104

    6.10.1 软件调试 104

    6.10.2 程序正确性验证 105

    6.10.3 软件确认 106

    6.11 软件测试计划和分析报告 106

    本章小结 107

    习题六 108

    第7章 软件维护 112

    7.1 软件维护过程 112

    7.1.1 维护的种类 112

    7.1.2 结构性维护与非结构性维护 113

    7.1.3 维护的费用 114

    7.1.4 维护的困难 114

    7.1.5 维护的实施 114

    7.1.6 维护的副作用 116

    7.2 软件的可维护性 117

    7.2.1 决定软件可维护性的因素 117

    7.2.2 可维护性的度量 117

    7.2.3 提高软件的可维护性 118

    本章小结 119

    习题七 120

    第8章 面向对象方法学与UML 121

    8.1 面向对象方法概述 121

    8.1.1 面向对象方法学的主要优点 122

    8.1.2 面向对象的概念 123

    8.2 UML概述 125

    8.2.1 UML的发展 125

    8.2.2 UML的设计目标和内容 126

    8.2.3 UML的语义 127

    8.3 UML图 128

    8.3.1 用例图 128

    8.3.2 类图和包 129

    8.3.3 对象图 133

    8.3.4 状态图 133

    8.3.5 顺序图 135

    8.3.6 活动图 135

    8.3.7 协作图 136

    8.3.8 构件图 137

    8.3.9 部署图 137

    本章小结 138

    习题八 139

    第9章 面向对象技术及UML应用 140

    9.1 面向对象分析 140

    9.1.1 面向对象的分析过程 140

    9.1.2 面向对象的分析原则 140

    9.2 建立对象模型 141

    9.2.1 确定对象和类 141

    9.2.2 确定类的相互关系 142

    9.2.3 划分主题 145

    9.3 建立动态模型 147

    9.3.1 编写脚本 148

    9.3.2 设计用户界面 149

    9.3.3 画UML顺序图或活动图 149

    9.3.4 画状态转换图 149

    9.4 建立功能模型 150

    9.5 面向对象设计 151

    9.5.1 系统设计 152

    9.5.2 对象设计 155

    9.5.3 面向对象设计的准则 156

    9.5.4 面向对象设计的启发规则 156

    9.6 UML的应用 157

    9.6.1 UML模型 157

    9.6.2 UML视图 158

    9.6.3 UML使用准则 160

    9.6.4 UML的扩展机制 161

    9.6.5 UML的应用领域 162

    9.7 面向对象系统的实现 162

    9.7.1 选择程序设计语言 162

    9.7.2 面向对象程序设计 163

    9.7.3 面向对象的测试 164

    9.8 统一过程 164

    9.8.1 RUP的开发模式 165

    9.8.2 RUP的特点 166

    9.8.3 RUP的要素 166

    本章小结 167

    习题九 168

    第10章 软件开发环境 169

    10.1 软件开发工具 169

    10.2 软件工程环境 172

    10.3 CASE 技术 174

    本章小结 175

    习题十 176

    第11章 软件重用 177

    11.1 可重用的软件成分 177

    11.2 软件重用的过程 178

    11.2.1 软件重用过程模型 178

    11.2.2 开发可重用的软件构件 179

    11.2.3 分类和检索软件构件 180

    11.2.4 软件重用环境 181

    本章小结 181

    习题十一 182

    第12章 软件工程管理 183

    12.1 软件工程管理概述 183

    12.2 软件规模估算 184

    12.2.1 软件开发成本估算方法 184

    12.2.2 代码行技术和任务估算技术 185

    12.2.3 功能点技术 186

    12.2.4 COCOMO模型 188

    12.2.5 程序环行复杂程度的度量 190

    12.3 进度计划 191

    12.3.1 Gantt图 191

    12.3.2 工程网络技术 191

    12.4 人员组织 194

    12.5 软件配置管理 196

    12.6 软件质量保证 199

    12.6.1 软件质量的特性 199

    12.6.2 软件质量保证措施 200

    12.7 软件工程标准与软件文档 201

    12.7.1 软件工程标准 201

    12.7.2 软件文档的编写 203

    本章小结 204

    习题十二 204

    附录 选择题参考答案 206

    参考文献 207
查看详情
相关图书 / 更多
软件工程基础——高等学校计算机专业教材
软件工程:经典、现代和前沿
孙艳春 主编, 黄罡,邓水光 编著
软件工程基础——高等学校计算机专业教材
软件利润流 英文限量版
(美)杰森·坦纳(Jason Tanner)
软件工程基础——高等学校计算机专业教材
软件逆向分析技术及应用
鲁宏伟 陈凯 邓贤君 许雷永
软件工程基础——高等学校计算机专业教材
软件性能测试实战教程(LoadRunner与JMeter)
周百顺 主编;张伟
软件工程基础——高等学校计算机专业教材
软件工程专业英语(第2版)
宋晓涛 谢红薇 郭晓红
软件工程基础——高等学校计算机专业教材
软件工程--理论与实践
毛新军 董威
软件工程基础——高等学校计算机专业教材
软件需求分析(微课版)
李美蓉 何中海
软件工程基础——高等学校计算机专业教材
软件自动化测试入门攻略
杨定佳
软件工程基础——高等学校计算机专业教材
软件工程(第4版 英文版)
(美) 莎丽·劳伦斯·弗里格(Shari Lawrence Pfleeger)
软件工程基础——高等学校计算机专业教材
软件性能测试、分析与调优实践之路(第2版)
张永清
软件工程基础——高等学校计算机专业教材
软件灵活性设计:如何避免陷入编程困境 [美]克里斯·汉森
(美)克里斯·汉森 (美)杰拉尔德·杰伊·萨斯曼
软件工程基础——高等学校计算机专业教材
软件开发珠玑:穿越50年软件往事的60条戒律
(美)Karl Wiegers(卡尔·魏格斯)
您可能感兴趣 / 更多