图书馆管理信息系统实习报告.docx
《图书馆管理信息系统实习报告.docx》由会员分享,可在线阅读,更多相关《图书馆管理信息系统实习报告.docx(27页珍藏版)》请在冰豆网上搜索。
图书馆管理信息系统实习报告
管理信息系统
实验报告
题目:
图书馆管理信息系统设计
摘要
关键词:
图书借阅信息管理图书维护
图书馆管理信息系统是典型的计算机信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
本管理系统包括了系统登录、读者管理、书籍管理、借阅信息管理四个总的功能块。
在各个功能块中又具体包括了读者种类信息管理、读者信息管理、书籍类别管理、书籍信息管理、借书信息管理、还书信息管理功能。
使用户方便的对图书馆的信息进行管理,为读者借阅还书的节省了大量的时间。
Abstract
Themanagementinformationsystemofthelibraryisatypicalcomputerapplicationofmanaginginformationsystem(knowasMIS),whichmainlyincludesbuildingupdata-baseofback-endanddevelopingtheapplicationinterfaceoffront-end.Theformerrequiredconsistencyandintegralityandsecurityofdata.Thelatershouldmaketheapplicationpowerfulandeasilyused.Includingsystematically,booksmanage,borrowinformationmanagementfourapieceoftotalfunctionalblocksmanagementreaderlog-inthisadministrativesystem.Ofbeingateachfunctionalblocksitisagaintheconcreteitincludereaderkindinformationmanagement,Readerinformationmanagement,borrowletterbreathtomanage,returnletterfunctionsofmanagementofbreathinformationmanagementbooksclassificationmanagementbooks.Madeuser'sconvenientinformationtothelibrarycarryonmanagement,theonesthatborrowedandreturnthebooktothereaderhadsavedalargeamountoftime.
Keywords:
library;informationmanagement;librarymaintenance
目录
摘要2
Abstract3
1引言5
1.1研究的目的和意义5
1.2图书管理系统发展现状5
1.3图书管理系统解决的主要问题6
2图书管理系统规划7
2.1系统概述7
2.2系统目标7
2.3系统开发的可行性7
3系统分析9
3.1组织结构调查9
3.2业务流程分析10
3.3数据流程分析11
3.4数据字典13
4系统设计16
4.1功能结构设计16
4.2E-R模型设计17
4.3代码设计19
4.4输入输出设计23
5总结和展望26
5.1总结26
5.2展望26
参考文献27
11引言
1.1研究的目的和意义
利用图书馆管理系统进行管理,能更有效的对图书进行系统管理,方便读者对各类图书的查询,同时也大大提高了办理借书、还书手续方面的工作效率和提高图书馆的服务效率,为读者提供方便。
该系统并不针对某一个图书馆而开发,所以在通用性方面相对较广些。
相对于同类软件来说,该系统功能较齐全,集合了图书馆从进书、销书、查询、借书、还书、管理等多种功能。
在操作方面也比较方便,界面也较友好。
在数据库方面,该系统采用SQLServer2000数据库系统,在安全性方面也有了较大的提高例,谈谈其开发过程和所涉及到的问题及解决方法。
在下面的各章中我们将对图书馆管理信息系统简单介绍其开发过程和所涉及到的问题及解决方法。
与传统的手工作业相比,它大大提高了工作效率,而且系统采用人机对话方式,菜单提示,界面友好、操作简单,实现开架借书,加强了图书流通管理。
1.2图书管理系统发展现状
近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对这庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理.另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性.图书管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地.
1.3图书管理系统解决的主要问题
全面实现对图书馆的采购、编目、检索、统计和流通等业务的计算机管理。
它能使图书馆工作人员从繁重的工作中解脱出来,大大减轻了工作量,减少人为的工作失误,全面提高图书馆的管理效率及服务质量,从而使图书馆管理水平和业务水平跃上一个新的台阶。
2图书管理系统规划
2.1系统概述
本系统在VF环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。
通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。
文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。
本系统界面友好,操作简单,比较实用。
2.2系统目标
新进图书入库管理功能
数据查询修改功能
图书资料借阅功能
图书资料归还功能
2.3系统开发的可行性
(1)管理的可行性:
指管理人员对开发应用项目的态度和管理方面的条件。
本系统可以全面实现对图书馆的采购、编目、检索、统计和流通等业务的计算机管理。
它能使图书馆工作人员从繁重的工作中解脱出来,大大减轻了工作量,减少人为的工作失误,全面提高图书馆的管理效率及服务质量,从而使图书馆管理水平和业务水平跃上一个新的台阶。
因此,对于管理者来说,可以大大的减少人工成本,具有很高的使用价值。
(2)技术可行性:
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。
图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。
这一特点非常适合计算机特点,通过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。
计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。
(3)经济可行性:
作为图书馆这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:
其中包括设备购置费、软件开发费用、管理和维护费、人员工资和培训费等。
由于各个图书馆实行统一操作,系统共享,其设备购置,人员工资,维护费用相对较少,前期的资金投入主要集中于购置图书上。
建立信息中心,可将来自各方面的信息集中管理,提高图书管理的计划性和预见性,快速地反馈市场信息。
结论:
综上所述,系统的开发无论是在经济、技术、管理方面都是可行的,可以进一步开发研究.
3.系统分析
3.1组织结构调查
为了对系统有一个全貌性的了解,首先要对系统的内部人员结构、组织及用户情况有所了解。
图书馆系统的组织结构图如下:
图书馆有馆长全面负责,下设办公室,财务室,采编室,学术论文室,图书借阅室,期刊阅览室,电子阅览室,技术支持室。
各部门的业务职责如下。
办公室:
办公室协助馆长负责日常工作,了解学生的需求,制定采购计划。
财务室:
负责财务方面的工作。
采编室:
负责图书的采购,入库和图书的编目,编目后的图书粘贴标签,并送图书借阅室上架。
学术论文室:
负责学术论文的手机和整理。
图书借阅室:
提供对读者的图书查询服务和图书借阅服务。
电子阅览室:
收集整理电子读物,准备提供电子读物的节约服务,目前可以提供目录查询和借阅。
期刊阅览室:
负责情况的收集整理的借阅。
技术支持室:
负责对图书馆的网络和计算机系统提供技术支持。
3.2业务流程分析
系统的业务是系统要达到的业务目标,业务流程分析是系统分析中的基础环节,通过业务流程图来反映和表达。
图书管理信息系统的业务流程如图所示:
图书管理员编制图书采购计划,由采购员负责新书的采购工作。
采购图书入库后,交由采编室编目,粘贴标签,产生图书目录。
图书交由图书借阅室上架,供读者借阅。
读者分为注册读者和非注册读者,只有注册读者可以在本图书馆结束,非注册读者只能查询目录但不能借书。
读者填写注册登记表,交图书馆的管理员审核后,计入读者登记表,成为注册读者,发给借书证。
注册读者借书时,需填写借书单,连同借书证一起交给阅览室管理员,管理员核对无误后,填写借阅登记表,修改图书登记表中该书的数量,上架取书交给读者。
3.3数据流程分析
数据流程图是从数据流向的角度,精确的在逻辑上描述系统的功能(输入,输出和数据存储),摆脱其物理内容,是描述管理系统逻辑模型最主要的工具。
以下是图书馆管理信息系统的数据流程图。
顶层数据流程图
1层数据流程图
2层数据流程图
A.图书编目系统数据流程图
B.图书借阅系统数据流程图
C.图书征订系统数据流程图
D.系统维护数据流程图
3.4数据字典
数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合.下面列出了系统的主要数据字典。
图书:
图书表结构
别名:
描述:
记录所有图书的基本情况
定义:
图书表信息=图书编号+图书名称+图书ISBN号+图书作者+图书出版社+图书类型+图书价格+库存量+图书副本数量+图书总数
位置:
Librarydat.mdf数据库
名称:
管理员
别名:
描述:
记录管理员信息
定义:
管理员信息=管理员ID+管理员name+密码+加入时间
位置:
名称:
借阅请求
别名
描述:
学生借阅请求信息
定义:
借阅登记表=借阅ID+学生学号+图书编号
位置:
借书登记:
借书登记表
别名
描述:
记录所有图书的借阅情况
定义:
借阅登记表=借书编号+学生学号+图书编号+借书时间+归还时间+是否归还
位置:
Librarydat.mdf数据库
学生信息:
学生信息表结构
别名
描述:
记录所有学生信息情况
定义:
学生信息表=学生学号+学生姓名+性别+电话+身份号
位置:
Librarydat.mdf数据库
名称:
归还图书
别名
描述:
归还图书的相关信息
定义:
归还图书=借阅ID+学生学号+图书编号+归还日期
位置:
归还登记:
归还登记表结构
别名
描述:
记录所有已归还图书的借阅情况
定义:
归还信息表=编号+图书名称+归还时间+作者+出版社
位置:
Librarydat.mdf数据库
名称:
提示惩罚信息
别名
描述:
未归还图书的学生需要提示的信息
定义:
提示惩罚信息表=借阅ID+学生学号+图书编号+应归还日期+处罚提示
位置:
名称:
管理条例1
别名
描述:
对正常归还的处理方法
定义:
管理条例1=借阅ID+未过规定归还时间
位置:
名称:
管理条例2
别名
描述:
对丢失或超期归还图书的处理方法
定义:
管理条例2=借阅ID+过规定归还时间+相关处罚方法
位置:
名称:
借阅结果
别名:
描述:
是否借阅成功的返回结果
定义:
借阅结果=借阅ID+图书编号+学生学号+是否借出+提示成功借阅
位置:
名称:
归还结果
别名:
描述:
归还图书操作完成后成功的返回结果
定义:
归还结果=借阅ID+图书编号+学生学号+是否已归还+是否提示惩罚
位置:
24.系统设计
4.1功能结构设计
图书馆管理信息系统,是按照实际的图书借阅流程来设计的,因此其功能也是跟实际的图书馆借阅功能一致。
1添加读者。
新加入的读者也由管理员进行添加操作,添加新读者信息到读者信息表中。
管理员依次输入读者姓名,单位部门,住址,备注,联系电话和类别,系统自动根据读者类别等信息给出该读者在数据库中的唯一编号,并自动记录登记日期。
所有这些信息将被添加到读者基本信息表中。
2图书管理。
可以对数据库中所有的图书(包括在馆和不在馆的)进行管理,可以对图书信息进行修改、删除。
首先使用“定位”来确认要管理的图书,也可通过图书编号、条形码等来查找要管理的图书。
3读者管理。
可以对数据库中所有的读者进行管理,可以对读者的信息进行修改、删除。
首先使用“定位”来确认要管理的读者,也可通过读者编号、姓名等来查找要管理的读者。
4图书借出业务。
读者根据需要查询图书信息,找到要借图书后,系统根据读者编号和图书编号调出相关信息,判断读者能否借此书,并根据读者类别计算应还日期,借书成功后系统自动在相关数据表中修改读者借书信息以及该图书相关信息。
5图书归还业务。
系统根据图书实际归还日期以及应还日期判断是否超期,根据罚款设置表中相关信息计算罚款金额,并提示过期读者应缴纳的罚款金额,最后将归还信息写入数据库各相应的数据表中。
6信息查询业务。
包括图书基本信息查询,读者基本信息查询,在这个查询界面,系统提供多种查询条件供用户选择,根据需要查询信息。
主界面上的用户自定义查询都支持模糊查询,以方便用户。
另外也可对所有借出图书,当日借出、当日归还、当日新进图书信息进行查询,以及当日借书读者、当日还书读者,当日新增读者和过期未还读者信息的查询。
无论是那种查询,都可以把查询出来的数据导入到Excel或打印。
7统计业务。
包括图书借阅排名统计和罚款金额统计。
在图书借阅排名统计中,系统提供借出次数前10名的图书排行榜,让管理员掌握读者的喜好,为以后购买图书提供参考。
在罚款金额统计中,管理员只需选择要统计的时间段,就可以统计出该时间段内的罚款信息以及罚款总额。
8系统管理。
这部分包括修改管理员登录密码、图书类别设置、存放位置设置和读者类别设置等。
功能结构图
4.2E-R模型及关系模型设计
E-R模型(实体联系模型),简称E-R图,是描述概念世界、建立概念模型的实用工具。
由前一章的分析可以看出,本系统主要有四个基本实体:
管理员,图书,读者和统计表。
各实体间的联系图如下图所示:
各实体联系图
其中各实体的属性如下图
~
图所示:
学生属性图
图书属性图
分管理员属性图
实体:
学生(学生学号,学生姓名,性别,电话,身份号)
图书(图书编号,书名,作者,出版社,定价,图书类别,图书出版日期,图书数量)
管理员(编号,名字,密码,加入时间)
联系:
学生管理(图书管理员,学生姓名,学生密码)
图书管理(图书管理员,借阅号,归还号)
查询(图书编号,借阅证号,图书管理员,学生)
E-R图是建立数据模型的基础,根据E-R模型向关系模式的转换规则,可以将E-R图中所有的实体和联系都用关系来表示,从而可以得到数据库的逻辑模型。
4.3代码设计
在这里,我以图书借阅模块为例:
图书借阅代码设计
“借书”按纽
*检查是否输入了图书条码
ifempty(thisform.txtcode.text)
messagebox("请输入图书条码",16,"图书借阅管理")
thisform.txtcode.setfocus
return
endif
*检查在选择的库室中是否存在该条码图书
cCode=alltrim(thisform.txtcode.text)
cRoom=thisform.cmbroom.value
selectstorebibli
locateforalltrim(条码)==cCodeandalltrim(库室名)==croom
ifnotfound()
messagebox("“"+cRoom+"”"+"无<"+cCode+">条码图书",16,"图书借阅管理")
thisform.txtcode.setfocus
return
endif
*检查读者是否已经借阅了该条码图书
selecttempCursor
locateforalltrim(条码)==cCode
iffound()
messagebox("读者已经借阅该条码图书",16,"图书借阅管理")
thisform.txtcode.setfocus
return
endif
*保存读者借书记录
ndate=val(thisform.txtlenddate.text)
ifndate=0
insertintolenddata(条码,证号,库室,借期);
values(cCode,alltrim(thisform.txtnum.text),cRoom,date())
else
nyear=year(date())
nmonth=month(date())
nday=day(date())
nmonth=nmonth+ndate
ifnmonth>12
nyear=nyear+1
nmonth=nmonth-12
endif
ddate=date(nyear,nmonth,nday)
insertintolenddata(条码,证号,库室,借期,还期);
values(cCode,alltrim(thisform.txtnum.text),cRoom,date(),ddate)
endif
*刷新读者借书清单,执行查询获得读者借阅图书数据
cnum=alltrim(thisform.txtnum.text)
selectlenddata.条码,书名,索书号,库室,借期,还期fromlenddata,storebibli;
wherelenddata.条码==storebibli.条码andalltrim(lenddata.证号)==cnumand;
lenddata.库室==storebibli.库室名;
intocursortempCursor
*显示读者个人借书清单
thisform.txtLended.value=reccount()
thisform.grid1.recordsourcetype=1
thisform.grid1.recordsource='tempCursor'
*根据读者借阅图书册数是否达到借书数量限制禁用或启用借书按钮
ifthisform.txtsum.value=thisform.txtlended.value
thisform.cmdlend.enabled=.F.
else
thisform.cmdlend.enabled=.T.
endif
*修改馆藏图书记录的可借数
updatestorebibliset可借数=可借数-1;
wherealltrim(条码)==cCodeandalltrim(库室名)=cRoom
“续借”按纽
*检查是否输入了图书条码
ifempty(thisform.txtcode.text)
messagebox("请输入图书条码",16,"图书借阅管理")
thisform.txtcode.setfocus
return
endif
*检查读者是否已经借阅了该条码图书
cCode=alltrim(thisform.txtcode.text)
selecttempCursor
locateforalltrim(条码)==cCode
ifnotfound()
messagebox("读者没有借阅<"+cCode+">条码图书",16,"图书借阅管理")
thisform.txtcode.setfocus
return
endif
*修改该条码对应的借书记录
ndate=val(thisform.txtlenddate.text)
ifndate=0
updatelenddataset借期=date();
wherealltrim(条码)==cCode
else
nyear=year(date())
nmonth=month(date())
nday=day(date())
nmonth=nmonth+ndate
ifnmonth>12
nyear=nyear+1
nmonth=nmonth-12
endif
ddate=date(nyear,nmonth,nday)
updatelenddataset借期=date(),还期=ddate;
wherealltrim(条码)==cCode
endif
*刷新读者借书清单,执行查询获得读者借阅图书数据
cnum=alltrim(thisform.txtnum.text)
selectlenddata.条码,书名,索书号,库室,借期,还期fromlenddata,storebibli;
wherelenddata.条码==storebibli.条码andalltrim(lenddata.证号)==cnumand;
lenddata.库室==storebibli.库室名;
intocursortempCursor
*显示读者个人借书清单
thisform.txtLended.value=reccount()
thisform.grid1.recordsourcetype=1
thisform.grid1.recordsource='tempCursor'
*根据读者借阅图书册数是否达到借书数量限制禁用或启用借书按钮
ifthisform.txtsum.value=thisform.txtlended.value
thisform.cmdlend.enabled=.F.
else
thisform.cmdlend.enabled=.T.
endif
“还书”按纽
*检查是否输入了图书条码
ifempty(thisform.txtcode.text)
messagebox("请输入图书条码",16,"图书借阅管理")
thisform.txtcode.setfoc