基于三层架构的图书管理系统的设计与实现摘要:介绍一个通用的基于三层架构的图书管理系统的开发过程,详细阐述了整个应用系统的设计思路,采用c/s和b/s三层架构进行开发,并对各模块设计进行了详尽的分析,从而实现一个完整的设计方案;该系统基本满足了图书管理员对图书管理方面的需求,从图书的入库到流通以及借阅者的借阅实现全程的计算机操作,大大简化了日常的管理。关键词:图书管理;数据库应用系统;三层;c/s;b/s中图分类号:tp312文献标识码:a文章编号:1009-3044(2013)02-0275-05随着计算机应用的推广和应用水平的提高,特别是internet技术的飞速发展,数据库应用技术也有了很大的发展。数据库技术在事务处理和信息管理中扮演的角色越来越重要,它几乎涉及到人类生活的每一个领域。因此,利用数据库技术开发出的数据库应用系统应能解决在实际工作中的各类计算机应用问题,比如实现本企业或组织的信息管理系统,开发网络上的以数据库为基础的应用软件,或管理大中型的数据库系统等。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有些图书馆都是初步开始使用,甚至尚未使用计算机进行图书管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是图书管理系统开发的基本现状。该文主要介绍开发一个通用的图书管理系统的基本步骤以及图书管理系统的设计与实现过程。1需求分析1.1开发背景1)待开发的系统名称:图书管理系统。2)本项目用户:图书馆管理人员(超级管理员),信息管理员(管理员),借阅者。3)该系统同其他系统的相互来往关系:该系统类似于书店租赁管理系统,书店销售管理系统等。1.2应用需求图书管理系统需要满足来自三方面的需求,这三个方面分别是借阅者、信息管理员(管理员)和图书馆管理人员(超级管理员)。1)借阅者的需求是通过计算机来查询浏览图书馆所存的图书,来确定自己需求的书籍,同时还可查询个人借阅情况及对个人信息的修改;2)信息管理员通过计算机来管理各类图书,分类编号、调整图书结构、增加图书库存,适应借阅者的需求,对借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认。3)图书馆管理人员拥有最高权限,可对信息管理员和借阅者的信息全面掌握,还可对信息管理员的权限进行设置。4)数据流图数据流图是结构化分析方法中使用的工具[1]。根据图书管理系统应用需求得到如图1所示的数据流图。图1图书管理系统顶层dfd5)数据字典一个软件系统含有许多数据。数据字典[2]的作用,就是对软件中的每个数据规定一个定义条目,以保持数据在系统中的一致性。对图书管理系统分析得到如图2所示数据字典。图2图书管理系统数据字典1.3系统目标要求1)可以存储所有馆中图书的资料以及借阅人员的情况,具有安全、高效的特性。2)只需二至四名管理人员即可操作系统,节省大量人力。3)可以迅速查阅所需信息。4)系统对各个主要信息窗体均设有输出和打印功能,方便用户导出所需信息。5)后台管理方便、完善。6)易操作使用。界面风格清新、美观、大方。7)条形码的使用,条形码具有唯一性和一次输入后就可反复使用的优点,利用条形码技术作为信息快速输入的手段可迅速且不易发生错误地处理图书管理业务。本系统使用条形码作为图书和借阅者的标识,实现标识的唯一性。2系统设计2.1系统模块设计根据系统功能和图书信息管理的特点,设计了几大模块,分别是系统管理、图书管理、查询功能、借阅管理和管理员管理模块。1)系统管理主要提供给用户修改密码和重新登录的功能;2)图书管理主要实现图书管理员添加图书、库存整理、类别编辑、信息维护的功能;3)查询功能主要有借阅者查询、图书查询、违章查询;4)借阅管理主要实现借阅者借还书,借阅规则制定和违章管理的功能;5)管理员管理实现管理员对自己信息的增、删、改、查以及对借阅者权限的分配;6)附加功能实现统计借阅者借书的情况,制定购书决策。如图3所示系统功能模块结构图。图3系统模块结构图2.2数据库概念结构设计在需求分析的基础上,设计出能够满足需求的各种实体以及它们之间的关系。该系统采用描述数据实体及其关系的一种直观的描述工具——e-r图[3]来进行数据库概念结构设计。系统的e-r数据模型图如图4所示。图4图书管理系统e-r图2.3数据库详细设计根据系统模块和数据库概念设计,可设计出以下数据表:1)“图书信息表”(t_bookinf)用于保存图书的信息数据;2)“借阅者信息表”(t_reader)用于保存借阅者的信息数据;3)“图书库存信息表”(t_bookstock)用于保存图书的库存信息;4)“借阅者类型表”(t_readertypeinf)用于保存类型的信息;5)“图书类别表”(t_booktypeinf)用于保存图书的类别信息;6)“借阅信息表”(t_lendbook)用于保存借阅者的借阅信息;7)“丢书罚款表”(t_lostbook)用于保存借阅者的丢书信息;8)“超期罚款表”(t_punish)用于保存借阅者的超期罚款信息;9)“借阅规则表”(t_readerrule)用于保存借阅者的借阅规则信息;10)“管理员登录表”(t_userinfo)用于保存管理员的登录信息;11)“超级管理员登录表”(t_supinf)用于保存超级管理员的登录信息;12)“借阅者登录表”(t_readerpass)用于保存借阅者的登录信息。3系统详细设计与实现3.1架构设计本系统采用c/s[4]和b/s[5]的三层架构[6]设计,server端使用sqlserver2010作为后台数据库服务器,中间层采用中间件技术[7]将业务逻辑封装,而表现层则有两种表现方式,分别是client端和browser端[8]。client端使用delphi2012开发,主要提供给图书管理员管理图书和借阅者信息,browser端使用asp.net3.5开发,主要提供给借阅者查询和借阅图书的操作。3.2系统实现1)系统主界面及菜单界面的友好程度是一个数据库应用系统成功的关键,为了用户操作的方便性和简单性,系统主界面采用菜单式和按钮式的功能调用方式.系统主界面如图5所示。图5图书管理系统主界面2)用户登录窗体的的实现本窗体是为三种不同的用户(管理员,借阅者,超级管理员)提供选择以进入不同的模块,满足不同用户的需求。超级管理员具有最高权限,可以对整个系统的数据信息进行操作,还可以为管理员分配权限;管理员具有超级管理员为之分配的权限操作;借阅者可通过计算机来查询浏览图书馆所存的图书,来确定自己需求的书籍,同时还可查询个人借阅情况及对个人信息的修改。系统登录界面如图6所示。3)图书管理模块的实现该模块实现的功能是对图书各种信息进行管理和维护,包括有添加图书、库存整理、类别编辑、图书信息维护窗体。为借阅者借阅图书做好准备。实现功能界面如图7所示。图7图书管理界面4)借阅管理模块的实现本模块是提供给管理人员或超级管理员实现对借阅者借阅规则的编辑、借阅者借还书操作和对违章借阅者进行管理,界面如图8所示。图8图书借还管理界面4结束语利用delphi2012、asp.net3.5和sqlserver2010开发的基于三层架构的图书管理系统经过一段时间的试用和反复测试,从功能上达到了预期的目标。实现了图书管理员对图书信息的管理、借阅者信息的管理、借还书规则管理以及催还书的的功能;借阅者可通过浏览器在网上查询图书信息、自己借还书的记录,以及实现续借的功能。参考文献:[1]蔡婷,牛国柱.基于rfid的afc票箱管理系统的研究与实现[j].微计算机信息,2012(8):94-96.[2]涂平,朱晓铃,满旺.基于xml的关系型数据库格式转换研究[j].微计算机信息,2010(9):91-93.[3]梁玉强.e-r模型中联系状态研究及应用[j].计算机工程与应用,2012(9):94-97.[4]李先军,刘波,余丹,等.一种基于ajax技术的b/s与c/s混合构架模式[j].计算机应用,2009(4):1135-1138.[5]白德平,袁斌,刘建权.b/s与c/s混合体系结构开发应用程序[j].微计算机信息,2010(7):151-153.[6]高扬.基于.net平台的三层架构软件框架的设计与实现[j].计算机技术与发展,2011(2):77-80.[7]李冬睿,张娜,张超英,等.基于动态连接池的数据集成中间件的设计与实现[j].计算机应用与软件,2009(3):153-154,207.[8]蒋辉,汪大菊.在线评测系统的设计与实现[j].计算机与现代化,2012(2):111-115.