第1章 移动计算简介 2
1.1 引言 2
1.1.1 移动计算简史 2
第一部分 导论 2
1.1.2 无线移动和移动无线的区别 4
1.2 移动计算的要素 5
1.2.1 定位 6
1.2.2 服务质量 7
1.2.3 受限的存储设备和CPU 8
1.2.5 各式各样的用户界面 9
1.2.4 受限的电源供应 9
1.2.6 跨平台 11
1.2.7 主动事务 11
1.3 移动用户的状态 13
1.3.1 位置可变性 14
1.3.2 缺乏专注性 14
1.3.3 即时响应性 14
1.3.4 任务突变性 15
1.3.5 随时随地性 15
1.4 移动应用软件的体系结构 15
1.5 本书结构 16
第2章 移动开发框架和工具概述 18
2.1 引言 18
2.2 完全集中式的框架和工具 19
2.3 N-Tier客户端服务器框架和工具 20
2.3.1 移动操作系统和虚拟机 22
2.3.2 特有硬件工具与框架 22
2.4 Java 23
2.4.1 J2ME 23
2.4.2 CDC 31
2.4.3 Java智能卡 32
2.4.4 JINI 33
2.4.5 基于Java的点对点协议 34
2.4.6 Java将何去何从 34
2.5 BREW 35
2.5.1 BREW SDK简介 35
2.5.2 开发一个简单的BREW应用 36
2.5.3 Hello BREW 38
2.5.4 BREW及其相关技术的特点 39
2.6 Windows CE 41
2.6.1 Windows CE中的Visual Basic 42
2.6.2 Windows CE中的嵌入式Visual C++ 43
2.6.3 Windows CE平台上的数据库 44
2.6.4 Windows CE和Web服务 46
2.6.5 Windows CE对移动要素的处理 46
2.6.6 Microsoft Smart Phone 47
2.7 WAP 47
2.7.1 WAP体系结构 48
2.7.2 WAP用户界面 49
2.7.3 WAP代理和WAP网关 50
2.7.4 多媒体信息服务 51
2.7.5 WAP推送 51
2.7.7 WAP对移动要素的处理 52
2.7.6 安全性 52
2.8 Symbian EPOC 53
2.9 发布框架 54
2.9.1 Cocoon 55
2.9.2 IBM无线代码转换发布工具 65
2.10 其他工具 67
2.10.1 异步消息系统 67
2.10.2 UML工具 68
2.11 如何利用这些工具 69
3.1.1 XML简史 71
第3章 XML:移动计算的文档与元数据格式 71
3.1 引言 71
3.1.2 XML和移动应用 72
3.1.3 DOM语法分析 73
3.1.4 SAX语法分析 74
3.1.5 用XSLT转换XML 75
3.2 XML Web服务 76
3.2.1 SOAP 77
3.2.2 WSDL 78
3.2.3 Web服务与移动应用 80
3.3.1 XML模式 82
3.3 应用于移动计算的核心XML技术 82
3.3.2 与移动应用相关的基于XML的用户界面技术 84
3.3.3 CCXML 85
3.3.4 XML管道 85
3.3.5 WBXML 87
3.3.6 SSML 88
3.3.7 RDF 88
3.3.8 RDF模式 91
3.3.9 UML与RDF 91
3.3.10 CC/PP 93
3.3.11 用户Agent配置声明 99
3.4 XML和UML 101
3.4.1 XML模式和UML 103
3.5 使用XML 108
第4章 UML简介 109
4.1 引言 109
4.1.1 为什么需要UML 111
4.1.2 理解UML 111
4.1.3 构建UML块 112
4.2.1 用例图 114
4.2 用户视图 114
4.2.2 用例的使用 115
4.3 结构化视图 118
4.3.1 定义类 118
4.3.2 对象图 123
4.4 行为视图 125
4.4.1 交互图 125
4.4.2 顺序图 126
4.4.3 协作图 129
4.5 实现视图:构件图 144
4.5.2 部署图 146
4.5.1 应用构造型 146
4.6 小结 147
第二部分 基于UML设备独立多通道用户界面的开发 150
第5章 通用用户界面的开发 150
5.1 引言 150
5.2 用户界面的开发 150
5.2.1 人性因素 151
5.2.2 基于PC的固定应用软件开发中的可用性、人性因素以及其他因素 152
5.2.3 移动应用软件中的额外因素 153
5.3 创建通用用户界面 156
5.3.1 通用用户界面的绑定和特殊化 157
5.3.2 用户界面中的元素 158
5.3.3 场景 175
5.3.4 用户界面的组件 178
5.3.5 用户界面的组件管理 180
5.4 通用用户界面组件的UML建模 182
5.4.1 通用用户界面的领域建模 182
5.5 XForms 184
5.5.1 什么是XForms 185
5.5.2 XForms处理模型 186
5.5.3 XForms用户界面 187
5.5.4 XForms中的事件 197
5.6 小结 202
第6章 移动图形用户界面的开发 204
6.1 引言 204
6.1.1 技术现状:PAC,MVC及其他 204
6.1.2 PAC-TG模式 209
6.1.3 从通用用户界面到图形用户界面的单信道特化 213
6.1.4 服务器端的GUI 215
6.1.5 移动设备的GUI 218
6.1.6 分布式GUI 218
6.2.1 无线应用层协议 219
6.2 在WAP,J2ME,BREW和Microsoft平台上深入探讨移动GUI 219
6.2.2 J2ME的GUI 235
6.2.3 从通用用户界面到具体的图形用户界面的转换 238
6.2.4 用UML活动图开发GUI 239
6.2.5 移动程序的UML扩展 246
6.3 小结 252
第7章 语音用户界面及移动应用 254
7.1 引言 254
7.2 音质 255
7.2.1 振幅 255
7.2.2 音频和音调 255
7.2.3 语义和语境 256
7.2.4 话语 257
7.2.5 语言 257
7.2.6 话音依赖性 257
7.2.7 国际化、语言和方言 257
7.2.8 地方性 258
7.2.9 其他质量 258
7.3 语音录入 258
7.4 语音识别 259
7.4.1 语法 261
7.4.2 构建VUI界面 271
7.4.3 为移动应用设计基于语音识别的VUI 299
7.5 文本到语音的技术:书面语言转换为口语语言 304
7.5.1 连续语音合成 304
7.5.2 纯语音合成 305
7.5.3 语音合成语法和工具 305
7.5.4 语音端口 310
7.6 小结 310
第8章 多信道与多通道用户界面 312
8.1 引言 312
8.1.1 多通道,用户体验及场景的应用 313
8.1.2 多通道、多信道的网络通信及其网络结构 314
8.1.3 多通道的类型 315
8.1.4 以可用性为中心的多通道使用方法 316
8.2 基于UML的多通道建模及应用 318
8.2.1 使用基本的UML图表来描述多媒体应用 320
8.3 多通道的内容 321
8.3.1 X+V 323
8.3.2 M3L 323
8.3.3 MML 323
8.3.4 EMMA 324
8.3.5 MPML 326
8.3.6 MMIL 328
8.3.7 InkML 329
8.3.8 CUIML 330
8.3.9 使用置标语言实现多通道的交付 330
8.3.10 移动设备的视频发送 334
8.3.11 Cocoon 335
8.3.12 同步问题 337
8.4 多通道发布系统的软件和系统结构 340
8.5 国际化和本地化 346
8.6 多通道的展开定义 347
9.1.1 Agent技术基础 350
9.1 引言 350
第9章 移动Agent和对等结构 350
第三部分 移动应用开发的补充要素 350
9.1.2 移动Agent和客户服务器模型的混合体 352
9.1.3 移动Agent的关注点分离 352
9.2 移动计算中的移动Agent 354
9.2.1 移动Agent广泛应用的障碍 356
9.2.2 MASIF 357
9.2.3 FIPA 359
9.3 移动Agent的UML扩展 361
9.3.1 AUML 362
9.3.2 移动Agent的UML扩展 363
9.3.3 移动应用中的移动Agent UML扩展 364
9.4 移动Agent应用及其实现工具 368
9.4.1 Java和移动Agent 369
9.5 利用移动Agent解决移动应用开发中的问题 380
9.5.1 移动Agent及其场景 380
9.5.2 移动Agent及其定位感知 381
9.5.3 利用移动Agent创建用户界面 381
9.5.4 移动Agent与QoS 382
9.5.5 利用移动Agent充当代理 383
9.5.6 移动Agent和与移动计算相关的性能问题 383
9.6 基于Agent的软件技术 384
9.5.7 移动Agent及其设备适应性 384
9.7 移动计算中对等网的应用 385
9.7.1 基础知识 385
9.7.2 JXTA 386
9.8 展望未来 387
第10章 无线连接和移动应用 388
10.1 引言 388
10.1.1 调制技术 389
10.1.2 传输技术 390
10.2 服务质量 391
10.2.1 QoS的UML建模 392
10.3 无线网络技术纵览 394
10.3.1 短程无线通信技术 394
10.3.2 远程无线通信技术 399
10.3.3 无线网络的UML建模 404
10.4 移动IP 409
10.5 SMS 410
10.6 小结 412
第11章 移动数据的同步与复制 413
11.1 引言 413
11.2 复制和同步的分类 414
11.3 用于移动应用程序的数据复制与同步 415
11.3.2 解决移动同步与复制问题的方法 417
11.3.1 移动应用程序基础结构中同步与复制涉及的可扩展性问题 417
11.3.3 常用移动平台上的同步 418
11.4 SyncML 419
11.4.1 Sync4J 424
11.4.2 蓝牙同步规范 425
11.5 WebDAV 425
11.6 移动Agent,复制与同步 426
11.7 使用UML来表示数据同步与复制模式 426
12.2 定位信息的数据采集 428
第12章 移动性和定位业务 428
12.1 引言 428
12.2.1 基于GPS的解决方案 430
12.2.2 非GPS定位方案 431
12.3 GIS 433
12.3.1 GIS系统内部结构 434
12.3.2 GIS的移动应用 434
12.3.3 建立移动应用和GIS系统的接口 434
12.4 位置信息建模 435
12.4.1 GML 436
12.4.2 NVML 438
12.4.3 MPP 439
12.4.4 SLP和SLoP 440
12.4.5 定位互操作论坛 441
12.5 定位业务应用 442
12.5.1 提供定位业务的系统结构 443
12.6 基于定位业务的移动应用 445
12.6.1 编程访问GPS设备 446
12.6.2 基于位置的J2ME应用程序 447
12.6.3 移动应用、位置场景和用户界面 449
12.7.2 使用UML建模相对地理位置和绝对地理位置 451
12.7.1 使用类图表示位置信息 451
12.7 用UML表示位置 451
12.7.3 用UML建模运动 452
12.8 位置信息的安全性和保密性 454
12.9 本地化和国际化 455
12.10 基于位置研究的最新进展 456
第13章 主动事务 457
13.1 引言 457
13.2 主动计算与无线基础设施 458
13.2.1 WAP推送 460
13.2.3 会话启动协议 462
13.2.2 移动IP和推送 462
13.3 建立主动式系统的实际问题 464
第14章 移动安全性 465
14.1 引言 465
14.1.1 移动安全问题的分类 465
14.2 无线网络的安全性 469
14.2.1 蓝牙安全性 469
14.2.2 802.11安全性 470
14.2.3 远程无线网络技术的安全性 471
14.3 安全性和自组网技术 472
14.5 安全性:移动Agent的未解决问题 473
14.4 定位信息、安全性和保密性 473
14.6 保密性和安全性的区别 474
14.7 用UML建模安全性 474
第四部分 项目集成 478
第15章 移动开发过程 478
15.1 引言 478
15.2 回顾移动应用的各个要素 478
15.3 移动程序Wisdom的开发方法 478
15.4 基于UML的开发周期 479
15.4.1 移动用例 479
15.4.2 移动开发过程 485
15.5 小结 487
第16章 移动应用的体系结构、设计和技术选择 488
16.1 引言 488
16.1.1 移动计算体系结构 489
16.1.2 完全集中式应用体系结构 489
16.1.3 客户服务器体系结构 490
16.1.4 N层体系结构 491
16.1.5 对等结构 494
16.1.6 移动Agent体系结构 495
16.2 体系结构的实际关注点 496
16.3 移动应用程序的体系结构模式 497
16.4 小结 497
第17章 移动应用开发中的难点 498
17.1 引言 498
17.2 语音用户界面的问题 498
17.3 多模应用程序的问题 498
17.4 建立本地应用程序遇到的问题 499
17.5 电能的使用 499
17.6 小结 499
18.1.1 移动基础设施测试 500
18.1 引言 500
第18章 移动应用程序测试 500
18.1.2 编码标准 502
18.1.3 单元测试 502
18.1.4 黑盒测试 503
18.1.5 白盒测试 503
18.1.6 回归测试 504
18.1.7 专用移动应用程序的测试 504
18.2 开发前的用例有效性测试 505
18.3.1 移动用户界面测试 506
18.3.2 多通道用户界面测试 506
18.3 移动要素对软件测试的影响 506
18.3.3 可用性测试 507
18.4 压力测试和可测量性的问题 508
18.5 基于位置的功能测试 508
第19章 实例研究 509
19.1 引言 509
19.2 体系结构的需求驱动 509
19.3 详细设计 513
19.4 实现 514
19.5 小结 517
参考文献 518