实用软件工程(附微课视频 第2版)

提供微课视频的软件工程教材
分享 推荐 11 收藏 295 阅读 20.6K
吕云翔 (作者) 978-7-115-52473-7

关于本书的内容有任何问题,请联系 刘博

1.配套资源丰富,提供教学PPT、源代码、微课视频、软件开发相关案例文档
2.本书对上一版进行了全面的修订、再组织和更新。 改动内容如下。
(1) 将书的组织结构分为六个部分:软件工程概述、可行性研究与项目开发计划、结构化分析与设计、面向对象分析与设计、软件实现与测试和软件工程管理。
(2) 压缩了“结构化分析”与“结构化设计”的内容。
(3) 丰富了“面向对象分析”与“面向对象设计”的内容。
(4) 将案例“小型二手货交易平台”改为了““墨韵”读书会书籍共享平台”,并用最新的开发工具进行了重新开发。读者可用扫描二维码的形式,获取案例的电子文档和源代码。

内容摘要

本书按照典型的软件开发过程来组织内容,旨在培养读者具备软件工程思想及实际软件开发的能力。本书共分为13章, 内容涉及软件与软件工程、软件过程、可行性研究与项目开发计划、结构化分析、结构化设计、面向对象方法与UML、面向对象分析、软件体系结构与设计模式、面向对象设计、软件实现、软件测试与维护、软件工程管理和软件开发项目综合实践。本书理论与实践相结合,内容翔实,可操作性强。

目录

第一部分 软件工程概述
第1章 软件与软件工程 1
1.1 软件 1
1.1.1 软件的概念及特点 1
1.1.2 软件的分类 2
1.2 软件危机 3
1.2.1 软件危机的表现与原因 3
1.2.2 软件危机的启示 4
1.3 软件工程 5
1.3.1 软件工程的概念 5
1.3.2 软件工程的发展 5
1.3.3 软件工程研究的内容 7
1.3.4 软件工程目标和原则 7
1.3.5 软件工程知识体系 8
1.4 软件开发方法 9
1.5 软件工程工具 10
1.6 “‘墨韵’读书会书籍共享平台”案例
介绍 12
习题 12
第2章 软件过程 14
2.1 软件生命周期的基本任务 14
2.2 软件过程模型 15
2.2.1 瀑布模型 15
2.2.2 快速原型模型 15
2.2.3 增量模型 17
2.2.4 螺旋模型 17
2.2.5 喷泉模型 18
2.2.6 统一软件开发过程模型 19
2.2.7 敏捷模型与极限编程 20
2.2.8 几种模型之间的关系 26
2.2.9 选择软件过程模型 27
2.3 软件过程模型实例 27
习题 28
第二部分 可行性研究与项目开发计划
第3章 可行性研究与项目开发
计划 29
3.1 可行性研究 29
3.1.1 项目立项概述 29
3.1.2 可行性研究的内容 30
3.1.3 可行性研究的步骤 30
3.2 制订项目开发计划 31
3.3 可行性研究实例 32
第三部分 结构化分析与设计
第4章 结构化分析 39
4.1 需求分析 39
4.1.1 需求分析的任务 39
4.1.2 需求分析的步骤 40
4.1.3 需求管理 41
4.2 结构化需求分析方法 42
4.3 结构化分析建模 43
4.3.1 实体-关系图 43
4.3.2 数据流图 44
4.3.3 状态转换图 46
4.3.4 数据字典 46
4.4 结构化分析的图形工具 47
4.4.1 层次方框图 47
4.4.2 Warnier图 48
4.5 结构化分析实例 48
4.6 实践:使用Visio绘制“‘墨韵’读书
会书籍共享平台”的数据流图 51
习题 56

第5章 结构化设计 59
5.1 软件设计的基本概念 59
5.1.1 软件设计的意义和目标 59
5.1.2 软件设计原则 59
5.1.3 软件设计分类 61
5.2 结构化设计概述 62
5.3 结构化设计与结构化分析的关系 62
5.4 结构化设计方法 63
5.4.1 表示软件结构的图形工具 63
5.4.2 面向数据流的设计方法 65
5.4.3 面向数据结构的设计方法 68
5.5 结构化设计的工具 72
5.5.1 流程图 72
5.5.2 盒图(N-S图) 73
5.5.3 PAD图 74
5.5.4 判定表 75
5.5.5 判定树 76
5.5.6 过程设计语言 76
5.6 数据库结构设计 77
5.7 人机界面设计 78
5.8 接口设计 79
5.9 数据设计 80
5.10 结构化设计实例 82
5.11 实践:使用Visio绘制“‘墨韵’读书
会书籍共享平台”的结构图 88
习题 90
第四部分 面向对象分析与设计
第6章 面向对象方法与统一建模
语言 93
6.1 面向对象的软件工程方法 93
6.1.1 面向对象的基本概念 93
6.1.2 面向对象的软件工程方法的特征与优势 94
6.1.3 面向对象的实施步骤 95
6.2 统一建模语言 96
6.2.1 统一建模语言简述 96
6.2.2 统一建模语言的特点 96
6.2.3 统一建模语言的应用范围 97
6.2.4 统一建模语言的图 97
6.2.5 统一建模语言“4+1”视图 98
6.3 静态建模机制 99
6.3.1 用例图 99
6.3.2 类图和对象图 101
6.3.3 包图 106
6.4 动态建模机制 106
6.4.1 顺序图 106
6.4.2 协作图 108
6.4.3 状态图 109
6.4.4 活动图 110
6.5 描述物理架构的机制 112
6.5.1 构件图 112
6.5.2 部署图 112
习题 113
第7章 面向对象分析 116
7.1 面向对象分析方法 116
7.1.1 面向对象分析过程 116
7.1.2 面向对象分析原则 117
7.2 面向对象建模 118
7.2.1 建立对象模型 119
7.2.2 建立动态模型 123
7.2.3 建立功能模型 125
7.2.4 3种模型之间的关系 126
7.3 面向对象分析实例 127
7.4 实践 132
7.4.1 使用Rose创建“‘墨韵’读书会
书籍共享平台”的用例模型 132
7.4.2 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的类图 136
7.4.3 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的对象图 139
7.4.4 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的包图 140
7.4.5 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的状态图 142
7.4.6 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的顺序图 144
7.5 案例:“‘墨韵’读书会书籍共享平台”的
需求规格说明书 146
习题 146
第8章 软件体系结构与设计
模式 148
8.1 软件体系结构的概念 148
8.1.1 什么是软件体系结构 148
8.1.2 软件体系结构建模 148
8.1.3 软件体系结构的分层模型 149
8.1.4 软件体系结构的作用 150
8.2 典型的软件体系结构风格 151
8.2.1 数据流风格 151
8.2.2 调用/返回风格 152
8.2.3 独立构件风格 152
8.2.4 虚拟机风格 152
8.2.5 仓库风格 153
8.3 软件质量属性 153
8.4 分布式系统结构 154
8.4.1 多处理器体系结构 154
8.4.2 客户机/服务器体系结构 155
8.4.3 分布式对象体系结构 157
8.4.4 对等端体系结构 157
8.4.5 代理 158
8.5 体系结构框架 158
8.5.1 模型—视图—控制器 158
8.5.2 模型—视图—表示器 159
8.5.3 J2EE体系结构框架 160
8.5.4 PCMEF框架 161
8.5.5 PCBMER框架 162
8.6 软件系统的设计模式 162
8.6.1 工厂模式 163
8.6.2 桥接模式 164
8.6.3 策略模式 165
8.6.4 其他模式 165
习题 166
第9章 面向对象设计 168
9.1 面向对象设计与结构化设计 168
9.2 面向对象设计与面向对象分析的关系 168
9.3 面向对象设计的过程与规则 169
9.3.1 面向对象设计的过程 169
9.3.2 面向对象设计的原则 170
9.4 面向对象设计的启发规则 171
9.5 系统设计 171
9.5.1 系统分解 172
9.5.2 问题域子系统的设计 172
9.5.3 人机交互子系统的设计 175
9.5.4 任务管理子系统的设计 177
9.5.5 数据管理子系统的设计 179
9.6 对象设计 181
9.6.1 设计类中的服务 181
9.6.2 设计类的关联 182
9.6.3 对象设计优化 184
9.7 面向对象设计实例 187
9.8 实践 190
9.8.1 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的活动图 190
9.8.2 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的协作图 191
9.8.3 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的构件图 193
9.8.4 使用Rose绘制“‘墨韵’读书会
书籍共享平台”的部署图 194
9.9 案例:“‘墨韵’读书会书籍共享平台”的
软件设计说明书 196
习题 196
第五部分 软件实现与测试
第10章 软件实现 199
10.1 编程语言 199
10.1.1 编程语言的发展与分类 199
10.1.2 选择编程语言需考虑的因素 202
10.2 编程风格 203
10.3 面向对象实现 207
10.4 软件实现实例 207
10.5 实践:使用Visual Studio实现
“‘墨韵’读书会书籍共享平台”
的用户登录模块 209
10.6 案例:“‘墨韵’读书会书籍共享平台”
的部署文档 217
习题 217
第11章 软件测试与维护 219
11.1 软件测试的基本概念 219
11.1.1 软件测试原则 219
11.1.2 软件测试分类 220
11.1.3 软件测试模型 221
11.2 测试用例 223
11.2.1 测试用例编写 223
11.2.2 测试用例设计 223
11.2.3 测试用例场景 223
11.3 软件测试方法 224
11.4 黑盒测试 224
11.4.1 等价类划分法 224
11.4.2 边界值分析法 226
11.4.3 错误推测法 227
11.4.4 因果图法 228
11.4.5 决策表法 230
11.4.6 场景法 231
11.4.7 黑盒测试方法选择 233
11.5 白盒测试 233
11.5.1 代码检查法 233
11.5.2 静态结构分析法 234
11.5.3 程序插桩技术 234
11.5.4 逻辑覆盖法 235
11.5.5 基本路径法 240
11.5.6 白盒测试方法选择 241
11.5.7 白盒测试和黑盒测试比较 242
11.6 软件测试的一般步骤 242
11.7 单元测试 243
11.7.1 单元测试概述 243
11.7.2 单元测试内容 243
11.7.3 单元测试方法 244
11.8 集成测试 245
11.8.1 集成测试概述 245
11.8.2 集成测试分析 245
11.8.3 集成测试策略 245
11.9 系统测试 249
11.9.1 系统测试概述 249
11.9.2 系统测试类型 249
11.10 验收测试 251
11.10.1 验收测试概述 251
11.10.2 验收测试内容 251
11.10.3 α测试和β测试 251
11.11 回归测试 252
11.12 面向对象的软件测试 253
11.13 软件调试 255
11.13.1 调试过程 255
11.13.2 调试途径 255
11.14 软件维护 256
11.14.1 软件维护的过程 256
11.14.2 软件维护分类 256
11.14.3 软件的可维护性 257
11.14.4 软件维护的副作用 257
11.14.5 软件再工程技术 257
11.15 软件测试实例 258
11.16 实践:使用Visual Studio对“‘墨韵’
读书会书籍共享平台”的用户登录
模块进行单元测试 264
11.17 案例:“‘墨韵’读书会书籍共享平台”
的测试分析报告与用户手册 266
习题 266
第六部分 软件工程管理与实践
第12章 软件工程管理 269
12.1 软件工程管理概述 269
12.2 软件估算 269
12.2.1 软件估算的概念 269
12.2.2 软件估算的方法 270
12.2.3 软件估算的原则与技巧 272
12.3 软件开发进度计划 272
12.3.1 Gantt图 272
12.3.2 PERT图 273
12.4 软件开发人员组织 273
12.4.1 民主制程序员组 274
12.4.2 主程序员组 274
12.4.3 现代程序员组 274
12.5 软件开发风险管理 274
12.5.1 软件开发风险 274
12.5.2 软件开发风险管理 275
12.6 软件质量保证 277
12.6.1 软件质量的基本概念 277
12.6.2 软件质量保证的措施 278
12.7 软件配置管理概述 279
12.7.1 软件配置管理术语 279
12.7.2 软件配置管理的过程 281
12.7.3 配置管理的角色划分 282
12.8 软件工程标准与软件文档 283
12.8.1 软件工程标准 283
12.8.2 软件文档 284
12.9 软件过程能力成熟度模型 286
12.10 软件项目管理 287
12.10.1 软件项目管理概述 287
12.10.2 软件项目管理与软件工程的
关系 288
12.11 软件复用 288
12.12 实践:使用Project管理“‘墨韵’读书
会书籍共享平台”的开发过程 290
习题 293
附录 软件开发项目综合实践 296
参考文献 297

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

吕云翔,北京航空航天大学软件学院副教授。具有多年的软件开发、项目管理、计算机教学经验,对IT行业具有较全面的认识,出版教材多部。目前研究领域包括:软件工程、人工智能、大数据。

著有《计算机导论实践教程》(高等院校计算机教材系列),《软件工程》,译有《计算机文化》(原书第8版)
吕云翔副教授上课时风趣幽默,对学生主要是自主学习,在课堂上要求很轻松,从不强迫学生,深受软件学院学生欢迎。
有网友做藏头诗一首,贺吕云翔生日快乐
祝君仕途传捷报
吕王将相皆等闲
云间一摇风沙起
翔飞万里拓新天
生将奋此有用体
日月征程勇向前
快意今日同相聚
乐看明朝志更远

购买本书用户

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部