基于军卫一号工程的医院图书管理系统设计与实现
发表时间:2012-12-19 浏览次数:1182次
作者 作者单位
杜洁 第四军医大学生物医学工程系医学电子工程学教研室 陕西 西安 710033
尤富生 西藏军区总医院信息科网络办,西藏 拉萨 850007
余浩 解放军总医院计算机室,北京 100853
0引言
随着计算机技术和电子信息技术的发展,尤其是数据库技术和网络技术的发展,图书馆传统的手工管理和人工检索方式已不能适应读者日益增长的文献信息需求,图书室管理和读者手工检索方式必将被计算机所代替. 目前,全军所有团以上医院及国内相当一部分医院都实施了“军卫一号”医院信息系统,对医院的整个医疗业务实现了计算机管理. “军卫一号工程”是目前国内最成功、使用最广泛的医院信息系统之一. 在用好医院信息系统的前提下[1],如何扩展信息技术在医院其他方面的应用,如医学图书信息服务系统是非常值得研究的. 我们结合本单位在“军卫一号”应用中对图书室图书管理系统的开发经历,探讨该系统的设计与实现.
1系统功能
通过调研,医院图书室的基本工作主要为: 图书、期刊、过刊等文献资料登记、报损,并且对这些资料做好管理工作;对借阅、归还进行登记,并提供检索查询服务[2]. 工作人员在办公室进行图书的预定和续借,而不需要到图书馆进行相关的操作.
根据图书馆(室)管理的需要,我们设计的图书管理系统应具有图书管理、读者管理、借阅管理和系统维护等功能. 其结构功能如图1所示
图1结构功能图(略)
2总体架构的分析与设计
C/S(Client/ Server)和B/S(Browser/Server)是当今世界开发模式技术架构的两大主流技术. C/S即客户机和服务器结构,二者可分别称为前台程序与后台程序,需要部署客户端程序,客户电脑当需要对数据库中的数据进行操作时,客户程序就自动寻找服务器程序,并向其发出请求,服务器程序根据预定的规则做出应答,送回结果. 运算负荷需要在服务器和客户端之间合理分配. 由于图书管理员功能是图书管理、读者管理、借出管理、还书管理,功能比较多,有些操作还要用到相应的专用设备,比如条形码阅读器、普通打印机等,这些功能适合采用客户机/服务器模式. B/S架构由浏览器、web 服务器、应用服务器、数据库服务器四个层次组成,它具有使用简单、易于维护、信息共享、部署容易的特点. 客户端一般仅需要安装web 浏览器即可,用户工作界面是通过web 浏览器来实现,极少部分事务逻辑在前端(Browser) 实现,但是主要事务逻辑在服务器端(Server) 实现. 读者主要是图书查询和借出查询,功能简单. 在设计这方面的功能时要考虑到用户操作的简单性,读者无需专门培训就能方便查询书目和书籍实时在馆情况,这部分功能采用浏览器/服务器模式[2-5].
“军卫一号”工程是一个基于C/S的结构,但其部分查询功能是按照B/S结构实现的. 对以上两种架构进行比较分析和一号工程中对整个系统的结构的选取,我们决定在图书管理端使用C/S架构,而用户使用的检索查询窗口使用B/S架构. 实现中分别选用PB(PowerBuilder)和ASP 来做为开发的工具和技术路线. PB是一种面向对象的程序设计语言,支持多种数据库系统类型的访问,利用PB可以设计出C/S结构的应用程序. 使用PB作为客户端的开发工具,可以很方便地控制设备,比如条型码打印机、扫描仪的信息采集等等. 而且,基于该设计的军队图书管理系统可以提供给读者实时动态的借阅状态,也提供了模糊查询功能,解决了盲目查找图书资料的问题.
3系统设计
系统设计包括系统流程设计和数据库设计. 其中流程设计是对现有工作过程的分析,而数据库设计则是对系统流程和所涉及的物理实体进行逻辑抽象的过程,数据库的设计对于保证数据的完整性、优化系统流程至关重要.
3.1医院图书管理的业务流程分析① 图书管理: 新书入库登记涉及的信息主要有登记人、登记时间、什么方式、登记地点、书的摘要等. ② 图书借阅: 图书登记后,就要被借阅,涉及的信息主要有借阅者、操作人员、借出时间、初借或续借、预计的归还时间、借出书名称及数量等. 读者借还书管理是图书管理系统的主要功能之一,其设计相当重要. 在设计过程中,我们以读者借书的过程来分析其业务流程,图2为相应系统流程. ③ 图书归还: 图书借阅后,到期后需要归还. 此时涉及的信息主要有还书人、操作人员、还书时间、所还书的名称等. ④ 图书报损: 图书由于丢失或其他原因需要报损,涉及的信息主要有谁报损、什么时间报损、什么原因报损、报损的是什么等[6-7].
图2借阅系统流程(略)
3.2图书登记过程中涉及的数据库对象我们以图书登记过程为例分析这一过程中涉及的实体,其他几个过程分析与此类似. 在数据库设计中,我们采用实体关系模型进行分析,即ER分析. 为了简化ER分析过程,我们把数据库对象分为属性和实体. 实际上属性和实体之间并没有形式上截然划分的界限,我们只是将不能再具有需要描述的实体作为属性,属性必须是不可分的数据项,不能包含其他属性. 作为属性,不能与其他实体具有联系. 我们将客观存在能作为属性对待的尽量作为属性对待. 图3中所表示的联系是实体之间的联系[8].
图3图书管理信息系统的简略ER图(略)
在图书登记中包括操作者、操作时间、登记地点、登记的内容等几个问题, 登记的内容是指登记的明细项目,登记的明细项目包括登记的图书编号、书名等基本信息,与图书实体有联系,所以不应该把登记的明细作为属性处理而应该上升为实体.
最终登记过程可以分为登记实体、登记明细实体,它们之间是一对多的关系,一次登记可以有多条明细记录与之对应. 当然,与登记实体有联系的实体还有登记人,与登记明细实体有联系的实体有图书实体.
我们分析出在登记过程中的实体及属性: ① 图书实体,属性有图书编号、分类号、书名、类型名称、作者、书号ISBN、出版社、现存量、库存总量、入库时间、操作员、简介、借出次数、注销标志等属性,其中图书编号是主键. ② 图书借阅记录实体,属性有序号、图书编号、读者编号、借阅时间、应还时间、操作员等属性,其中序号是主键. ③ 图书归还记录实体,属性有序号,图书编号、读者编号、归还时间、操作员,其中序号是主键. ④ 图书丢失记录实体,属性有编号、图书编号、读者编号、操作时间、操作员、赔偿编号,其中编号是主键. ⑤ 推荐好书实体,属性有序号、读者编号、图书名称、作者、出版社、内容简介、备注,其中序号是主键.
具体各个实体和实体的属性依照各个系统的要求而定,下划线的属性为主键. 其他几个借阅、归还、期刊合订的设计与此几乎相同,可以容易地设计出来. 最后还要对各个分ER图经过合并、修改和重构(图3)消除不必要的冗余,整个数据库的概念结构设计过程就结束了.
目前数据库建模工具很多,powerdesigner 就是这些工具中的一种,我们可以通过建立概念数据模型,完善概念数据模型,检查、固化和提取概念数据模型,生成物理数据模型,调整物理数据模型,由物理数据模型生成数据库. 对数据库建模过程逐步分析、逐步设计,大大地提高了数据库应用系统的开发质量.
4系统实现
Oracle数据库在数据管理的安全性方面特点非常突出,并且现有的医院信息系统后台中心数据库也是采用Oracle,所以我们选用Oracle数据库.
图书管理系统有关的后台数据表部署在图书馆独立的服务器上,同时在数据库选取上的一致性,也可以将后台的数据表部署在现有的医院信息系统的数据库上. 并且,图书管理系统使用“军卫一号工程”包括工作人员字典、科室字典和国家字典等.
PowerBuilder的数据窗口技术为开发人员提供了强大、灵活的数据库开发手段, 特别是在C/S结构的信息系统开发上,PB的优势非常明显,即开发高效,方便,易用.
条形码的使用极大地方便了图书管理与查询,而专业的条码打印机价格比较昂贵,我们这里使用PowerBuilder 的数据窗口打印出条码,节省了资金. PowerBuilder 打印条码可以通过以下几种方式:一种是通过嵌入ole 对象或dll 等外部程序(如微软公司的Office 里的条码打印控件),一种是在数据窗口中使用条码字体,再一种就是通过数据窗口动态的生成竖线来实现,线的宽度和距离参照需要的条码标准. 我们采用在数据窗口中使用条码字体,使用起来方便、快捷[9].
ASP 是基于NT平台的动态Web 技术,它不但可以进行复杂的数据库操作,而且生成的页面具有很强的交互性,允许方便控制和管理数据. ASP 可以通过ADO 来实现对数据库的访问,包括添加、删除、更新、查询和调用存储过程,并且有比较灵活的锁定和光标定位机制. 我们同样可以通过嵌入的sql 语句来操作数据库. 使用IIS 可以使运行Server 的计算机成为大容量、功能强大的web 服务器. 这样读者通过Asp网页查询其需要的信息具有部署简单、维护容易的优点. 除此之外,我们还可以在首页上发布新闻、新书通报等一些信息[10].
我们在系统的实现过程中用到了PowerBuilder, Oracle, IIS, ASP 及VBScript 等一系列软件和技术,基本实现了医院图书室图书管理工作的数字化和信息化.
5结语
此系统充分利用了“军卫一号”网络资源,避免了重复建设,需要的投资很小. 图书馆(室)只用配备一台普通电脑,一个打印机,一台条型码扫描器.
“军队医院图书管理系统”的数据与“军卫一号”其他数据一起纳入备份与恢复计划,既保证了数据的安全,也使军队图书馆(室)取消了手工记录. 该系统的馆藏条目相对较少,与医院运行的其他子系统相比它的数据量非常小. “军队医院图书管理系统”中“图书浏览”模块也采用了“输入法文件”数据源,因此系统的运行不会给其他子系统造成明显影响,不会影响医院正常医疗工作秩序.
系统的界面风格和操作方式与“军卫一号”其他应用系统相同,操作简单易学. 通过这一系统,图书管理者可方便地完成图书的入库、统计、借还等工作,医护人员可通过各科室的客户机浏览馆藏资源,了解借阅情况,及时归还借阅的图书资料.
【参考文献】
[1] 周广清,胡晋阳,李成建,等. 依托“军卫一号”网络资源开发“图书馆信息系统”[J]. 医疗卫生装备,2005,26(9):108-109.
[2] 陈赤强. 资料室图书管理系统的开发和应用[J]. 苏州大学学报,2002,22(5):134-137.
[3] 叶嘉. 基于B/S结构的图书管理系统设计[J]. 广西科学院学报,2005,21(3):183-185.
[4] 王新辉,王志和,包宋德. 基于C/S和B/S模式架构的图书管理系统设计[J]. 湖南人文科技学院学报,2005,10(5):53-56.
[5] 王立萍. 基于B/S的图书管理系统设计与开发[J]. 承德民族师专学报,2004,24(2):27-28.
[6] 柳志.网络图书管理系统及其关键技术研究[J]. 湖南农业大学学报: 社会科学版,2005,6(4):114-116.
[7] 窦淑庆. 具有身份识别功能的图书管理系统设计[J]. 电脑与信息技术,2005,13(5):28-30.
[8] 张广厚,刘艳. 基于UML的图书管理系统结构模型及实现[J]. 重庆师范大学学报:自然科学版,2005,22(2):2-5.
[9] 王海燕.基于无线网络及条型码技术的图书排架、定位系统[J].中华医学图书情报杂志,2005,14(4):50-52.
[10] 李晓黎.ASP+SQL Server网络应用系统开发与实例[M]. 北京: 人民邮电出版社,2004: 197-206.