图书介绍
软件工程PDF|Epub|txt|kindle电子书版本网盘下载
![软件工程](https://www.shukui.net/cover/39/30451001.jpg)
- 陈永主编;张薇,杨磊副主编 著
- 出版社: 北京:中国铁道出版社
- ISBN:9787113197179
- 出版时间:2017
- 标注页数:385页
- 文件大小:58MB
- 文件页数:397页
- 主题词:软件工程-高等学校-教材
PDF下载
下载说明
软件工程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
基础篇2
第1章 概论2
1.1 软件危机3
1.1.1 摩尔定律和超越摩尔3
1.1.2 软件危机的介绍4
1.1.3 产生软件危机的原因5
1.1.4 消除软件危机的途径6
1.2 软件开发工程化7
1.2.1 软件工程的定义7
1.2.2 软件开发的发展过程8
1.2.3 软件工程的基本原理10
1.3 软件工程产品分类及来源11
1.3.1 软件工程产品分类11
1.3.2 软件工程项目来源12
1.4 软件生命周期13
1.4.1 软件生命周期的定义13
1.4.2 软件生命周期的阶段14
1.5 软件工程方法学16
1.5.1 软件工程方法学的定义16
1.5.2 软件工程方法学的类型16
1.6 软件工程人员的业务素质和职业道德19
1.6.1 软件工程师的业务素质20
1.6.2 软件工程师的职业道德规范20
1.6.3 软件工程师职业实践的准则21
1.6.4 软件工程师职业实践的国际标准22
本章小结23
习题23
第2章 软件过程与模型25
2.1 软件过程25
2.1.1 软件过程的定义25
2.1.2 软件过程的特点25
2.1.3 软件过程的分类26
2.1.4 软件过程的作用26
2.1.5 软件过程模型化26
2.2 瀑布模型26
2.2.1 瀑布模型的基本思想26
2.2.2 瀑布模型的特点28
2.2.3 瀑布模型的应用范围30
2.3 快速原型法30
2.3.1 快速原型法的基本思想30
2.3.2 快速模型的特点31
2.3.3 快速原型法的应用范围32
2.4 增量模型32
2.4.1 增量模型的基本思想32
2.4.2 增量模型的特点32
2.4.3 增量模型应用范围33
2.5 螺旋模型33
2.5.1 螺旋模型的基本思想33
2.5.2 螺旋模型的特点35
2.5.3 螺旋模型的应用范围35
2.6 V模型35
2.6.1 V模型的基本思想35
2.6.2 V模型的特点36
2.6.3 V模型的应用范围36
2.7 敏捷软件开发36
2.7.1 敏捷开发的基本思想36
2.7.2 敏捷开发的特点37
2.7.3 敏捷开发的应用范围38
本章小结38
习题38
第3章 软件计划与可行性研究40
3.1 问题定义40
3.2 软件规模估算41
3.2.1 软件估算的概念41
3.2.2 软件估算的方法41
3.3 可行性研究43
3.3.1 可行性研究的概念43
3.3.2 可行性研究的分类44
3.3.3 可行性研究的步骤45
3.4 软件项目计划47
3.4.1 软件范围47
3.4.2 环境资源47
3.4.3 制定进度表48
3.5 系统流程图48
3.5.1 系统流程图的定义48
3.5.2 系统流程图的符号表示48
3.5.3 应用实例49
3.6 其他补充说明50
本章小结51
习题51
第4章 软件需求分析53
4.1 软件需求的定义53
4.2 需求分析的层次内容54
4.3 需求分析的任务55
4.3.1 确定项目的范围55
4.3.2 确定具体需求56
4.3.3 软件需求文档化56
4.4 需求获取的方法57
4.4.1 用户沟通交流法57
4.4.2 工具分析法59
4.4.3 模型及语言描述法61
4.4.4 原型化方法62
4.5 需求分析的步骤64
4.6 数据流图66
4.6.1 数据流图的定义66
4.6.2 数据流图的符号表示66
4.6.3 数据流图的绘制方法67
4.6.4 银行储蓄系统应用实例68
4.6.5 毕业生就业管理系统应用实例70
4.7 数据字典72
4.7.1 数据字典的定义72
4.7.2 基本符号72
4.7.3 互联网+电商销售应用实例73
4.8 实体-联系图74
4.8.1 实体-联系图的定义74
4.8.2 实体-联系图的符号表示75
4.8.3 应用实例75
4.9 状态转换图76
4.9.1 状态转换图的定义76
4.9.2 状态转换图的符号表示76
4.9.3 人体运动捕捉系统应用实例77
4.9.4 电话系统行为过程应用实例77
4.10 UML用例需求模型78
4.10.1 UML基本概念78
4.10.2 UML主要内容78
4.10.3 用例需求功能模型79
4.11 需求变更管理81
4.11.1 控制项目范围的扩展81
4.11.2 变更控制过程82
4.11.3 变更控制委员会84
4.11.4 度量变更活动85
本章小结85
习题85
第5章 软件总体设计87
5.1 软件总体设计阶段的任务87
5.2 软件总体设计基本思想88
5.2.1 雪球理论88
5.2.2 模块化88
5.2.3 抽象89
5.2.4 逐步求精91
5.2.5 信息隐藏和局部化91
5.2.6 模块独立内聚和耦合91
5.2.7 软件结构设计的启发式规则93
5.3 总体设计阶段的工作步骤96
5.3.1 总体设计阶段组成96
5.3.2 总体设计步骤96
5.4 系统设计阶段97
5.4.1 二维码的食品安全追溯系统问题描述97
5.4.2 二维码的食品安全追溯系统分析98
5.4.3 二维码的食品安全追溯系统设计99
5.5 软件结构设计工具100
5.5.1 层次图定义及实例100
5.5.2 结构图定义及实例101
5.6 面向数据流的设计万法103
5.6.1 定义103
5.6.2 数据流图的类型103
5.6.3 设计步骤104
5.6.4 汽车数字仪表板实例107
本章小结110
习题110
第6章 人机交互设计112
6.1 人机交互基本概念112
6.1.1 人机交互的定义112
6.1.2 人机交互的研究内容112
6.2 人机交互感知和认知基础113
6.2.1 视觉感知113
6.2.2 颜色模型116
6.2.3 听觉感知118
6.2.4 触觉感知120
6.3 人机交互发展阶段120
6.4 传统交互设备121
6.5 可穿戴计算技术与设备121
6.6 人机界面设计基础122
6.6.1 人机界面设计的定义122
6.6.2 理解用户123
6.7 界面设计原则125
6.7.1 图形用户界面的主要思想125
6.7.2 图形用户界面的一般原则127
6.8 Web界面设计128
6.8.1 Web界面及相关概念128
6.8.2 Web界面设计原则128
6.8.3 Web风格与布局色彩设计129
6.8.4 Web文本设计130
本章小结131
习题131
第7章 软件详细设计132
7.1 详细设计阶段的目的和任务132
7.1.1 详细设计阶段的目的132
7.1.2 详细设计阶段的任务132
7.2 结构化程序设计与程序设计风格133
7.2.1 结构化程序设计133
7.2.2 程序设计的风格134
7.3 常用的详细设计表达工具135
7.3.1 程序流程图135
7.3.2 盒图136
7.3.3 PAD图137
7.3.4 决策树138
7.3.5 决策表139
7.3.6 PDL设计语言140
7.4 程序复杂度的定量计算141
7.4.1 McCabe方法141
7.4.2 Halstead万法142
本章小结143
习题143
第8章 软件编码145
8.1 程序设计语言145
8.1.1 程序设计语言的定义145
8.1.2 程序设计语言的特性145
8.1.3 程序设计语言的分类146
8.2 程序设计语言的选择147
8.2.1 程序设计语言选择标准148
8.2.2 程序设计风格149
本章小结150
习题150
第9章 软件测试151
9.1 软件测试基础151
9.1.1 软件测试的定义151
9.1.2 软件测试的目标151
9.1.3 软件测试的内容152
9.1.4 软件测试的心理依据152
9.1.5 软件测试的发展史154
9.1.6 软件测试典型案例155
9.2 软件测试的原理与特点157
9.2.1 软件测试的原理157
9.2.2 软件测试的特点158
9.3 软件测试的基本方法158
9.3.1 人工测试和机器测试158
9.3.2 白盒测试、黑盒测试和灰盒测试159
9.3.3 Alpha测试和Beta测试159
9.4 软件测试的过程和步骤160
9.4.1 软件测试的过程160
9.4.2 软件测试的步骤160
9.4.3 回归测试164
9.5 黑盒测试技术164
9.5.1 黑盒测试方法概述164
9.5.2 划分等价类165
9.5.3 边界值分析法165
9.5.4 错误推测法166
9.6 白盒测试技术166
9.6.1 白盒测试的方法166
9.6.2 白盒测试的优缺点167
9.7 软件可靠性与可用性167
9.8 软件压力测试168
9.9 软件容量测试169
本章小结169
习题170
第10章 软件维护与再工程171
10.1 软件维护171
10.1.1 软件维护的定义171
10.1.2 结构化维护与非结构化维护172
10.1.3 软件可维护性因素173
10.1.4 软件文档174
10.2 软件再工程175
10.2.1 软件再工程概念175
10.2.2 软件再工程方法175
10.3 逆向工程176
10.4 软件复用176
10.5 领域工程178
10.6 构件技术179
本章小结181
习题181
高级篇184
第11章 软件形式化方法184
11.1 形式化方法184
11.1.1 形式化方法的概念184
11.1.2 形式化方法的分类185
11.2 Petri网形式化理论185
11.2.1 Petri网形式化介绍185
11.2.2 Petri网数学定义187
11.3 电梯问题Petri网求解188
11.4 就餐问题Petri网求解190
本章小结200
习题200
第12章 软件设计模式201
12.1 设计模式概述201
12.1.1 设计模式的基本概念201
12.1.2 设计模式要素201
12.2 设计模式的原则和策略202
12.3 设计模式的类型202
12.4 设计模式的优点204
本章小结204
习题204
第13章 极限编程205
13.1 极限编程基础205
13.1.1 极限编程的定义205
13.1.2 极限编程核心价值206
13.2 极限编程设计原则206
13.3 极限设计开发环节208
本章小结209
习题209
第14章 大数据与面向服务的软件210
14.1 大数据基础210
14.1.1 大数据的定义210
14.1.2 大数据与云计算211
14.2 云计算211
14.2.1 云计算的定义211
14.2.2 云计算的特点211
14.2.3 云计算的服务形式212
14.3 面向服务的SOA架构213
14.3.1 SOA定义213
14.3.2 SOA的特点214
14.4 面向服务的软件工程214
14.4.1 面向服务计算214
14.4.2 面向服务的软件工程215
14.4.3 大数据时代下的软件服务工程215
本章小结216
习题216
第15章 软件项目管理217
15.1 软件项目管理基础217
15.1.1 软件管理的定义217
15.1.2 软件管理的内容218
15.1.3 组织机构220
15.1.4 项目管理沟通原则220
15.2 软件项目风险管理221
15.2.1 风险管理基础知识221
15.2.2 软件风险管理221
15.2.3 软件风险类型222
15.3 文档管理223
15.3.1 文档管理概述223
15.3.2 文档管理控制方法225
15.4 软件质量管理226
15.4.1 ISO与ISO 9000标准族226
15.4.2 ISO 9001质量管理体系227
15.4.3 CMM与CMMI概述228
15.4.4 CMM等级概述229
本章小结231
习题231
第16章 合同管理232
16.1 合同管理的定义232
16.2 合同管理的要件233
16.2.1 合同的实质要件233
16.2.2 合同的形式要件235
16.3 合同的订立235
16.4 合同的履行237
16.4.1 合同未尽事宜的确定237
16.4.2 合同履行过程中的变动238
16.5 合同的变更238
16.6 合同的终止239
16.7 违约责任239
16.8 合同管理的其他注意事项240
本章小结240
习题240
案例篇242
第17章 项目实例——在线订餐系统的实现242
17.1 项目背景说明242
17.1.1 项目问题描述243
17.1.2 目的及意义243
17.2 开发技术243
17.2.1 B/S模式243
17.2.2 JSP技术244
17.2.3 MySQL数据库245
17.2.4 MVC模式245
17.2.5 相似图像搜索算法246
17.3 可行性分析246
17.3.1 技术可行性分析247
17.3.2 经济可行性分析247
17.3.3 社会可行性分析247
17.4 需求分析247
17.4.1 业务需求分析247
17.4.2 用尸需求分析248
17.4.3 功能需求分析248
17.4.4 非功能需求分析249
17.5 系统概要设计249
17.5.1 在线订餐系统的架构设计249
17.5.2 在线订餐系统的功能模块设计250
17.5.3 在线订餐系统的流程图设计250
17.5.4 在线订餐系统的数据库设计252
17.6 系统详细设计254
17.6.1 用户模块的功能实现254
17.6.2 餐厅菜品显示模块266
17.6.3 用户购物车模块270
17.6.4 以图搜索模块279
17.6.5 文字搜索模块284
17.6.6 用户分享模块286
17.6.7 用户订单模块286
17.6.8 在线支付模块292
17.6.9 收藏模块298
17.6.10 店家模块的功能实现299
17.6.11 菜品管理模块309
17.6.12 店家订单管理模块314
17.7 系统测试316
附录A 软件工程师职业实践的国际标准319
附录B 软件工程术语和定义324
附录C 软件工程缩略语328
附录D 计算机软件文档编制规范330
参考文献385