
复杂网络是一种具有复杂和不规则连接模式的网络。在我们生活的方方面面随处可见,例如生物网络、分子网络、社交网络、交通网络、电网、通信网络以及因特网等都属于复杂网络的范畴,因此研究复杂网络具有十分重要的意义。
出版者的话
译者序
前言
致谢
第一部分 系统分析基础
第1章 系统、角色和开发方法 2
1.1 系统分析与设计的必要性 2
1.2 系统分析员的角色 3
1.2.1 系统分析员作为顾问 3
1.2.2 系统分析员作为支持专家 4
1.2.3 系统分析员作为变更代理 4
1.2.4 系统分析员的品质 4
1.3 系统开发生命期 5
1.3.1 标识问题、机会和目标 5
1.3.2 确定人的信息需求 6
1.3.3 分析系统需求 6
1.3.4 设计推荐的系统 7
1.3.5 软件开发和编档 7
1.3.6 系统测试和维护 8
1.3.7 系统实现和评估 8
1.3.8 维护的影响 8
1.3.9 使用CASE工具 9
1.4 敏捷方法 10
1.5 面向对象系统分析与设计 12
1.5.1 面向对象与SDLC的相似性 12
1.6 选择使用哪种系统开发方法 14
1.7 开发开源软件 14
1.7.1 组织为什么要参与开源社区 15
1.7.2 分析员在开源软件中的作用 15
1.8 小结 16
复习题 17
参考资料 17
第2章 了解组织系统及组织系统
建模 18
2.1 组织作为系统 18
2.1.1 系统的相互关联和相互依赖 18
2.1.2 虚拟组织和虚拟团队 20
2.1.3 采取系统的观点 20
2.1.4 企业系统:视组织为系统 22
2.2 系统的图形化描述方法 22
2.2.1 系统和上下文级数据流图 22
2.2.2 系统和实体–关系模型 23
2.3 用例建模 27
2.3.1 用例符号 28
2.3.2 用例关系 29
2.3.3 开发系统的范围 30
2.3.4 开发用例图 30
2.3.5 开发用例场景 31
2.3.6 用例级别 32
2.3.7 创建用例描述 35
2.3.8 为什么用例图是有益的 36
2.4 管理的层次 36
2.4.1 对信息系统开发的意义 38
2.4.2 协同设计 38
2.5 组织文化 39
2.5.1 技术对文化的影响 39
2.6 小结 40
复习题 41
问题 42
小组项目 43
参考资料 43
第3章 项目管理 45
3.1 项目启动 45
3.1.1 组织内的问题 45
3.1.2 定义问题 46
3.1.3 选择项目 50
3.2 确定可行性 50
3.2.1 判断可能性 51
3.2.2 估计工作负荷 52
3.3 确定硬件和软件需求 52
3.3.1 盘点计算机硬件 53
3.3.2 评估计算机硬件采购 54
3.3.3 租用云服务的时间和空间 54
3.3.4 评估厂商对计算机硬件的支持 56
3.3.5 理解“自带设备”方案 56
3.3.6 创建定制软件 57
3.3.7 购买COTS软件 57
3.3.8 使用SaaS提供商的服务 59
3.3.9 评估厂商对软件的支持和SaaS 59
3.4 成本与效益的识别、预测和比较 60
3.4.1 预测 60
3.4.2 识别效益和成本 62
3.4.3 成本效益比较 63
3.5 时间和活动的管理 64
3.5.1 工作分解结构 64
3.5.2 时间估计技术 65
3.6 项目进度安排 66
3.6.1 使用甘特图进行项目调度 68
3.6.2 使用PERT图 68
3.7 项目控制 70
3.7.1 估计成本和准备预算 71
3.7.2 风险管理 72
3.7.3 使用加速法管理时间 73
3.7.4 使用挣值管理法控制成本 75
3.8 管理项目团队 78
3.8.1 组建团队 78
3.8.2 团队管理的沟通策略 78
3.8.3 设置项目生产率目标 79
3.8.4 激励项目团队成员 80
3.8.5 管理电子商务项目 80
3.8.6 制定项目章程 81
3.9 系统建议 81
3.9.1 系统建议包含的内容 82
3.9.2 使用插图进行有效沟通 83
3.10 小结 86
复习题 87
问题 88
小组项目 93
参考资料 93
第二部分 信息需求分析
第4章 信息收集:交互式方法 96
4.1 面谈 96
4.1.1 面谈准备的5个步骤 97
4.1.2 问题类型 98
4.1.3 按逻辑顺序安排问题 101
4.1.4 书写面谈报告 103
4.2 听故事 103
4.2.1 故事由要素构成 104
4.2.2 讲故事的原因 105
4.3 联合应用设计 105
4.3.1 支持使用JAD的条件 105
4.3.2 涉及的人 106
4.3.3 召开JAD会议的地点 106
4.3.4 完成项目活动的结构化分析 107
4.3.5 用JAD代替传统面谈的潜在优点 107
4.3.6 使用JAD的潜在缺点 108
4.4 使用问卷调查表 108
4.4.1 规划问卷调查表的使用 109
4.4.2 写下问题 109
4.4.3 设计问卷调查表 114
4.4.4 整理问卷调查表 115
4.5 小结 117
复习题 118
问题 119
小组项目 122
参考资料 123
第5章 信息收集:非干扰性方法 125
5.1 采样 125
5.1.1 采样的必要性 125
5.1.2 采样设计 126
5.1.3 决定采样规模 127
5.2 定量文档分析 130
5.2.1 系统分析定量文档 130
5.3 定性文档分析 134
5.3.1 系统分析定性文档 134
5.4 使用文本分析功能 136
5.5 观察决策者的行为 136
5.5.1 观察典型的经理决策活动 136
5.6 观察物理环境 138
5.6.1 结构化环境观察(STROBE) 138
5.6.2 应用STROBE方法 139
5.7 小结 141
复习题 141
问题 142
小组项目 144
参考资料 144
第6章 敏捷建模、原型化方法和Scrum 146
6.1 原型化方法 146
6.1.1 原型的种类 146
6.1.2 用户在原型化方法中的角色 148
6.2 敏捷建模 149
6.2.1 敏捷建模的价值和原则 149
6.2.2 敏捷建模的活动、资源和实践 152
6.2.3 敏捷开发过程 155
6.3 Scrum 158
6.3.1 Scrum中的角色 159
6.3.2 产品待办列表 160
6.3.3 Sprint周期 161
6.3.4 Scrum其他独有的特征 162
6.3.5 看板 163
6.3.6 Scrum的优点和缺点 165
6.4 DevOps:app开发的文化转变 165
6.5 敏捷建模与结构化方法的比较 166
6.5.1 从敏捷建模中吸取的经验教训 167
6.5.2 改进知识方面的工作效率:SDLC与敏捷 168
6.5.3 组织革新固有的风险 171
6.6 小结 173
复习题 174
问题 174
小组项目 176
参考资料 176
第三部分 分析过程
第7章 使用数据流图 180
7.1 需求确定的数据流方法 180
7.1.1 数据流图的使用规范 180
7.2 开发数据流图 182
7.2.1 创建上下文图 182
7.2.2 画0层图(上下文图的下一层) 183
7.2.3 创建子图(更详细的图层) 184
7.2.4 检查数据流图中的错误 185
7.3 逻辑数据流图和物理数据流图 187
7.3.1 开发逻辑数据流图 189
7.3.2 开发物理数据流图 189
7.3.3 分割数据流图 193
7.4 数据流图实例 194
7.4.1 开发业务活动列表 194
7.4.2 创建上下文级数据流图 195
7.4.3 绘制0层图 195
7.4.4 创建子图 196
7.4.5 根据逻辑DFD创建物理数据流图 197
7.4.6 分割物理DFD 198
7.5 分割Web站点 199
7.6 使用数据流图进行沟通 201
7.7 小结 203
复习题 203
问题 204
小组项目 206
参考资料 206
第8章 使用数据字典分析系统 207
8.1 数据字典 207
8.1.1 了解数据字典的必要性 207
8.2 数据存储库 208
8.2.1 定义数据流 209
8.2.2 描述数据结构 210
8.2.3 逻辑数据结构和物理数据结构 211
8.2.4 数据元素 212
8.2.5 数据存储 215
8.3 创建数据字典 217
8.3.1 分析输入和输出 218
8.3.2 开发数据存储 219
8.4 使用数据字典 220
8.4.1 使用数据字典创建XML 222
8.4.2 XML文档类型定义 224
8.4.3 XML 模式 225
8.5 小结 225
复习题 226
问题 227
小组项目 229
参考资料 229
第9章 过程规范和结构化决策 230
9.1 过程规范概述 231
9.1.1 过程规范格式 231
9.2 结构化英语 233
9.2.1 编写结构化英语 234
9.2.2 数据字典和过程规范 235
9.3 决策表 237
9.3.1 开发决策表 238
9.3.2 核验完备性和正确性 241
9.4 决策树 242
9.4.1 画决策树 242
9.5 选择一种结构化决策分析技术 243
9.6 小结 244
复习题 245
问题 245
小组项目 247
参考资料 247
第10章 基于UML的面向对象系统分析与设计 248
10.1 面向对象概念 248
10.1.1 对象 248
10.1.2 类 248
10.1.3 继承 249
10.2 CRC卡片和对象 251
10.2.1 CRC会话期间的交互 251
10.3 统一建模语言概念和图 253
10.4 用例建模 255
10.5 活动图 257
10.5.1 创建活动图 259
10.5.2 活动图的存储库条目 261
10.6 顺序图和通信图 261
10.6.1 顺序图 261
10.6.2 通信图 263
10.7 类图 263
10.7.1 方法重载 265
10.7.2 类的类型 265
10.7.3 定义消息和方法 266
10.8 增强顺序图 266
10.8.1 Web类实例 267
10.8.2 顺序图中的表示层、业务层和持久层 269
10.9 增强类图 269
10.9.1 关系 270
10.9.2 泛型/特型图 273
10.10 状态图 276
10.10.1 状态转移实例 277
10.11 包和其他UML制品 278
10.12 UML实践 281
10.13 使用UML进行建模的重要性 283
10.14 小结 284
复习题 284
问题 285
参考资料 286
第四部分 设计基础
第11章 设计有效的输出 288
11.1 输出设计的目标 288
11.1.1 设计满足预定目标的输出 288
11.1.2 设计适合用户的输出 289
11.1.3 交付合适的输出数量 289
11.1.4 确保输出的必要性 289
11.1.5 按时提供输出 289
11.1.6 选用正确的输出方法 289
11.2 将输出内容与输出方式联系起来 290
11.2.1 输出技术 290
11.2.2 选择输出技术所要考虑的因素 291
11.3 认识到输出偏差对用户的影响 296
11.3.1 识别输出使用方式所带来的偏差 296
11.3.2 在设计输出时应避免偏差 297
11.4 设计打印输出 298
11.5 设计屏幕输出 299
11.5.1 屏幕设计指导原则 299
11.5.2 在屏幕设计中使用图形输出 301
11.5.3 仪表板 301
11.5.4 信息图 303
11.6 设计网站 304
11.6.1 响应式Web设计 304
11.6.2 扁平化Web设计 305
11.6.3 网站设计的一般准则 305
11.6.4 网站设计的特定准则 307
11.7 Web 2.0技术 312
11.8 社交媒体设计 312
11.8.1 社交媒体设计准则 313
11.9 设计智能电话和平板电脑的app 314
11.9.1 建立开发者账号 315
11.9.2 选择开发过程 315
11.9.3 原创性 315
11.9.4 决定如何给app定价 315
11.9.5 遵守设计准则 316
11.9.6 设计图标 316
11.9.7 为app选择合适的名称 317
11.9.8 设计应适用于各种设备 317
11.9.9 设计app的输出 317
11.9.10 针对不同的方向再次设计输出 317
11.9.11 分享设计原型 318
11.9.12 app的逻辑设计 318
11.9.13 移动设计 318
11.9.14 创建使用手势的用户界面 318
11.9.15 保护知识产权 318
11.9.16 销售app 319
11.10 输出生产和XML 319
11.10.1 Ajax 321
11.11 小结 321
复习题 322
问题 323
小组项目 326
参考资料 327
第12章 设计有效的输入 328
12.1 良好的表单设计 328
12.1.1 使得表单易于填写 329
12.1.2 达到预定的目的 332
12.1.3 确保准确填写表单 332
12.1.4 设计的表单要有吸引力 332
12.1.5 控制业务表单 333
12.2 良好的屏幕和Web窗体设计 333
12.2.1 保持屏幕简洁 333
12.2.2 保持屏幕的一致性 334
12.2.3 方便用户在屏幕间移动 334
12.2.4 设计有吸引力且令人愉快的屏幕 334
12.2.5 在屏幕设计中使用图标 335
12.2.6 图形用户界面设计 336
12.2.7 窗体控件和值 338
12.2.8 隐藏字段 339
12.2.9 事件响应图 339
12.2.10 动态Web页 340
12.2.11 三维Web页 341
12.2.12 Ajax 342
12.2.13 在屏幕设计中使用色彩 343
12.3 网站设计 343
12.4 小结 345
复习题 346
问题 347
小组项目 350
参考资料 350
第13章 数据库设计 352
13.1 数据库 353
13.2 数据概念 354
13.2.1 现实、数据和元数据 354
13.2.2 文件 359
13.2.3 关系型数据库 360
13.3 规范化 362
13.3.1 规范化的3个步骤 362
13.3.2 规范化实例 363
13.3.3 使用实体–关系图确定记录键 372
13.3.4 一对多关系 372
13.3.5 多对多关系 372
13.4 主文件/数据库关系设计准则 373
13.4.1 完整性约束 374
13.4.2 异常 375
13.5 使用数据库 375
13.5.1 检索和显示数据的步骤 375
13.6 反规范化 376
13.7 数据仓库 378
13.7.1 联机分析处理 379
13.7.2 数据挖掘 379
13.8 商业智能 382
13.9 数据分析 382
13.10 区块链 383
13.11 小结 385
复习题 386
问题 387
小组项目 388
参考资料 389
第14章 人机交互与UX设计 390
14.1 理解人机交互 390
14.1.1 相互配合怎样影响绩效和幸福感 390
14.2 可用性 391
14.2.1 设计个体用户的认知风格 392
14.2.2 HCI设计中的物理因素 393
14.2.3 考虑人的缺陷、残障而加以设计 393
14.2.4 实施良好的HCI实践 394
14.3 用户界面的类型 395
14.3.1 自然语言界面 396
14.3.2 问答式界面 396
14.3.3 菜单 396
14.3.4 填充式窗体界面 397
14.3.5 选择和评估界面 397
14.4 UX设计 397
14.4.1 推动出色的UX设计的5个行为 399
14.4.2 UX设计中应避免的5个行为 400
14.4.3 UX设计准则:电子商务示例 400
14.4.4 UX设计的益处 401
14.5 设计智能手机和平板电脑的界面 402
14.5.1 手势 402
14.5.2 警报、通知和查询 403
14.5.3 徽章 403
14.6 智能个人助理的设计 404
14.7 虚拟现实和增强现实设计 405
14.8 对话设计的指导原则 405
14.8.1 有意义的交流 406
14.8.2 最小化用户操作 406
14.8.3 操作的标准化和一致性 407
14.9 用户反馈 408
14.9.1 反馈的类型 408
14.9.2 在系统设计中包含反馈 410
14.10 电子商务的特殊设计因素 410
14.10.1 获得电子商务网站客户的反馈 410
14.10.2 轻松导航电子商务网站 412
14.11 Mashup 413
14.12 查询设计 414
14.12.1 查询类型 414
14.12.2 查询方法 417
14.13 小结 419
复习题 419
问题 421
小组项目 422
参考资料 423
第五部分 质量保证和实现
第15章 设计准确的数据输入规范 426
15.1 有效编码 426
15.1.1 记录某些事物 426
15.1.2 分类信息 428
15.1.3 隐藏信息 429
15.1.4 揭示信息 430
15.1.5 请求相应的处理 432
15.1.6 编码的一般指导原则 432
15.2 有效及高效的数据获取 436
15.2.1 决定要获取什么样的数据 436
15.2.2 让计算机完成其余的事情 437
15.2.3 避免瓶颈和额外步骤 437
15.2.4 从一个好的表单开始 437
15.2.5 选择一种数据输入方法 438
15.3 通过输入验证保证数据的质量 442
15.3.1 输入事务有效性验证 443
15.3.2 输入数据有效性验证 443
15.3.3 验证过程 445
15.4 电子商务环境中的数据准确性优势 446
15.4.1 客户自己键入数据 447
15.4.2 保存数据以备后用 447
15.4.3 通过订单履行流程使用数据 447
15.4.4 向客户提供反馈信息 447
15.5 小结 448
复习题 449
问题 450
小组项目 452
参考资料 452
第16章 质量保证和实施 454
16.1 全面质量管理方法 454
16.1.1 六西格玛 454
16.1.2 全面质量管理的责任 455
16.1.3 结构预演 456
16.1.4 自顶向下的系统设计与开发 457
16.1.5 使用结构图设计模块化系统 458
16.1.6 面向服务的架构 459
16.2 编档方法 461
16.2.1 程序操作手册 461
16.2.2 民间故事法 461
16.2.3 选择一种设计和编档技术 463
16.3 测试、维护和审计 464
16.3.1 测试过程 464
16.3.2 维护实践 466
16.3.3 审计 467
16.4 实现分布式系统 467
16.4.1 客户/服务器技术 467
16.4.2 云计算 469
16.4.3 网络建模 471
16.5 用户培训 474
16.5.1 培训策略 474
16.5.2 培训的指导原则 475
16.6 转换到新系统 477
16.6.1 转换策略 477
16.6.2 转换时应考虑的其他因素 478
16.6.3 组织隐喻及其与成功的系统的关系 478
16.7 传统系统和基于Web的系统的安全考虑 479
16.7.1 物理安全性 479
16.7.2 逻辑安全性 480
16.7.3 行为安全性 480
16.7.4 电子商务的特别安全注意事项 481
16.7.5 电子商务的隐私注意事项 481
16.7.6 灾害恢复规划 482
16.8 评估 483
16.8.1 评估方法 483
16.8.2 信息系统效用方法 484
16.9 评估公司的Web站点 485
16.10 小结 487
复习题 488
问题 489
小组项目 491
参考资料 491
术语表 492
缩略语 501
索引 503