09级计算机应用技术四班图书借阅管理系统需求分析计算机科学学院09级计算机应用技术四班软件工程组组员:陈俊张文超吴圣强程良德操权威马明潘浩锋09级计算机应用技术四班一、软件需求规格说明1.1问题的提出随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大。从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。目前学校图书馆的借阅工作部分还是手工管理,工作效率很低,并且不能及时了解图书的种类和学生们比较需求的图书等,不能更好的适应当前学生的借阅要求。手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时快捷,因此我们利用计算机提供给我们的信息对学生们的借阅过程形成一整套动态的管理。1.2可行性的分析文档图书借阅系统的建立,需要进行用户需求调查与分析,以确定系统目标,提出解决问题的详细方案,这是系统建设的重要环节。要想使学生能够有效的借阅,功能上对系统的要求是全面的。因此对用户的需求可分为四个方面:一方面是图书管理人员对需要进行图书借阅09级计算机应用技术四班的同学进行信息注册,获得借书证;二方面是学生通过计算机进行图书浏览;三方面是学生通过计算机进行图书借阅;四方面是打印输出学生信息。这四个方面形成了图书借阅的一个工作整体,利用计算机的自动化处理,可方便快捷地共享信息、交流信息,高效地协同工作。在软硬件方面对系统的需求,软件要求易学,界面友好,容易掌握,可以很简单方便的进行图书借阅信息管理。硬件的配置要求不能太高,这样可以很好的适应当前的学校图书馆的借阅。(1)系统能够对书籍信息进行管理。书籍信息包括:书籍名称,出版社,作者,出版社地址,出版日期,价格,书籍数量,书籍借出数量。书籍管理功能包括:添加书籍,修改书籍信息,删除书籍。添加书籍时,可以设定新书数目,当书已存在的时候,即时显示书籍信息,并且会询问是否增加该书的数目。(2)借书时,管理人员记录借书者姓名、借阅书籍名称和借阅日期。(3)还书时,管理人员记录还书者姓名、归还书籍名称和还书日期。(4)操作人员可以查询借阅书籍的所有借阅者的姓名;也可以查询某借阅者借阅的所有书籍名称;还可以根据借阅者姓名、书籍名称查询借阅者的借书时间、还书时间。(5)系统由图书馆工作人员操作。图书馆工作人员分为系统管理员、09级计算机应用技术四班书籍管理员和借阅管理员三类,权限不同。系统管理员具有所有操作权限;书籍管理员具有管理书籍、查询信息权限,但不具备管理借书还书事宜及管理用户权限;借阅管理员具有管理还书借书、查询信息权限,但不具备管理书籍和用户的权限。(6)书籍管理:书籍管理功能包括下面功能:1添加书籍2修改用户密码3删除用户(7)借书管理:该功能包括以下功能:1书籍借出:该功能系统管理员和用户都可以使用,都有借书的权限。用户和管理员登陆是即可获得他们的用户名和用户ID,所以不用输入借阅者的姓名即可借书,借书的时间就是当前日历表中的时间,若是学生则借书的期限为一个月,若是老师则为两个月,所以在还书日期就会显示到期之后的时间,提示用户在该期限之前应该还书。在图书进行出借的同时,借出该图书的数目会自增1。学生的上限为5,而老师的上限为10。同时该该用户借出图书的信息会罗列到借阅表中。在书名的下拉列表中可以显示目前可以借出的图书的名字,如果借出图书的数目库存量时则不能显示在改下拉列表中。2续借:09级计算机应用技术四班该功能系统管理员和用户都可以使用,都有续借的权限。续借时必须在还书日期之前续借才会成功,否则会提示该图书已过期多少天,欠费多少钱。续借时还书时间在当前日期加上30天。续借时还要求该书标志为未还时才能续借。(8)还书管理:该功能包括以下功能:该功能系统管理员和用户都可以使用,都有还书的权限。还书的时间极为当前日历表中的日期,登陆时已经获得了该用户的用户名,现在只用输入书名即可还入。还入的同时还书的标志为更改成Yes,还有借出的该书的数量会自动加1。还书的日期必须在系统规定的还书日期之前,否则会提示该书欠期未还,已欠费(9)信息查询:该功能包括以下功能:1书籍信息查询:该功能系统管理员和用户都可以使用,都有查询图书的权限。可以根据输入图书的书名,作者,出版社的某个信息进行查询,可以只查询书名,或者同时查询书名和作者等待,也能进行模糊查询,可以不完全输入图书的信息就进行查询,这样列出的信息中都会有输入的相关信息。09级计算机应用技术四班2借阅信息查询:该功能系统管理员和用户都可以使用,都有借阅信息查询的权限。可以根据第一个下拉列表中书名,在第二个下拉列表中查询还能进行借出的书名,点击查询即可查询该书借阅的信息。也可以根据第一个下拉列表中借阅者,在第二个下拉列表中查询有借书记录的借阅者的名字,点击查询即可查询借阅者借阅该书的详细信息。(10)目前书库中已有多少本书外借?占藏书的百分比(保留小数2位)?从借书还书记录中,计算出已借出的书本数量,再从数据库中统计图书馆的存书量,计算出外借图书占藏书的百分比。(11)统计到目前为止学生人均借书册数、男女教师借书册数比(以多者为1):从借书记录中统计图书馆共借出多少次书,除以该校总学生人生即可。从读者信息和借书记录中找出男女教师借书册数。(12)到目前为止,共有多少人有过借书逾期(一个人两本书逾期算1次)?共收到多少罚款?从还书记录中找出逾期者的信息,若信息相同则记录一次。统计总共的罚款数量。(13)平均每本书的外借天数为几天?哪一本书外借总时间最长?09级计算机应用技术四班分别从还书记录和借书记录中找到还书时间和借书时间,两者相减,计算出外借天数。(14)图书馆共遗失多少本书?从借书赔偿记录中统计图书遗失的数量。1.3软件开发计划此系统是由在校大学生,凭借着团体合作的精神联合开发的学校图书馆借阅管理系统。此系统在开发方式上对系统的需求,由于学校图书馆的借阅是一种无商业利益的,所以系统设计开发的周期要短,在短时间内完成,减少开发成本,提高开发效率,方便、简单、实用作为系统开发的指导思想。1.4系统基本目标规范化管理学校图书馆的借阅管理,要从根本上改变过去复杂、低效的手工管理方式,使工作规范化,即管理工作基于工作流程,完全采用计算机技术处理图书管理工作。使学生与图书管理人员能方便快捷地共享、交流信息。同时又能实现迅速、全方位的信息采集、信息处理,为使学生们的图书借阅能有效地进行。09级计算机应用技术四班1.5系统结构设计系统结构采用当前流行的C/S结构,也就是客户端/服务器模式,它开发时间短,成本低,而且数据量的传输快等优点。本设计是以学校图书馆借阅系统为例。编程语言采用delphi6.0,它可视化的开发环境,可以快速完成系统的开发,内部集成的数据库访问通道,可以轻松方便的对数据库管理。1.6总体设计本课题设计在充分进行用户需求分析的基础上把系统划分为六个子模块:学生注册、图书查询、读者借书、图书预约、读者还书、打印学生信息。这六个模块之间,紧密结合,共享信息资源,形成一种完美的学校图书馆借阅管理的解决方案。图书借阅系统学生注册图书查询读者借书图书预约读者还书打印信息09级计算机应用技术四班1.7系统详细设计本段论述图书借阅管理各个模块的详细的实现过程:1、学生注册:工作人员通过计算机对学生进行信息注册,发放借书证;2、图书浏览查询:学生们通过此模块来查询自己所需要的图书;3、读者借书:学生通过此模块来完成借阅图书;4、图书预约:学生通过此模块来完成预约图书;5、读者还书:学生通过此模块来完成退还图书;6、打印信息:图书管理人员通过此模块来完成打印学生信息的工作。1.8运行环境硬件坏境:CPU:Pentium4的Northwood显卡:独立显卡4800+内存:2GB硬盘:160GB软件坏境:系统为windowsxp09级计算机应用技术四班使用的软件是MicrosoftVisualBasic6.0企业版和SQLsever2000数据库1.9开发工具和编程语言VB6.和数据库SQL2000VB是VisualBasic的简写,是可视化的编程语言。是一种简单、高效地开发应用软件的工具。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组建的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。SQLServer是一个关系数据库管理系统它最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的于1988年推出了第一个OS/2版本在WindowsNT推出后Microsoft与Sybase在SQLServer的开发上就分道扬镳了Microsoft将SQLServer移植到WindowsNT。09级计算机应用技术四班流程图YNNYNYNYstart学生注册填写注册表学生库发放借书证借书证是否被锁定输入图书名/号此书是否存在预约正常借书,并将借书证设置为借书状态借书还书是否超期罚款正常还书,并将借书状态释放end解除锁定09级计算机应用技术四班数据流图(2)0层数据流图还书库图书名/号当前日期释放借书证借书状态有效图书名/号借书证已被锁定无效图书名/号借书库图书名/号将借书证设置为借书状态没被锁定有效(1)顶层数据流图注册信息借书证学生库超期罚款图书名/号图书库图书名/号图书名/号借书证图书名/号图书名/号学生注册查询借书预约还书表格打印借书证学生学生信息是否有效可借书借书证是否被锁定解除锁定注册信息可还书超期罚款09级计算机应用技术四班数据字典数据流注册信息别名借书证注册信息=学生证号+{系+级+班+姓名}数据流图书图书=图书号(流水号)+{图书名+作者+定价+出版社+(备注)}数据流超期罚款超期罚款=借书证号+{系+级+班+姓名}+图书号(流水号)+登记日期+定价文件字典文件图书库图书库=图书号(流水号)+图书名+作者+定价+出版社+(备注)+借/否组织形式:以图书号(流水号)为关键字升序排列09级计算机应用技术四班说明:借/否用来表示此书是否被借文件学生库学生库=学号+系+级+班+姓名+性别组织形式:以学号为关键字升序排列数据项条目学号:╳╳╳╳╳╳╳╳(八位数字)第1∽2位:入学日期第3∽4位:系统编号第5∽6位:班级编号第7∽8位:班内序号姓名=长度≦8的字符串性别=长度≦2的字符串系/级/班=长度≦10的字符串09级计算机应用技术四班流水号:╳╳╳╳╳╳(6位数字)第1∽2位:入库日期第3∽4位:图书类别第5∽6位:图书编号图书名=长度≦20的字符串作者=长度≦8的字符串出版社=长度≦50的字符串备注=长度≦255的字符串定价=货币值(小数位为2位)借/否=逻辑型(0/1)程序代码加工1、学生注册begin确认学生注册;根据学生注册在学生库中查找该生;写该生注册表end09级计算机应用技术四班加工2、查询begin输入要查图书号(流水号)及图书名;在图书库中查找;if存在do可以借书;else此书已被借enddoend加工3、借书beginif该生借书证没被锁定do输入其借书证号和图书号(流水号)/图书名;在图书库中查找该书;if存在do可以借出,输入借书日期并将借书证处09级计算机应用技术四班于借书状态;else此书已被借出请预约,或者重新输入其他的图书名/图书号(流水号)enddoelse需解除锁定,再借书enddoend加工4、预约begin输入借书证号及图书名/图书号(流水号)if不存在do进行预约;else可以借该书enddo09级计算机应用技术四班end加工5、还书begin输入借书证号及图书名/图书号(流水号)及还书日期;验证该书是否超期;if超期do根据罚款规定给予罚款;else正常还书,并释放借书证状态enddoend加工6、表格打印begin从注册表中逐一读取学生学号;if学号do在学生库中查找该生;输出该记录并打印;09级计算机应用技术四班