书籍详情

软件性能工程

软件性能工程

作者:(美)Connie U.Smith,(美)Lloyd G.Williams著;唐毅鸿[等]译;唐毅鸿译

出版社:机械工业出版社

出版时间:2003-06-01

ISBN:9787111121473

定价:¥39.00

购买这本书可以去
内容简介
  本书全面阐述了关于创建具有响应性和可伸缩性软件所涉及的从体系结构问题到建模、度量标准和过程的各个方面,详细介绍了各种软件性能工程模型,讨论了如何根据面向对象开发过程的部分产品—体系结构和设计模型快速而轻松地建立定量模型,介绍了有效的数据采集技术和性能测量技术,探究了面向性能的设计原则。此外,本书中包括大量实时应用和案例研究,说明了如何将软件性能工程技术应用到重要应用领域,例如Web应用和嵌入式实时系统。本书主要面向经验丰富的软件开发人员,同时也可以为项目经理、开发人员、性能工程师提供参考,还可以作为高等院校相关专业软件工程课程的教材。
作者简介
  Connie U.Smith博士是L&S Computer Techon logy公司性能工程服务部的首席顾问,她是Performance Engineering of Software Systems(Addison-Wesley,1990)一书的作者,并且由于技术精湛和在SPE方面的贡献获得过计算机测量集团的AA Michelon奖。Lloyd G.Williams博士是软件工程研究所有首席顾问,他曾在过程控制、航空电子设备、电信、电子货币转账、Web系统、软件开发工具和环境、医疗设备等领域工作过。他曾在专业开发研讨会发表演讲,并在世界范围内的100多家组织机构中做过软件开发方面的顾问。
目录
第一部分   概      述
第1章   引言 3
1.1   软件和性能 3
1.1.1   响应性 3
1.1.2   可伸缩性 4
1.2   性能的重要性 5
1.2.1   性能失败的影响 6
1.2.2   性能失败的原因 7
1.2.3   获得成功 8
1.3   如何管理性能 9
1.3.1   被动性能管理 9
1.3.2   主动性能管理 10
1.4   软件性能工程 11
1.4.1   SPE建模策略 12
1.4.2   SPE模型 12
1.5   面向对象系统的SPE 13
1.5.1   SPE的成本是多少 14
1.5.2   SPE需要什么 14
1.6   小结 15
第2章   SPE快速浏览 16
2.1   面向对象系统的SPE过程 16
2.2   案例研究 19
2.2.1   评估性能风险(第1步) 19
2.2.2   确定关键用例(第2步) 19
2.2.3   选择关键性能场景(第3步) 20
2.2.4   建立性能目标(第4步) 21
2.2.5   构造性能模型(第5步) 21
2.2.6   确定软件资源需求(第6步) 21
2.2.7   增加计算机资源需求(第7步) 22
2.2.8   评价模型(第8步) 24
2.2.9   验证和确认模型(第9步) 24
2.3   统一软件过程中的SPE 24
2.4   性能解决方案 25
2.4.1   性能原则 25
2.4.2   性能模式 26
2.4.3   性能反模式 26
2.4.4   实现解决方案 26
2.5   小结 27
第3章   SPE和UML 28
3.1   简介 28
3.2   扩展UML 28
3.2.1   构造型 29
3.2.2   标签值 29
3.2.3   约束 29
3.3   用例和场景 29
3.3.1   用例 30
3.3.2   场景 31
3.4   扩展顺序图符号 33
3.4.1   实例分解 33
3.4.2   循环. 分支和引用 33
3.5   规定时间 35
3.5.1   定时标记 35
3.5.2   时间表达式 36
3.5.3   定时约束 36
3.5.4   顺序图中的时间 36
3.6   并发 37
3.6.1   线程和进程 38
3.6.2   Coregions 38
3.6.3   并行组合 39
3.6.4   同步 39
3.7   小结 41
第二部分   SPE模型
第4章   软件执行模型 45
4.1   目的 45
4.2   表示软件执行模型 46
4.2.1   执行图 46
4.2.2   执行图限制 49
4.3   模型解决方案 50
4.3.1   基本求解算法 51
4.3.2   更先进的求解技术 53
4.4   分析过程 53
4.5   由顺序图派生出的执行图 56
4.6   ICAD案例研究 56
4.6.1   体系结构1 57
4.6.2   体系结构2 61
4.6.3   结果分析 62
4.6.4   体系结构3 63
4.7   建模提示 65
4.8   小结 66
第5章   Web应用及其他分布式系统 67
5.1   简介 67
5.2   Web应用 68
5.3   分布式对象技术 69
5.3.1   中间件 70
5.3.2   分布式对象技术的局限性 70
5.3.3   利用分布式对象技术进行有效
开发 72
5.4   为分布式系统交互建模 72
5.4.1   系统交互的类型 73
5.4.2   软件执行模型表示 75
5.4.3   描述中间件开销 76
5.4.4   软件模型的近似求解 76
5.5   举例:Web电子商务应用 77
5.5.1   数据库场景 80
5.5.2   订购过程场景 81
5.5.3   实例小结 82
5.6   建模提示 82
5.7   小结 82
第6章   系统执行模型 84
6.1   引言 84
6.2   系统模型基础 85
6.2.1   性能度量标准 86
6.2.2   求解排队模型 88
6.2.3   排队网络 89
6.3   从软件模型结果得到系统模型参数 92
6.4   利用系统模型进行SPE 94
6.4.1   先进系统模型 95
6.4.2   可选的求解方法 95
6.4.3   可调度性 96
6.5   分布式系统案例研究 96
6.6   建模提示 103
6.7   小结 104
第三部分   数 据 采 集
第7章   SPE数据采集 107
7.1   简介 107
7.2   SPE数据需求 107
7.2.1   关键性能场景 108
7.2.2   性能目标 108
7.2.3   运行环境 109
7.2.4   软件资源需求 110
7.2.5   计算机资源需求 111
7.2.6   数据采集问题 112
7.3   性能遍历 112
7.3.1   主题 113
7.3.2   何时进行性能遍历 114
7.3.3   举例 115
7.3.4   成功进行性能遍历的提示 120
7.4   资源估算技术 122
7.4.1   使用测量 122
7.4.2   研究测量结果 122
7.4.3   请教顾问 122
7.4.4   最佳最差情况估算 123
7.4.5   估算什么 123
7.4.6   估算I/O需求 123
7.4.7   估算网络消息 124
7.4.8   获得计算机资源需求 125
7.5   小结 125
第8章   软件测量和探测 127
8.1   引言 127
8.2   应该测量什么 127
8.2.1   负载数据和数据特征 129
8.2.2   路径特征 129
8.2.3   软件资源和处理开销 129
8.2.4   计算机资源的使用 129
8.3   规划性能测量 129
8.3.1   关键考虑事项 130
8.3.2   性能基准程序 130
8.3.3   设计和指导测量研究 131
8.4   性能测量概念 133
8.4.1   术语 133
8.4.2   可能影响测量的因素 135
8.5   数据采集技术和工具 137
8.5.1   数据采集技术 137
8.5.2   测量SPE数据 139
8.6   探测技术 140
8.6.1   探测的设计考虑 141
8.6.2   实现可选方案 142
8.6.3   数据报告 143
8.7   应用资源测量 143
8.8   小结 145
第四部分   性能解决方案
第9章   面向性能的设计 149
9.1   面向性能的设计原则 149
9.2   性能控制原则 149
9.2.1   性能目标原则 150
9.2.2   探测原则 150
9.3   独立原则 151
9.3.1   中心化原则 151
9.3.2   固定点原则 152
9.3.3   本地化原则 153
9.3.4   处理与频率原则 154
9.4   协作原则 155
9.4.1   共享资源原则 155
9.4.2   并行处理原则 156
9.4.3   分散负载原则 157
9.5   使用原则 157
9.6   小结 159
第10章   性能模式 160
10.1   概述 160
10.2   快速通道 161
10.2.1   问题 161
10.2.2   解决方案 162
10.2.3   优点 163
10.2.4   后果 163
10.3   重要事情优先 163
10.3.1   问题 164
10.3.2   解决方案 164
10.3.3   优点 165
10.3.4   后果 165
10.4   耦合 165
10.4.1   问题 165
10.4.2   解决方案 166
10.4.3   优点 166
10.4.4   后果 166
10.5   批处理 167
10.5.1   问题 167
10.5.2   解决方案 167
10.5.3   优点 168
10.5.4   后果 168
10.6   替代路由 169
10.6.1   问题 169
10.6.2   解决方案 169
10.6.3   优点 170
10.6.4   后果 170
10.7   弹性时间 171
10.7.1   问题 171
10.7.2   解决方案 171
10.7.3   优点 172
10.7.4   后果 172
10.8   弱化周期性功能 172
10.8.1   问题 172
10.8.2   解决方案 173
10.8.3   优点 173
10.8.4   后果 173
10.9   小结 173
第11章   性能反模式 175
11.1   概述 175
11.2   “god”类 176
11.2.1   问题 176
11.2.2   解决方案 178
11.3   过量动态分配 178
11.3.1   问题 179
11.3.2   解决方案 180
11.4   迂回寻宝 180
11.4.1   问题 181
11.4.2   解决方案 182
11.5   单行道桥梁 183
11.5.1   问题 184
11.5.2   解决方案 184
11.6   交通堵塞 186
11.6.1   问题 186
11.6.2   解决方案 186
11.7   小结 186
第12章   实现解决方案 188
12.1   概述 188
12.2   性能调整 189
12.3   一般性能解决方案 191
12.3.1   快速通道加速法 192
12.3.2   改进可伸缩性 192
12.3.3   算法和数据结构的选择 195
12.3.4   时间与空间的折中 195
12.3.5   硬件/软件平台的依赖性 198
12.4   面向对象软件的性能解决方案 198
12.4.1   跨语言解决方案 198
12.4.2   C++解决方案 201
12.4.3   Java解决方案 201
12.5   小结 204
第五部分   应      用
第13章   Web应用 207
13.1   引言 207
13.2   性能问题 208
13.3   Web应用的SPE模型 209
13.4   案例研究:Nachtfliegen.com 211
13.4.1   计划航线场景 213
13.4.2   软件模型 215
13.4.3   硬件/软件环境 216
13.4.4   资源需求 218
13.4.5   软件模型解决方案 219
13.4.6   性能改进 221
13.4.7   系统执行模型 221
13.4.8   灵敏度和可伸缩性分析 224
13.5   典型的性能问题 224
13.6   小结 226
第14章   嵌入式实时系统 228
14.1   引言 228
14.2   嵌入式实时系统背景 229
14.2.1   时间要求 229
14.2.2   硬件约束 230
14.2.3   实时操作系统 231
14.2.4   分布式系统 231
14.2.5   数据库 231
14.3   性能问题 231
14.3.1   响应时间和吞吐量 232
14.3.2   可调度性 232
14.4   嵌入式实时系统的SPE模型 234
14.5   案例研究:电话交换 235
14.5.1   概述 235
14.5.2   体系结构和设计 237
14.6   典型的性能问题 242
14.7   小结 245
第六部分   实现SPE
第15章   SPE过程 249
15.1   引言 249
15.2   SPE过程 250
15.2.1   评估性能风险 251
15.2.2   确定关键用例 251
15.2.3   选择关键性能场景 252
15.2.4   建立性能目标 252
15.2.5   构造性能模型 253
15.2.6   确定软件资源需求 254
15.2.7   增加计算机资源需求 254
15.2.8   评价模型 255
15.2.9   验证和确认模型 255
15.3   生命周期后期的SPE活动 256
15.3.1   更详细的模型 256
15.3.2   更精确的数据 257
15.3.3   性能测试 257
15.3.4   基线模型 258
15.4   软件部署后的性能管理 258
15.4.1   演进性变化 258
15.4.2   容量管理 259
15.5   SPE制品 259
15.5.1   性能管理计划 260
15.5.2   性能验证和确认计划 260
15.5.3   SPE配置管理计划 260
15.5.4   性能驱动因素 261
15.5.5   性能场景 261
15.5.6   性能目标 261
15.5.7   执行环境规格说明 261
15.5.8   性能模型 261
15.5.9   模型结果 262
15.5.10   性能测量工具 262
15.5.11   性能验证和确认报告 262
15.5.12   性能测试计划 262
15.5.13   性能测试结果 263
15.6   将SPE集成为软件过程的一部分 263
15.6.1   瀑布模型 263
15.6.2   螺旋模型 264
15.6.3   统一过程中的SPE 264
15.7   小结 266
第16章   实现SPE过程 268
16.1   引言 268
16.2   工具 268
16.2.1   建模工具 269
16.2.2   开发工具 270
16.3   采用和使用SPE 271
16.3.1   经验 271
16.3.2   关键考虑因素 273
16.3.3   试点项目 275
16.3.4   成功采用和使用SPE的关键因素 275
16.4   SPE实现策略 277
16.4.1   组织方面的问题 277
16.4.2   谁支付SPE费用 278
16.4.3   费用 278
16.4.4   风险 279
16.5   项目成功的关键因素 279
16.6   SPE的未来 280
16.7   小结 281
附      录
附录A   UML符号 285
A.1   用例图 285
A.2   顺序图 286
A.2.1   基本顺序图 286
A.2.2   扩展的顺序图 286
A.3   部署图 288
A.4   构造型. 标签值和约束 288
A.4.1   构造型 288
A.4.2   标签值 288
A.4.3   约束 289
附录B   SPE建模符号 290
B.1   执行图符号 290
B.1.1   基本节点 290
B.1.2   同步节点 290
B.2   信息处理图符号 291
参考文献 292                  

猜您喜欢

读书导航