第一章 概论 1
第一节 图书馆自动化的基本概念 1
1.1.1 图书馆现代化的定义及内容 1
1.1.2 图书馆自动化的定义和图书馆现代化的关系 2
1.1.3 图书馆自动化系统及其体系构成 2
第二节 图书馆自动化是图书情报事业发展的历史必然 4
1.2.1 社会信息化和图书馆自动化的关系 4
1.2.2 国外图书馆自动化的发展情况 10
第三节 我国图书馆自动化的发展情况 13
1.3.1 影响我国图书馆自动化发展的主要因素 13
1.3.2 我国图书馆自动化发展的几个阶段 14
1.3.3 做自觉的图书馆自动化建设者 28
第四节 系统科学及其对图书情报工作的意义 30
1.4.1 系统和系统科学 30
1.4.2 系统工程 36
1.4.3 系统科学对图书馆工作的重大意义 40
第五节 软件工程 43
1.5.1 软件危机与软件工程 43
1.5.2 软件生存(命)周期 46
1.5.3 软件定义 47
第六节 标准化和有关标准 49
1.6.1 标准化在建设图书馆自动化系统中的重要意义 49
1.6.2 软件工程的主要标准 51
1.6.3 其他有关标准 52
第二章 图书馆自动化系统分析 55
第一节 概说 55
2.1.1 总的要求 57
2.1.2 结构化分析方法 57
2.1.3 系统分析人员 60
第二节 可行性研究与计划 61
2.2.1 任务 61
2.2.2 实施步骤 63
2.2.3 实施要求 66
2.2.4 完成标志 74
第三节 需求分析 79
2.3.1 需求分析的任务 79
2.3.2 需求分析的步骤 80
2.3.3 实施要求 82
2.3.4 完成标志 83
第四节 数据流图和系统功能 87
2.4.1 基本思想 87
2.4.2 基本成分及符号规定 87
2.4.3 图书馆自动化系统数据流图 89
2.4.4 构造数据流图注意事项 92
第五节 数据字典 100
2.5.1 数据字典和数据流图的关系 100
2.5.2 数据字典的条目类型 100
2.5.3 条目组成、格式和使用符号 101
2.5.4 字典的实现 105
2.5.5 实例分析——文献流通子系统数据流图的数据字典条目 106
第六节 加工说明 107
2.6.1 加工说明的作用 107
2.6.2 加工说明的格式 108
2.6.3 结构化语言 109
2.6.4 判定表和判定树 111
第七节 模型和原型法 119
2.7.1 模型的作用和意义 119
2.7.2 系统模型及其分类 120
2.7.3 原型法 122
2.7.4 其它软件开发方法 128
第八节 实例分析 134
2.8.1 文献流通子系统 135
2.8.2 文献采访子系统 176
2.8.3 文献编目子系统 177
2.8.4 连续出版物管理子系统 178
2.8.5 公共查询子系统 178
第九节 图书馆自动化系统分析的特点 178
2.9.1 系统的软、硬件和数据库的综合分析与配置问题 179
2.9.2 图书馆自动化系统目标的确定问题 182
2.9.3 数据分析和文件分析的准备工作 183
2.9.4 注意图书馆自动化系统的操作运行方式设计 188
第十节 结构化分析小结 190
2.10.1 理解当前系统,得出其具体模型 191
2.10.2 通过对当前系统具体模型的分析,抽象出其逻辑模型 193
2.10.3 分析目标系统和当前系统的逻辑差别,建立目标系统的逻辑模型 194
2.10.4 修改、充实和完善目标系统的逻辑模型 195
第三章 图书馆自动化系统设计 204
第一节 概要设计 204
3.1.1 概要设计的任务 204
3.1.2 概要设计的实施步骤 205
3.1.3 概要设计的实施要求 206
3.1.4 概要设计的完成标志 207
第二节 详细设计 211
3.2.1 详细设计的任务 211
3.2.2 详细设计的实施步骤 212
3.2.3 详细设计的实施要求 212
3.2.4 详细设计的完成标志 216
第三节 结构化设计和图形工具 219
3.3.1 结构化设计的基本思想 219
3.3.2 主要图形工具——模块结构图 223
3.3.3 其它图形工具 229
第四节 内聚度和耦合度 236
3.4.1 联系 236
3.4.2 评判模块结构的标准 238
3.4.3 功能模块 246
第五节 由数据流图导出并改进模块结构图 247
3.5.1 典型的数据流图结构和导出方法 247
3.5.2 对模块结构图的优化和应注意的问题 254
第六节 面向数据结构的设计方法 259
3.6.1 Jackson程序设计方法 261
3.6.2 Warbier程序设计方法 270
第七节 图书馆自动化系统设计的主要特点和实例分析 276
3.7.1 数据结构及有关检索算法在图书馆自动化系统中的使用 276
3.7.2 数据压缩技术的应用 305
第四章 图书馆自动化系统的系统实现和测试 317
第一节 系统实现 317
4.1.1 任务 317
4.1.2 实施步骤 318
4.1.3 实施要求 319
4.1.4 完成标志 320
4.1.5 程序设计注意事项 320
第二节 有关系统测试的基本概念 329
4.2.1 进行系统测试的目的 329
4.2.2 测试用例 333
4.2.3 测试方法 334
4.2.4 测试队伍和测试工具 334
4.2.5 程序正确性证明 336
第三节 白盒法 336
4.3.1 逻辑覆盖类型 336
4.3.2 实例分析 341
第四节 黑盒法 350
4.4.1 等价分类法 350
4.4.2 边缘值分析法 355
4.4.3 因果图法 360
4.4.4 错误推断法 364
4.4.5 综合策略 365
第五节 测试过程 368
4.5.1 单元测试 368
4.5.2 组装测试 369
4.5.3 确认测试 372
4.5.4 小结 374
第六节 图书馆自动化软件的测试特点和质量评价 375
4.6.1 测试和评价的关系,对图书馆自动化系统软件质量的基本要求 375
4.6.2 图书馆自动化系统的测试和质量评价的特点 376
第五章 图书馆自动化系统的使用和维护 380
第一节 保证系统正常运行需要解决的问题 380
5.1.1 搞好系统维护 380
5.1.2 重视数据库建设 384
5.1.3 关心系统的发展和升级 384
5.1.4 加强科学管理 385
5.1.5 抓紧队伍建设 386
5.1.6 提高思想认识 387
第二节 软件系统的维护 388
5.2.1 系统维护的任务 388
5.2.2 实施步骤 388
5.2.3 实施要求 391
5.2.4 交付文件 391
第三节 编写文件的补充 392
5.3.1 整个软件开发中需要编写的文件 392
5.3.2 模块开发情况表 393
5.3.3 不同规模的软件对编写文件的不同要求 394
第六章 面向对象技术 397
第一节 面向对象的基本概念 397
6.1.1 面向对象的起源与发展 397
6.1.2 面向对象的基本概念和特征 401
6.1.3 面向对象的软件开发 405
6.1.4 面向对象技术与方法对图书馆自动化系统建设的意义 407
第二节 面向对象分析与设计 409
6.2.1 面向对象分析的作用 409
6.2.2 面向对象分析的方法 409
6.2.3 面向对象设计 417
第三节 面向对象程序设计 419
6.3.1 面向对象的程序设计语言 419
6.3.2 C++和面向对象程序设计 422
第七章 我国图书馆自动化面临的形势和任务 444
第一节 90年代我国图书馆自动化发展的有利条件和不利因素 444
7.1.1 我国经济和科技发展为图书馆自动化创造了更有利的条件 444
7.1.2 图书馆自身的进步为图书馆自动化的发展提供了条件 450
7.1.3 相关行业和学科发展所起的促进作用 462
7.1.4 不利因素和存在问题 465
第二节 发展的奋斗目标和指导思想 467
7.2.1 奋斗目标 468
7.2.2 指导思想 469
7.2.3 图书馆信息资源建设 471
第三节 一些需要注意解决的主要问题 477
7.3.1 网络化建设 477
7.3.2 标准化 478
7.3.3 新技术的使用和新系统的开发 479
7.3.4 有关软课题特别是发展战略的研究 486
7.3.5 图书馆信息化产品商品化和产业化 487
附录一 美国国家信息基础结构(NII):行动计划 489
附录二 机读目录格式 525
附录三 CNMARC字段和子字段一览表 554
参考文献 581