高校图书管理系统一、需求分析1.1系统背景分析及设计目标随着各图书馆的图书的数量不断增多和图书馆规模的不断扩大,管理这些庞大的体系非常困难的,因为图书的情况是随时改变的,因此必需对图书进行动态的管理,而这对于一个管理人员来说是一件比较复杂的事情,存储、查询、借阅是必不可少的业务。为了能让管理员从繁重的工作中解脱出来,使管理员在使用一个软件以后能极其容易地对所有图书进行管理,并且准确无误,轻松自如。因此开发一个图书馆管理系统软件是当务之急.图书馆管理系统是一种典型的信息管理系统,使用者需要凭用户名和密码才能进入图书馆管理系统;管理员可以对图书、用户等信息进入增加、修改、删除等操作;也可以进行借出操作和归还操作;用户可以实现多种不同方式查询。本设计主要用于中小规模的图书管理,总任务是使图书管理工作规范化、系统化、程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况,大大提高图书馆图书流通率。本软件的最终用户特点:对系统的操作人员和管理人员的教育水平和技术专长要求不大,只要能够掌握基本的电脑知识,能够运用简单的操作,便可进行对图书及用户相关信息的处理。1.2目标用户群分析本系统的用户主要分为两方面,一方面针对学校的图书馆管理人员,使其通过图书管理系统来管理各类图书,使得图书馆的各项工作能够有序地进行,从而满足学生的需求;二是学生们能通过该系统来查询图书馆中的各类图书,来确定自已需要的书籍的借阅情况,为借阅做好准备。我们分别通过对图书管理人员和学生进行咨询得出总的需求如下:1.借阅图书1.1录入读者信息1.1.1读者编号1.1.2读者姓名1.1.3读者类别1.1.4办证日期1.2录入书籍信息1.2.1书籍编号1.2.2书籍名称1.2.3书籍类别1.2.4出版社1.3录入借阅信息1.3.1借阅信息编号1.3.2读者信息1.3.3书籍信息1.3.4借阅日期2.归还图书2.1录入读者信息2.1.1读者编号2.1.2读者姓名2.1.3读者类别2.1.4办证日期2.2录入书籍信息2.2.1书籍编号2.2.2书籍名称2.2.3书籍类别2.2.4出版社2.3录入还书信息2.3.1还书信息编号2.3.2读者信息2.3.3书籍信息2.3.4归还日期1.3需求分析按照以上分析,汇总得到以下的详细需求。1.功能需求(1)功能需求1:输入信息描述:系统应该保证能将读者与书籍的信息进行。理由:以保证管理人员以后对读者及书籍的信息进行录入。(2)功能需求2:查询信息描述:系统应该对读者与书籍的信息进行访问查询。理由:管理人员需要知道借书人的信息以及所借阅的图书。(3)功能需求3:修改信息描述:系统应该可以对读者的借阅资料及其所借书籍的数量名称等进行修改。理由:管理人员必须要对读者与借阅的书籍变更的信息及时修改更新。(4)功能需求4:保存信息描述:系统应该能将读者与书籍的信息保存。理由:以保证管理人员以后对信息进行查询。(5)功能需求5:删除读者信息描述:系统应该能够对归还书籍后的读者信息删除。理由:读者归还信息后,必须对之前记录的借阅信息删除。2.其他需求(1)数据需求描述:系统应该输出:书籍信息、读者信息、借阅时间。理由:功能需求1、功能需求2、功能需求3、功能需求4、功能需求5。描述:系统能接受的输入:用户关于哪本书的借阅、借阅日期。理由:功能需求1、功能需求2、功能需求3、功能需求4、功能需求5。(2)环境需求描述:系统应该能够被在线访问。理由:在线系统应该能从网上被访问。(3)用户需求描述:系统应该能够帮助用户学习如何使用该系统,包括如何从错误中恢复。理由:学校是一个大环境,而学生是一个大群体,管理人员是一个广泛定义的用户群,他们有可能不希望被“培训”如何使用该系统,因此,本系统应该能够让用户“边用边学”,而仅需一点外在的培训。同时,新手将会觉得一系列关于如何使用系统的指导非常有用,当中间用户或者专家使用新信息的时候会觉得在线帮助比较有用。1.4数据流图1.4.1借阅图书读者借书过程数据流程如图1所示。图1读者借书过程1.4.2.归还图书读者还书过程数据流程如图2所示。日历读者1借书检验2借书登记选定图书读者库图书库图书是否被借出图书信息检验图2读者还书过程1.5数据词典(1)数据源点及汇点描述:①名称:读者简要描述:借书、还书、查询及登记注册有关数据流:借书证;所借书本②名称:日历简要描述:当日日期有关数据流:年月日(2).加工逻辑词条描述:①加工名:借书检验加工编号:1简要描述:检验读者身份、图书是否入库、读者还能借多少书以此判定读者是否能借书输入数据流:借书证;所借书本,读者信息,图书信息,图书访问记录,日期输出数据流:借书错误信息,借书信息加工逻辑:IF借书证未登记入库THEN发出“借书错误”ELSEIF图书未登记入库THEN发出“借书错误”ELSEIF读者已借图书和现借图书多于限制数NTHEN发出“借书错误”ELSEIF读者已借图书中有超期THEN发出“借书错误”ELSE发出“借书信息”ENDIFENDIFENDIFENDIF①加工名:借书登记日历读者3还书检验4还书登记图书还书返回信息还书信息图书访问记录检验错误加工编号:2简要描述:将“借书信息”登记到“图书访问记录库图书访问记录”中,完成后将书本递交读者输入数据流:借书信息,日期输出数据流:图书访问记录,图书加工逻辑:将借书信息及日期写入图书访问记录;②加工名:还书检验加工编号:3简要描述:检验图书是否图书室外借图书输入数据流:图书,图书访问记录输出数据流:检验错误,还书信息加工逻辑:IF书号与数据库数据不符THEN发出“检验错误”ELSE发出“还书信息”ENDIF③加工名:还书登记加工编号:4简要描述:删除读者对该图书的借书信息,如果超期给出警告及天数输入数据流:还书信息,日期输出数据流:图书访问纪录,还书成功加工逻辑:IF所还图书超期THEN统计超期天数生成含警告的返回信息ELSE删除图书访问记录库中相应的借书记录生成成功信息ENDIF给出还书返回信息(3).数据流名词条描述:①数据流名:借书证说明:用以携带读者的唯一识别标识数据流来源:读者数据流去向:借书检验数据流组成:借书证=借书证号+姓名+联系方法借书证号=“000000001”..“999999999”姓名=2{字母}24联系方法=4{字母}50②数据流名:图书说明:记录图书的主要相关信息数据流来源:读者数据流去向:借书检验数据流组成:图书=书号+书名+作者+出版社书号=“000000001”..“999999999”书名=2{字母}24作者=2{字母}24出版社=2{字母}24③数据流名:检验错误说明:用于指示读者借书错误信息数据流来源:借书检验数据流去向:读者数据流组成:检验错误=2{字母}40④数据流名:借书信息说明:用于传递读者号和图书号数据流来源:借书检验数据流去向:借书登记数据流组成:借书信息=借书证号+书号⑤数据流名:日期说明:提供当前日期信息数据流来源:日历数据流去向:借书检验,借书登记数据流组成:日期=年+月+日年=“0000”..“9999”月=“01”..“12”日=“01”..“31”⑥数据流名:图书访问记录说明:用于记录读者借书信息数据流来源:图书访问记录库,借书登记数据流去向:借书检验数据流组成:图书访问记录=书号+借阅证号+借书日期借书日期=日期⑦数据流名:读者信息说明:用于记录登记入库的读者信息数据流来源:读者库数据流去向:借书检验数据流组成:读者信息=借书证号+姓名+联系方法⑧数据流名:图书信息说明:用于记录登记入库的图书信息数据流来源:图书库数据流去向:借书检验数据流组成:图书信息=书号+书名+作者+出版社+价格+摘要+状态⑨数据流名:还书信息说明:用于传递图书书号数据流来源:还书检验数据流去向:还书登记数据流组成:还书信息=书号⑩数据流名:还书成功说明:用于通知还书成功数据流来源:还书登记数据流去向:读者数据流组成:还书成功=2{字母}10数据文件词条描述:(前面已描述)(4).数据文件词条描述:①数据文件名:读者库简述:存放读者信息输入数据:无输出数据:读者信息数据文件组成:读者库由“读者信息”组成②数据文件名:图书库简述:存放图书信息输入数据:无输出数据:图书信息数据文件组成:图书库由“图书信息”组成③数据文件名:图书访问记录库简述:存放图书访问记录信息输入数据:图书访问记录输出数据:图书访问记录数据文件组成:图书访问记录库由“图书访问记录”组成。二、概念结构设计2.1系统功能分析系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本设计中的图书馆管理信息系统需要完成功能主要有:1.有关读者种类标准的制定、种类信息的输入,包括种类编号、种类名称、借书数量、借书期限等。2.读者种类信息的修改、查询等。3.读者基本信息的输入,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、办证日期等。4.读者基本信息的查询、修改,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、办证日期等。5.书籍信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期等。6.书籍信息的查询、修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期等。7.借书信息的输入,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。8.借书信息的查询、修改,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。9.还书信息的输入,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。10.还书信息查询和修改,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。2.2系统功能模块设计对上述各项功能进行集中、模块划分,按照结构化程序设计的要求,得到如图3所示的系统功能模块图。图3系统功能模块图2.3E-R图通过分析系统功能模块图,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系。本实例根据上面的设计规划出的实体有:读者类别信息实体、读者信息实体、书籍类别信息实体、书籍信息实体、借阅信息实体。各个实体具体的描述E-R图如下。读者类别信息实体E-R图如图4所示。图书馆管理信息系统借阅信息管理书籍信息管理读者信息管理用户管理密码管理设置读者种类设置读者信息设置书籍种类设置书籍信息借书信息管理还书信息管理读者种类添加读者信息查询书籍类别修改读者信息修改读者信息添加书籍信息修改借书信息添加书籍信息添加书籍类别添加借书信息查询还书信息修改书籍信息查询读者种类修改借书信息修改还书信息添加还书信息查询系统管理读者类别信息实体种类编号种类名称借书期限借书数量图4读者类别信息实体E-R图读者信息实体E-R图如图5所示。读者信息实体读者姓名读者编号读者类别办证日期图5读者信息实体E-R图书籍类别信息实体E-R图如图6所示。书籍类别信息实体类别姓名类别编号关键词备注信息图6书籍类别信息实体E-R图书籍信息实体E-R图如图7所示。图书信息实体图书编号图书类别作者出版社图书名称图7书籍信息实体E-R图管理员信息实体E-R图如图8所示。管理员信息实体姓名编号密码图8管理员信息实体E-R借阅信息实体E-R图如图9所示:借阅信息实体借阅信息编号读者信息图书信息借书日期图9借阅信息实体E-R实体之间相互关系的E-R图如图10所示。读者管理员图书借还借出管理读者编号读者姓名读者类别办证日期图书编号图书类别书名出版社账号作者管理员姓名密码借阅信息编号读者信息图书信息借阅日期图10关系E-R图三、逻辑结构设计3.1设计表1.图书信息表属性名数据类型长度允许空备注图书编号Char20N唯一书名Char50N作者Char30N价格MoneyY出版社Char50Y出版日期Char10Y是否借出Char5N流水号Char10N2.读者信息表属性名数据类型长度允许空备注读