《高级软件工程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:方木云,刘辉编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302257202
  • 页数:391 页
图书介绍:本书介绍20世纪90年代中期以后软件工程领域新的理论和技术。

理论篇 3

第1章 软件工程新技术 3

1.1 新的构建技术 3

1.2 新的软件形态 4

1.3 新的开发工具 4

1.4 大规模的应用 5

第2章 软件体系结构 8

2.1 软件体系结构的形成 8

2.1.1 无体系结构阶段 8

2.1.2 萌芽阶段 8

2.1.3 初级阶段 9

2.1.4 高级阶段 9

2.2 软件体系结构的概念 10

2.3 软件体系结构的要素 10

2.3.1 构件 11

2.3.2 连接件 13

2.3.3 约束 14

2.4 软件体系结构的作用 15

2.5 软件体系结构描述语言 16

2.5.1 ACME 16

2.5.2 Wright 21

2.5.3 C2 24

2.5.4 UniCon 24

2.5.5 其他比较有影响的ADL 27

2.5.6 ADL分类与比较框架 33

2.5.7 ADL之间的比较 37

2.6 软件体系结构描述方法 40

2.7 软件体系结构风格 42

2.7.1 软件体系结构风格的概念 42

2.7.2 软件体系结构风格的研究内容 43

2.7.3 几种常见的软件体系结构风格 45

2.7.4 新的软件体系结构风格的提出 49

2.7.5 讨论软件体系结构风格时常见的问题 50

2.8 软件体系结构评估 50

2.8.1 软件体系结构评估的目的 50

2.8.2 软件体系结构评估的方法与工具 51

2.8.3 软件体系结构评估存在的问题 55

2.9 基于体系结构的软件开发过程 56

2.10 Windows体系结构介绍 62

2.10.1 Windows系统的发展历史 62

2.10.2 Windows系统的描述语言 68

2.10.3 Windows NT体系结构简介 68

思考题 73

第3章 中间件技术 74

3.1 中间件技术的形成 74

3.2 中间件的基本概念 75

3.2.1 中间件的定义 75

3.2.2 中间件的分类 75

3.2.3 中间件的新类型 78

3.2.4 中间件的作用 78

3.2.5 中间件面临的问题 78

3.3 典型中间件 79

3.3.1 消息中间件 79

3.3.2 交易中间件 83

3.3.3 对象中间件 88

3.3.4 应用服务器 92

3.3.5 安全中间件 95

3.4 基于中间件的应用开发 97

3.4.1 中间件基础技术 97

3.4.2 基于中间件的软件开发过程 99

3.5 中间件的现状 99

3.6 中间件的发展趋势 101

思考题 103

第4章 在线演化技术 104

4.1 软件演化的产生 104

4.2 软件演化理论 105

4.2.1 演化与维护的关系 105

4.2.2 软件演化的分类 106

4.3 构件运算的概念及其性质 106

4.3.1 构件与软件复用 106

4.3.2 构件软件系统的抽象描述 107

4.3.3 构件运算的性质 111

4.3.4 构件运算的完整性证明 113

4.4 软件演化方法 115

4.4.1 基于构件运算的软件演化 115

4.4.2 基于体系结构的软件演化 119

4.4.3 软件演化的核心算法 119

4.4.4 构件运算表达式的体系结构化 121

4.5 基于构件的软件在线演化实现 122

4.5.1 基于构件的演化信息的捕获方法 122

4.5.2 基于构件的软件在线演化框架实现 125

4.6 软件演化研究现状 132

思考题 133

第5章 网构软件 134

5.1 网构软件的产生 134

5.2 网构软件的特征 134

5.3 基于开放软件模型的网构软件模型 135

5.3.1 开放软件模型 135

5.3.2 网构软件模型 137

5.3.3 网构软件中间件 139

5.3.4 网构软件按需协同的实现模型 140

5.4 基于Agent的网构软件模型 140

5.4.1 开发协同模型框架的设计途径 141

5.4.2 基于移动Agent的协同程序设计技术 143

5.4.3 多模式交互机制及基于Agent中间件模型 146

5.4.4 面向体系结构的协同程序设计方法 149

5.5 以体系结构为中心的网构软件开发方法 151

5.5.1 ABC方法概览 154

5.5.2 基于特征的网构软件需求建模 156

5.5.3 基于体系结构的网构软件自适应性建模 160

5.6 网构软件的实现和测试方法的研究 163

5.6.1 网构软件 163

5.6.2 软件测试 165

5.7 网构软件带来的挑战 167

思考题 169

第6章 仿生学 170

6.1 仿生学的定义及意义 170

6.1.1 仿生学的定义 170

6.1.2 仿生学的意义 170

6.2 仿生学的现状及前景 171

6.2.1 仿生学的现状 171

6.2.2 仿生学的前景 174

6.3 仿生学的学科特征及研究方法 174

6.3.1 仿生学的学科特征 174

6.3.2 仿生学的研究方法 176

6.4 仿生学在计算机领域的应用 177

6.4.1 计算机结构的仿生特性 177

6.4.2 软件的仿生学生产方法 179

思考题 181

第7章 面向Agent的软件工程 182

7.1 面向Agent的技术 182

7.1.1 Agent的基本概念 183

7.1.2 Agent的体系架构 184

7.1.3 Agent的组织类型 185

7.1.4 Agent与组件的对比 186

7.1.5 语义复用的Agent和组件 188

7.2 面向Agent的软件工程 190

7.2.1 面向Agent的研究内容 190

7.2.2 面向Agent的开发过程 192

7.3 面向Agent的经典开发方法 194

7.3.1 Gaia方法 194

7.3.2 Tropos方法 195

7.3.3 MASE方法 196

7.4 按需定制的开发框架HDA 199

7.4.1 HDA的定义 200

7.4.2 HDA的使用规则 200

7.4.3 元模型 201

7.4.4 潜在的问题 202

7.4.5 Agent建模阶段 203

7.5 多Agent系统的基础设施 204

7.5.1 MAS的基础设施 205

7.5.2 基础设施的授权与协调 205

7.5.3 授权型基础设施JADE 206

7.5.4 MAS的协调基础设施 209

7.5.5 协调对MAS工程化的影响 210

7.5.6 MAS协调的行为理论框架 210

7.5.7 制品与协调基础设施 212

7.5.8 MAS工程中的协调平衡 212

思考题 213

第8章 面向服务架构技术 215

8.1 面向服务体系架构的产生 215

8.1.1 传统的软件体系结构 215

8.1.2 基于组件的软件体系结构 216

8.1.3 面向服务体系阶段 216

8.2 SOA的基本概念 218

8.2.1 SOA的定义 218

8.2.2 SOA的架构 219

8.2.3 SOA的优点 221

8.3 支持SOA的Web Service技术 222

8.3.1 SOA的基本原则 222

8.3.2 基于SOA的解决方案 223

8.3.3 Web Service技术 225

8.3.4 SOA架构的不足 227

8.4 适于SOA的建模方法 228

8.4.1 MDA 228

8.4.2 敏捷方法 229

8.4.3 SOA的五视图法 230

8.5 基于SOA架构的软件开发方法 231

8.5.1 面向服务的架构 231

8.5.2 基于SOA架构技术的优势 232

8.5.3 SOA应用的构建步骤 235

8.5.4 SOAD与传统软件开发的区别 235

8.6 基于SOA架构的ERP系统 236

8.6.1 SOA在ERP中的应用 236

8.6.2 基于SOA的ERP系统总体设计 237

8.6.3 基于SOA的ERP系统架构 238

思考题 239

第9章 柔性工作流 240

9.1 柔性工作流的概念 240

9.1.1 工作流的定义 240

9.1.2 工作流的要素 240

9.1.3 柔性工作流的概念 241

9.2 工作流管理系统的参考模型 242

9.2.1 工作流管理系统概述 242

9.2.2 工作流管理系统的参考模型 243

9.2.3 工作流管理系统的体系结构 244

9.3 柔性工作流的描述 247

9.3.1 柔性工作流模型的组成 247

9.3.2 柔性工作流模型的形式化描述 248

9.3.3 基于XML的组件式柔性工作流模型描述 248

9.4 柔性工作流的建模 249

9.4.1 基本模型单元 249

9.4.2 模型扩展属性 251

9.4.3 运行时的动态支持 252

9.4.4 工作流角色 253

9.4.5 柔性工作流引擎框架 254

9.5 柔性工作流的应用 255

9.5.1 柔性工作流应用的必要性 255

9.5.2 柔性工作流实现的技术 255

9.5.3 柔性化应用系统的特征 256

思考题 257

第10章 统一建模语言 258

10.1 UML概述 258

10.1.1 UML产生的背景 258

10.1.2 UML定义 259

10.2 UML的研究内容 260

10.2.1 UML语言的定义 260

10.2.2 UML的图形表示法 260

10.3 UML建模 264

10.3.1 UML建模过程 264

10.3.2 UML在RUP中的应用 265

10.4 基于UML的集成化CASE平台的模仿设计 265

10.4.1 CASE的起源和发展 266

10.4.2 集成CASE环境 268

10.4.3 参考模型——Rational Rose 269

10.4.4 模型检查 271

10.4.5 平台的设计原则 272

10.4.6 平台设计的关键技术 274

10.4.7 平台的功能设计 277

10.4.8 平台的具体实现 279

思考题 285

第11章 云计算 287

11.1 云计算的基本概念和主要特征 287

11.1.1 云计算的基本概念 287

11.1.2 云计算的主要特征 288

11.1.3 云计算的分类 290

11.1.4 云计算与网格计算 291

11.1.5 云计算的现状和发展趋势 294

11.2 云计算的原理与关键技术 296

11.2.1 云计算的原理 296

11.2.2 云计算的实现机制 297

11.2.3 Google云计算技术 298

11.3 云计算与移动Internet 320

11.3.1 移动Internet的发展概况 320

11.3.2 云计算助力移动Internet发展 321

11.3.3 移动Internet的“端”—“管”—“云” 322

11.4 云计算与物联网 324

11.4.1 物联网的定义 324

11.4.2 物联网的三大特征 325

11.4.3 物联网的前景 325

11.4.4 物联网的关键技术 326

11.4.5 物联网云计算 326

11.4.6 物联网云计算运营平台的构建 328

思考题 330

实验篇 333

第12章 用VB实现的UDP通信 333

12.1 网络开发基本概念 333

12.1.1 TCP/IP协议体系 333

12.1.2 网络编程术语 334

12.1.3 Socket介绍 335

12.2 Socket网络编程原理 335

12.2.1 面向连接的套接字的编程模式 335

12.2.2 无连接协议的套接字的编程模式 336

12.3 用VB实现的UDP编程方式 337

12.3.1 WinSock控件的使用 337

12.3.2 WinSock API的使用 338

12.3.3 总结比较 343

12.4 在VB下使用WinSock控件开发UDP聊天室 344

第13章 WindowsAPI函数 347

13.1 Windows API简介 347

13.2 API函数分组 347

13.3 传统类库、控件在软件开发中的不足 348

13.4 在VB中调用API函数 348

第14章 端口的禁用 350

14.1 端口的定义 350

14.2 端口的分类 350

14.3 常用的端口 351

14.4 常被黑客利用的端口 352

14.5 端口的禁用 353

第15章 用VB写DLL文件 359

15.1 DLL的简单介绍 359

15.2 用VB做一个DLL文件 359

15.3 对ActiveX DLL的测试 360

15.3.1 在VB上的测试 360

15.3.2 在VC上的测试 361

15.3.3 注意事项 362

第16章 用VB写OCX控件 363

16.1 OCX控件的介绍 363

16.2 用VB做一个OCX控件 363

16.3 对OCX控件的测试 364

16.3.1 在VB上的测试 364

16.3.2 在VC上的测试 365

16.3.3 注意事项 367

第17章 COM、COM+、DCOM 368

17.1 COM 368

17.1.1 COM组件的特点 368

17.1.2 COM接口和组件类型 369

17.1.3 COM组件的设计和应用 370

17.2 COM+ 376

17.2.1 COM+简介 376

17.2.2 COM+的特点 376

17.3 DCOM 377

17.3.1 DCOM的使用 377

17.3.2 DCOM的特点 378

17.3.3 DCOM的灵活配置和扩展机制 380

17.3.4 在应用间共享连接管理 382

17.3.5 DCOM的安全性设置 384

参考文献 390