第1章 系统开发环境 1
目标 1
本章预览 1
1.1 什么是信息系统分析与设计 2
1.2 系统分析与设计:核心概念 2
1.3 系统 3
1.3.1 系统的定义及其组成部分 3
1.3.2 重要的系统概念 5
1.4 系统分析与设计的新式方法 7
1.4.1 系统分析员在系统开发中的作用 8
1.5 信息系统开发与系统开发生命周期 9
1.5.1 第1阶段:系统规划与选择 11
1.5.2 第2阶段:系统分析 11
1.5.3 第3阶段:系统设计 12
1.5.4 第4阶段:系统实现与运行 13
1.6 开发方法 14
1.6.1 原型法 14
1.6.2 计算机辅助软件工程(CASE)工具 15
1.6.3 联合应用设计(JAD) 16
1.6.4 快速应用开发(RAD) 16
1.6.5 参与式设计 17
1.6.6 敏捷方法 17
1.7 复习与练习 18
1.7.1 要点复习 18
1.7.2 关键术语检查点 19
1.7.3 复习题 20
1.7.4 问题和练习 20
1.7.5 讨论题 21
1.7.6 案例题 21
第2章 软件的来源 24
本章预览 24
2.1 引言 24
2.2 系统获取 25
2.2.1 外包 25
2.2.2 软件的来源 26
2.2.3 选择成品软件 30
2.3 复用 33
2.4 复习与练习 35
2.4.1 要点复习 35
2.4.2 关键术语检查点 36
2.4.3 复习题 36
2.4.4 问题和练习 37
2.4.5 实地练习 37
2.5 案例:皮特里电子 37
第3章 信息系统项目管理 40
本章预览 40
3.1 松谷家具公司的背景 40
3.2 管理信息系统项目 42
3.2.1 启动项目 46
3.2.2 规划项目 49
3.2.3 执行项目 55
3.2.4 结束项目 58
3.3 描绘和安排项目计划进度 59
3.3.1 描述项目计划 61
3.3.2 用PERT计算预期持续时间 61
3.3.3 构造松谷家具项目的甘特图和网络图 62
3.4 使用项目管理软件 65
3.4.1 设定项目开始日期 66
3.4.2 输入任务并指定任务关系 66
3.4.3 选择进度计划方法检查项目报告 67
3.5 复习与练习 68
3.5.1 要点复习 68
3.5.2 关键术语检查点 69
3.5.3 复习题 70
3.5.4 问题和练习 70
3.5.5 讨论题 73
3.5.6 案例题 74
3.6 案例:皮特里电子 76
第4章 系统规划与选择 78
本章预览 78
4.1 确认和选择项目 79
4.1.1 确认和选择信息系统开发项目的过程 79
4.1.2 交付成果和结果 82
4.2 启动和规划系统开发项目 82
4.2.1 启动和规划系统开发项目的过程 83
4.2.2 交付成果和结果 84
4.3 评估项目可行性 84
4.3.1 评估经济可行性 86
4.3.2 评估其他可行性关注 92
4.4 建立基线项目计划 93
4.5 评审基线项目计划 98
4.6 松谷家具WebStore:系统规划与选择 102
4.6.1 互联网基础 102
4.6.2 松谷家具WebStore 103
4.7 复习与练习 106
4.7.1 要点复习 106
4.7.2 关键术语检查点 107
4.7.3 复习题 108
4.7.4 问题和练习 108
4.7.5 讨论题 109
4.7.6 案例题 110
4.8 案例:皮特里电子 112
第5章 确定系统需求 115
本章预览 115
5.1 确定需求 116
5.1.1 确定需求的过程 116
5.1.2 交付成果和结果 117
5.1.3 需求结构化 117
5.2 确定需求的传统方法 118
5.2.1 访谈和倾听 118
5.2.2 直接观察用户 122
5.2.3 分析规程和其他文档 123
5.3 确定系统需求的新式方法 127
5.3.1 联合应用设计(JAD) 127
5.3.2 在需求确定中使用原型法 129
5.4 确定系统需求的激进方法 130
5.4.1 确定要重新设计的流程 131
5.4.2 颠覆性技术 132
5.5 松谷家具WebStore:确定系统需求 133
5.5.1 系统布局和导航特性 133
5.5.2 WebStore和网站管理系统能力 134
5.5.3 顾客和商品目录信息 134
5.5.4 系统原型演化 135
5.6 复习与练习 136
5.6.1 要点复习 136
5.6.2 关键术语检查点 137
5.6.3 复习题 137
5.6.4 问题和练习 138
5.6.5 讨论题 138
5.6.6 案例题 138
5.7 案例:皮特里电子 140
第6章 结构化系统需求:过程建模 142
本章预览 142
6.1 过程建模 143
6.1.1 系统过程建模 143
6.1.2 交付成果和结果 143
6.2 数据流图表示法 144
6.2.1 定义和符号 145
6.2.2 绘制DFD的一个例子 146
6.2.3 绘制数据流图的规则 149
6.2.4 DFD的分解 151
6.2.5 平衡DFD 153
6.3 在分析过程中使用数据流图 154
6.3.1 绘制DFD的指导原则 154
6.3.2 用DFD作分析工具 157
6.3.3 在业务流程重组中使用DFD 157
6.4 逻辑建模 159
6.4.1 用判定表对逻辑建模 159
6.5 松谷家具WebStore:过程建模 163
6.5.1 松谷家具WebStore的过程建模 163
6.6 复习与练习 165
6.6.1 要点复习 165
6.6.2 关键术语检查点 165
6.6.3 复习题 166
6.6.4 问题和练习 167
6.6.5 讨论题 171
6.6.6 案例题 171
6.7 案例:皮特里电子 173
第7章 结构化系统需求:概念数据建模 175
本章预览 175
7.1 概念数据建模 176
7.1.1 概念数据建模的过程 177
7.1.2 交付成果和结果 178
7.2 收集概念数据建模信息 180
7.3 实体关系建模简介 182
7.3.1 实体 183
7.3.2 属性 184
7.3.3 候选键和标识码 184
7.3.4 多值属性 186
7.3.5 关系 186
7.4 概念数据建模和E-R模型 187
7.4.1 关系的度 187
7.4.2 关系的基数 189
7.5 印第安纳汉堡的概念数据建模示例 192
7.6 PVFWebStore:概念数据建模 194
7.6.1 松谷家具WebStore的概念数据建模 194
7.7 选择最佳设计策略 198
7.7.1 选择最佳设计策略的过程 198
7.8 生成候选设计策略 199
7.9 为印第安纳汉堡的新库存控制系统制定设计策略 201
7.10 选择最适合的方案 203
7.11 复习与练习 204
7.11.1 要点复习 204
7.11.2 关键术语检查点 205
7.11.3 复习题 206
7.11.4 问题和练习 207
7.11.5 讨论题 210
7.11.6 案例题 210
7.12 案例:皮特里电子 214
第8章 设计人机界面 218
目标 218
本章预览 218
8.1 设计表单和报表 219
8.1.1 设计表单和报表的过程 219
8.1.2 交付成果和结果 222
8.1.3 格式化表单和报表 223
8.2 设计界面和对话 229
8.2.1 设计界面和对话的过程 230
8.2.2 交付成果和结果 230
8.2.3 设计界面 231
8.2.4 设计对话 240
8.3 松谷家具WebStore:设计人机界面 243
8.3.1 设计Web界面的一般原则 243
8.3.2 Web布局的一般原则 244
8.3.3 松谷家具的人机界面设计 245
8.3.4 带Cookie crumbs的菜单驱动导航 245
8.3.5 轻量图形 246
8.3.6 表单和数据完整性 247
8.3.7 基于模板的HTML 247
8.4 复习与练习 247
8.4.1 要点复习 247
8.4.2 关键术语检查点 248
8.4.3 复习题 249
8.4.4 问题和练习 250
8.4.5 讨论题 251
8.4.6 案例题 251
8.5 案例:皮特里电子 252
第9章 设计数据库 255
目标 255
本章预览 255
9.1 数据库设计 256
9.1.1 数据库设计的过程 256
9.1.2 交付成果和结果 257
9.2 关系数据库模型 262
9.2.1 良构关系 262
9.3 规范化 263
9.3.1 规范化规则 264
9.3.2 函数依赖和主键 264
9.3.3 第二范式 265
9.3.4 第三范式 265
9.4 将E-R图转化为关系 267
9.4.1 表示实体 267
9.4.2 表示关系 268
9.4.3 E-R图转化为关系小结 271
9.5 合并关系 271
9.5.1 合并关系的例子 272
9.5.2 视图集成问题 272
9.6 印第安纳汉堡的逻辑数据库设计 273
9.7 物理文件和数据库设计 276
9.8 设计字段 276
9.8.1 选择数据类型 277
9.8.2 控制数据完整性 278
9.9 设计物理表 280
9.9.1 排列表行 283
9.9.2 设计文件控制 287
9.10 印第安纳汉堡的物理数据库设计 287
9.11 松谷家具WebStore:设计数据库 289
9.11.1 为松谷家具WebStore设计数据库 289
9.12 复习与练习 291
9.12.1 要点复习 291
9.12.2 关键术语检查点 293
9.12.3 复习题 294
9.12.4 问题和练习 295
9.12.5 讨论题 297
9.12.6 案例题 297
9.13 案例:皮特里电子 298
第10章 系统实现与运行 301
目标 301
本章预览 301
10.1 系统实现与运行 302
10.1.1 编码、测试和安装的过程 303
10.1.2 编码、测试和安装的交付成果和结果 303
10.1.3 系统文档编制、用户培训和用户支持的过程 304
10.1.4 系统文档编制、用户培训和用户支持的交付成果和结果 304
10.1.5 维护信息系统的过程 305
10.1.6 维护信息系统的交付成果和结果 306
10.2 软件应用测试 306
10.2.1 7种不同的测试 307
10.2.2 测试过程 309
10.2.3 用户的验收测试 311
10.3 安装 312
10.3.1 计划安装 314
10.4 编制系统文档 314
10.4.1 用户文档 315
10.4.2 编写用户文档 317
10.5 用户培训和支持 317
10.5.1 培训信息系统用户 317
10.5.2 支持信息系统用户 319
10.5.3 分析员要考虑的支持问题 321
10.6 为什么实现有时会失败 322
10.7 项目结束 323
10.8 进行系统维护 324
10.8.1 维护的类型 324
10.8.2 维护的费用 325
10.8.3 度量维护有效性 326
10.8.4 控制维护请求 327
10.8.5 配置管理 328
10.8.6 自动化开发工具在维护中的作用 329
10.8.7 网站维护 329
10.9 松谷家具的信息系统维护 330
10.10 松谷家具WebStore:系统实现与运行 331
10.10.1 松谷家具WebStore系统的实现与运行 331
10.11 复习与练习 333
10.11.1 要点复习 333
10.11.2 关键术语检查点 335
10.11.3 复习题 337
10.11.4 问题和练习 337
10.11.5 讨论题 338
10.11.6 案例题 338
10.12 案例:皮特里电子 340
附录A 面向对象分析与设计 342
A.1 面向对象建模方法 342
A.2 用例建模 343
A.3 对象建模:类图 345
A.3.1 表示关联 347
A.4 表示泛化 349
A.5 表示聚合 350
A.6 动态建模:状态图 351
A.7 动态建模:序列图 352
A.8 用序列图设计用例 354
A.9 转入设计 355
A.10 复习与练习 357
A.10.1 要点复习 357
A.10.2 关键术语检查点 358
A.10.3 复习题 359
A.10.4 问题和练习 359
附录B 敏捷方法 361
B.1 敏捷方法的趋势 361
B.2 敏捷方法 362
B.3 极限编程 364
B.4 系统开发过程的核心 365
B.4.1 需求确定 365
B.4.2 设计规约 368
B.4.3 实现 369
B.5 我们所知的敏捷方法 369
B.6 复习与练习 370
B.6.1 要点复习 370
B.6.2 关键术语检查点 371
B.6.3 复习题 371
B.6.4 问题和练习 372