借还书信息管理系统课程设计
- 格式:docx
- 大小:636.67 KB
- 文档页数:19
一、实验名称:图书馆借还书管理系统的分析与设计。
二、实验目的和任务:《信息系统开发与管理》实验作为课程实践性环节之一,是教学过程中必不可少的重要内容。
通过计算机实验和案例分析,使学生加深理解、验证巩固课堂教学内容;增强系统分析设计的感性认识;掌握信息系统分析、设计的基本方法;培养学生理论与实践相结合的能力。
三、实验要求用信息系统分析与设计工具(例如visio、RationalRose等)分析和设计一个实用的中小型信息系统----图书馆借还书管理系统。
根据合理的进度安排,按照系统分析设计的流程及方法,踏实地开展实验活动。
四、实验内容及步骤:1.借还书系统的管理业务描述图书馆借还书系统属于图书管理系统的主要部分,现对进入图书馆借还书系统整体管理业务过程进行分析设计如下:读者进入图书馆后,若有查询图书的需求,则先进行图书查询。
登入查询界面,进行身份验证后可查询需要借阅的图书信息和读者的借阅记录等相关信息。
管理员也可以进行相关查询。
管理员的查询级别较高,出了一般读者可以有的查询权限外还可以对读者的档案信息进行查询。
此外所有管理员的信息可设置权限,只由一名管理员进行管理。
借书时,先提出借阅请求,由图书馆管理员依据读者的借阅资格和图书的借阅状态信息进行有效检验,若确认不允许借书,则不作借书处理,向读者反馈不能借阅的信息;若确认允许借阅,图书管理员则开始办理借书业务,并对读者的基本信息作相应的修改,同时要对图书信息进行修改。
还书时,分为有书的还书请求和没有书的还书请求。
有书的读者提出还书请求后,由图书馆管理员依据读者的借阅记录和图书信息进行确认,确认图书是否有破损超期现象,若经确认图书存在破损超期等问题,图书管理员则给读者开出罚款单;读者持罚款单缴纳罚款后可办理还书。
没有书的读者则被确认为丢失赔偿处理。
同样,管理员依据书的种类确定赔偿金额,开出罚款单,登记账目。
读者持罚款单缴纳款项后可办理还书。
同时,管理员要对读者借阅信息和图信息进行修改。
如经确认图书不存在破损超期以及丢失赔偿等问题,读者则提出正常的的还书请求,图书管理员对其办理还书处理,并修改相应信息。
建立业务模型如下:2.系统分析部分1)业务流程图高层业务流程图:高层业务流程图分为4个部分,包括查询管理,借书管理,还书管理和统计分析。
先着重对前三个步骤进行细分。
查询业务流程图(2层):借书业务流程图(2层):还书业务流程图:2)数据流程图在业务流程调查和数据分析的基础上再进行功能分析,建立新系统的逻辑结构,用数据流程图来描述,功能分析是“自底向上”的,从最底层的查询管理,借书管理,还书管理,业务流程开始,考虑在新系统中能实现哪些功能,把这些功能从业务流程中抽取出来,再根据数据模型和抽取后的业务功能构造新系统的逻辑结构。
最后,将所有叶子节点画完后整合成高层数据流程图。
具体如下:查询数据流程图(2层):借书数据流程图(2层):还书数据流程图(2层):顶层数据流程图:分析系统数据各部分之间的关系,合并后得E-R图如下:3.系统设计部分1)系统功能结构图设计现对功能结构图中的借还书功能做详细说明:查询时,读者或管理员输入自己的借书证号或管理员编号,进行身份验证和用户类型选择后登入系统。
若查询图书馆书目,输入查询书目条件,将查询的条件和光藏图书信息库中的数据进行匹配,找到符合条件的书目,将所有结果输出为一个界面中。
(包括书的基本信息和可借状态)。
若管理员登入系统查询读者信息,也需要先进性管理员身份验证,管理员档案数据库中的管理员编号和密码进行匹配,若成功,则管理员可进入管理员管理界面,操作读者信息、图书信息以及其他信息。
对于所有管理员的档案信息,将交由一名管理员进行管理,赋予他特殊管理权限。
需要特殊账号登陆。
以上查询若无法匹配,则返回空值或者错误信息。
借阅管理时,管理员先获得读者借书证号,然后获得读者借阅的图书编号。
先按借书证号查询读者借阅记录表,查看读者是否有违章记录,罚款是否缴纳,且还未到达借书上限。
满足以上三个条件者,可有效借书,办理借书登记。
否则,系统提示出错信息。
借书登记时需获得系统当前的时间,修改读者借阅表中的借书记录以及借阅时间,系统产生应还时间。
此外,需要对图书信息表中的数据做一个更改,将该书的可借状态和可借数量做一个改变。
还书管理时,管理员先获得借书证号。
判断为有书的读者还是没有书的读者申请还书。
对于有书的读者还书时,获得读者所借书号,查询读者借阅数据库中该书的借阅日期和应还时期,获得当前系统日期,为还书日期。
若还书日期未超过应还日期,则可办理正常还书。
若还书日超过应还日期,系统日期减去应还日期后乘以0.2得超期罚款金额。
还书时,管理员也需要对图书的破损状况做一个检查,划分破损等级。
依据轻度破损,中度破损或严重破损收取不同的罚款金额(具体情况由管理员定)。
超期金额加上破损金额等于总的罚款金额。
修改读者借阅数据库中的还书日期和罚款金额,在应收应付帐目中插入一条记录,其中罚款原因为“破损超期罚款” 打印罚款单。
对于没有书的还书者申请还书,先获得借书证号,获得丢失的图书编号。
通过查询馆藏图书数据库获得应赔款倍数和应赔款金额,修改读者借阅记录中的罚款金额,在应收应付账目中插入一条记录,其中罚款原因为“丢失赔偿罚款”,打印罚单。
修改馆藏图书信息库中的藏书的可借数目。
2)数据库设计数据库逻辑设计:读者信息数据库(借书证号,姓名,性别,学号/教工号,密码)管理员信息数据库(管理员编号,姓名,性别,密码,管理员类型)馆藏图书信息数据库(图书编号,图书检索号,书名,作者,出版社,出版日期,版次,单价,图书类型,赔款倍数,图书副本数,借阅状态,关键字)读者借阅信息数据库(借书证号,图书编号,作者,图书名,出版社,借阅日期,应还日期,归还日期,罚款金额,管理员编号)应收应付记录库(借书证号,图书检索号,图书名,交款日期,罚款原因,罚款金额,实收金额,管理员编号)数据库物理设计:读者信息数据库字段名数据类型长度可否为空说明读者姓名否普通索引字段读者性别Char 2 否普通索引字段读者学号/教工Char 8 否普通索引字段管理员信息数据库字段名数据类型长度可否为空说明管理员姓名否普通索引字段管理员性别Char 2 否普通索引字段密码Char 20 否普通索引字段馆藏图书信息数据库字段名数据类型长度可否为空说明图书检索号否普通索引字段图书名Char 50 否普通索引字段作者Char 20 否普通索引字段出版社Char 50 否普通索引字段出版日期Date 10 否普通索引字段版次Char 20 否普通索引字段单价Char 20 否普通索引字段图书类型Char 20 否普通索引字段赔款倍数Char 1 否普通索引字段图书副本数Char 1 否普通索引字段Char 8读者借阅信息数据库字段名数据类型长度可否为空说明图书编号否普通索引字段作者Char 20 否普通索引字段图书名Char 50 否普通索引字段出版社Char 50 否普通索引字段借阅日期Date 10 是普通索引字段应还日期Date 10 是普通索引字段归还日期Date 10 是普通索引字段罚款金额Char 10 是普通索引字段管理员编号Char 8 是普通索引字段应收应付记录库图书检索号Char 22 否普通索引字段图书名Char 50 否普通索引字段交款日期Date 10 否普通索引字段罚款原因Text 50 是普通索引字段罚款金额Char 10 否普通索引字段实收金额Char 10 否普通索引字段管理员编号Char 8 否普通索引字段主题数据库规范化设计:主题数据库一览表主题数据库标识主题数据库名称说明DB_manager 管理员信息数据库存储管理员基本信息DB-book 馆藏图书信息数据库存储馆藏图书基本信息数据库基本表一览表主题数据库标识主题数据库名称数据库标识数据库表名称管理员信息数据库管理员信息档案DB_book 馆藏图书信息数据库DB_book_base 图书信息表3)代码设计(部分):建立数据库:create database Book;管理员基本信息表的建立:create table manager(MID char(8) primary keyMName char(20) not null,MSex char(2), not nulMpwd char(8) not null,MType char(10) not null,check(MSex ='男' or MSex ='女')check(MType=’A’or MType=’B’))馆藏图书基本信息表的建立:create table Book(BookID char(12) primary key,BookNo char(22) not null,BookName char(50) not null,BookWriter char(20) not null,BookPublish char(50) not null,BookCo char(20) not nulBookPrice char(20) not nulBookDate date, not nulBookType char(20)not nulFineTime char(1) not nulBookCopy char(1), not nulBookState char(8) not null,BookPrim char(50),读者基本信息表的建立:create table Reader(BookId char(8) primary key,ReaName char(20) not nullReaSex char(2) not null,ReaNo char(8) not null,ReaLBID char(5) not null,ReaPwd char(20) not nullforeign key(ReaLBID) references ReaderType(LBID), check(ReaSex ='男' or ReaSex ='女'))借阅基本信息表的建立:create table Borrow(BookID char(8) primary keyBookWriter char(20) not nulBookName char(50)not nulBoolPublish char(50) not nulBorrowDate dateBookNo char(12) not nulReturnDate dateSreturnDate dateFine char(10)MID char(8) not null,)应收应付记录表的建立:create table AccountBookID char(8) primary keyBookNo char(12) not nulBookName char(50)not nulFineDate date not null,Reason text (100)FinePrice char(10) not null,ReceivePrice char(10) not null,MID char(8) not null, not null,4)界面设计:登陆界面:查询界面:4) UNL实现的系统分析与设计用例图:读者查询:读者借阅:读者读者还书:5)系统测试部分:测试数据设计(1)测试内容:1.系统登录测试(测试系统操作界面)内容:帐号口令输入、登录界面设计友好、合理性检查、合法性检查及修正2.借阅功能测试:内容:读者借阅所需图书,办理登记3.还书功能测试:内容:读者退还所借图书,罚款金额显示,办理还书4. 查询功能测试内容:读者登录界面设计测试,图书查询对话框显示控制,输入数据合理性检验、提交,图书查询结果显示。