1华北电力大学科技学院实验报告实验名称图书馆管理系统的分析与设计课程名称面向对象技术专业班级:学生姓名:学号:成绩:指导教师:实验日期:华北电力大学科技学院实验报告12一、图书管理系统需求描述图书馆里有多种书目,每种书有多个副本,每个副本有唯一的编号。每本图书借阅期限为60天,超期罚款,按天计算,每天0.1元。每个借阅者在系统中建立一个账户,并发放借阅证,账户中有用户名、证号、单位、存的现金数额,用于超期罚款,用户可以续费。持借阅证的用户可以借书、还书,但这些操作要通过图书馆馆员来实现,每个借阅者可借10本书。每次借阅会将特定的借阅者和书籍副本联系起来。图书管理员还负责图书的书目管理,书籍副本管理,借阅者管理。如果借阅证丢失,借阅证持有者应到图书馆前台挂失。借阅证持有者可以预约图书,最多可预约3本(可以设定预约有效的期限),并在图书到达后得到电话通知,图书馆为其保留图书,3日内有效。还可以取消预约。二、需求分析系统的功能需求主要包括以下几个方面:1.这是一个图书馆管理系统。2.借阅者需预先建立一个账户(账户中有用户名、证号、单位、存的现金数额),并领取借阅证,借阅者可以续费。3.各种书目需预先注册。每种书目有多个副本且每个副本有唯一的编号。3.借阅者能够通过图书馆馆员借书、还书(每个借阅者可借10本书),每次借阅或归还都更新数据库信息。4.借阅者可以通过网络查询书籍信息。5.借阅者可以预约图书。当他所预约的图书归还或购进时,就通知预定人。图书馆为其保留3日预约书籍。当预定某书的借书者借阅该书后,系统取消预约。6.如果借阅者还书超过期限(60天),需扣款,按天计算,每天0.1元。7.图书馆馆员在软件系统的支持下处理借阅者的借书和还书请求。8.系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加和删除书籍,增加、删除和更新借阅者帐户,挂失借阅证等。7.系统能够运行在流行的技术环境中,并应有一个良好的人机交互图形用户界面。8.系统容易扩展新功能。系统将通过计算机来处理图书、副本、借阅者和借书。借阅者要求借书,出示借阅证,查询该借阅者提供的借阅证是否满足借书要求。如果满足,给出要借图书的名称,系统查找所借的图书是否存在副本,如果有,则办理借书手续(登记借阅信息)。图书是存放在图书馆中的书的名称,副本是一个图书的具体实例。一个图书可能有多个副本,一个副本一定会对应一个图书。一次借阅必须记录一个图书的副本和一个借阅证信息。一个副本可以被借阅,也可以不被借阅。一个借阅证可以借多本书,也可以华北电力大学科技学院实验报告13不借一本书。一个借阅证可以进行多个图书名称的预定,也可以不进行预定。一次预定必须记录一个图书名称信息和一个借阅证信息。识别参与者创建用例图之前首先需要确定参与者。对于一个图书管理系统,基本的功能是完成图书的借阅和相关信息的管理,服务的对象有学生,教师,及其他学校的学生,还有社会人员,这些人可归结为一类即借阅者。帮助借阅者顺利完成借还书的是图书馆馆员,负责图书的书目管理,书籍副本管理,借阅者信息管理的可以归结为一类即图书管理员。因此对于一个图书管理系统主要有三类参与者,借阅者、图书馆馆员、图书管理员。图书管理系统中的用例图简述通过识别的参与者,对需求进一步分析,获得每个参与者的用例图:(1)借阅者用例图:主要描述用户注册,登录,用户查询、预约书籍,用户借书、还书,用户信息查看,修改时的相关操作,以及的相关信息。读者用例图【用例图说明】(1)登录用例,用于登录系统,核实身份信息,给予借阅者的本系统相关操作权限。(2)查询书籍用例,用于查询自己感兴趣的书籍,系统显示书籍的相关信息。(3)预约书籍用例,用于记录自己想借阅的书籍,方便直接去图书管理员处借书。(4)借书用例,用于读者向图书馆馆员借阅图书,从借书到取书的全过程。其中包括书籍续借用例,用于提供续借书籍的功能。华北电力大学科技学院实验报告14(5)还书用例,用于读者向图书馆馆员归还图书,记录借阅者还书的相关信息。其中包括丢失处理、逾期处理用例,用于借书超期和丢失读书时罚款的操作。(6)查询、修改个人信息用例,用于查看自己的个人信息,修改密码等相关信息。2图书馆馆员用例图:图书馆馆员可以进行借书、还书处理。图书馆馆员用例图【用例图说明】(1)借书处理用例,用于图书馆馆员把书借给借阅者,从借书到给书的全过程,包括查询书籍是否可借和检查借阅者借阅信息两个用例,用于判断该书是否可借和借阅者是否满足借阅条件的操作。(2)还书处理用例,用于处理借阅者归还的图书,判断借阅者是否逾期,丢失图书,并执行相对应的操作。3.图书管理员用例图:图书管理员可以通过登录系统对系统的数据进行维护,如增加、删除和更新书目,增加和删除书籍,增加、删除和更新借阅者帐户,挂失借阅证等。图书管理员用例图【用例图说明】(1)登录用例,用于登录系统,核实身份信息,给图书管理员本系统的所有操作权限。华北电力大学科技学院实验报告15(2)预约处理用例,用于处理借阅者预约图书的操作,包括通知预约者等。(3)管理读者用例,用于管理借阅者的基本信息,实现对借阅者的增删查改功能,此外还包括处理借阅证挂失情况。(4)管理书籍用例,用于管理书籍的基本信息,实现对书籍的增删查改功能。更改数据库中的书籍信息。图书管理系统用例1.借书用例用例名称:借阅者借书参与者:借阅者、图书馆馆员前置条件:一个合法的图书馆馆员已经登录到这个系统事件流:A.扫描读者借阅证;显示读者借阅信息;If借阅者借阅图书达到10本或有出书超期未还Then给出相应提示;Else添加一条借书记录;“图书信息表”中“现有库存量”-1;“读者信息表”中“已借书数量”+1;提示执行情况;Endif清空借阅者、图书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;后置条件:如果是有效借书,在系统中保存借阅纪录,并修改图书库存量和读者借书数量。2还书用例用例名称:借阅者还书参与者:借阅者、图书馆馆员华北电力大学科技学院实验报告16用例描述:当借阅者图书阅读完成时或者借阅期限到,应该通过图书馆馆员还书;假如逾期,还应附加缴纳罚款前置条件:图书馆馆员要提前登陆系统,并打开外围设备仪器基本事件流A.扫描归还图书条形码;显示此次借阅信息;If超期then提示,调用“计算超期罚款金额”;EndifIf选择“确定”还书//要先交罚款后才能还then添加一条还书记录;删除该借书记录;“图书信息表”中“现有库存量”+1;“读者信息表”中“已借书数量”-1;提示执行情况;Endif清空借阅者、图书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;后置条件:如果是有效还书,在系统中删除借阅纪录,并修改图书库存量和读者借书数量。3预订用例用例名称:借阅者预订图书参与者:借阅者用例描述:借阅者可以通过系统预定自己想读的书,需要明确取书日期,系统接受预订请求后,可以为读者查看是否可以预定前置条件:借阅者登陆系统事件流:A.借阅者登录系统;华北电力大学科技学院实验报告17显示读者借阅信息;查询所要预约书籍;显示该书信息;If该书不在书库或概述已被预订或该书为不可借书籍;Then给出相应提示;Else添加一条预约记录;“图书信息表”中“预约记录”+1;“读者信息表”中“预约记录”+1;提示执行情况;EndifIf选择“重新输入”then清空读者、图书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;后置条件:如果是有效预约图书,在系统中保存预约纪录,并修改图书信息表和读者信息表预约记录。活动图描述的是某流程中的任务的执行,当一个操作必须完成一系列事情,而又无法确定以什么样的顺序来完成这些事情时,活动图可以更清晰地描述这些事情。在本图书馆管理系统中,我们主要描述了图书馆系统的借书、还书和预订的活动图。1.借书活动图借书活动图说明:图书馆馆员首先进入系统,之后要扫描阅者的借阅证,系统显示该借阅者信息,并判断该借阅者是否符合图书馆借书条件,若该借阅者的借书数量还未达到最大规定数量,并且其所借书籍均未属于过期范围,则符合借书条件。则再扫描书籍条形码,检查书籍是否是不可借书籍或者已经被预订,若被预订,则也为不可借书籍。在这些条件都符合时,则更新书籍信息和借阅者的借阅信息,记录好借书的时间。华北电力大学科技学院实验报告182、还书活动图还书活动图说明:图书馆馆员对书籍进行扫描,系统显示此次借阅信息,若书籍已经过期,则要求读者还清欠款才能还书,读者缴应交罚款后,才可以更新书目信息和读者信息。华北电力大学科技学院实验报告193预订图书活动图预订书籍活动图说明:读者先进入系统查询自己所需要的书籍,显示书籍信息,检验书籍是否属于可预订书籍,若符合条件则检查书籍是否已经被预订或已经被外借,若都未成立,则读者对该书籍进行预订。华北电力大学科技学院实验报告110三、系统分析1.对系统静态结构建模3.1类图的生成(1)借阅者基本信息类主要用于描述借阅者基本信息的类,它的属性包括借阅者的借阅证编号、姓名、密码、性别、年龄、地址、联系电话、所借书籍的书目、借阅数量、状态等。其中主要操作有借书,还书和预订等。华北电力大学科技学院实验报告1112)读者的借书还书信息类主要用于描述读者的借书还书信息记录的类,它的属性包括借阅信息ID、读者ID、图书在数据库中的信息、借书时间、还书时间3)书籍基本信息类主要用于描述书籍基本信息的类,它的属性包括书籍的编号(book_id)、名称(name)、作者(author)、出版社、价格、图书ISBN编号、书籍数量等华北电力大学科技学院实验报告1124)读者类别信息类主要用于描述读者类别信息的类,它的属性包括读者类别ID、类别名、最大借书数量(我设置的10本)、最大借书天数(我设置的60天)、逾期每天应缴金额5)书籍类别信息类主要用于描述书籍类别信息的类,它的属性包括书籍类别ID、类别名华北电力大学科技学院实验报告1137)读者预定图书信息类主要用于描述读者预定图书信息的类,它的属性包括预定图书ID、书籍的名称(Books)、读者ID、图书在数据库中的信息、预定时间等(8)图书管理员类是系统管理员类,他有图书管理员账号,名字,密码等属性,操作主要是书籍的增删改和读者的增删改等等。10某本具体书类是具体某本书副本的类,属性包括书籍号,书籍名称,书籍状态。操作包括预订、按书目查找等。9数据库信息存储类是书籍永久的存储类,在数据库中的存储数据,其他对与书籍有关的活动都要经过其存储类。华北电力大学科技学院实验报告114图书馆管理系统的类图如图9所示2.对系统的动态行为建模我们再进行动态建模分析。对于图书管理系统借书还书是两个重要的过程,此外还有罚款过程。(1)借书的过程:借阅者凭借阅证进入图书馆,或者先查询图书及个人借阅信息,或者直接去挑选图书,选择好图书后进入借书程序,图书馆馆员首先进入系统,之后要扫描借阅者的借阅证,查验能否借阅,比如:借阅证是否无效或书籍是否已经借满等,即华北电力大学科技学院实验报告115检验其借书的合法性和有效性,如果是非法用户或借书数量范围外,则该借阅者不能借阅图书。如果满足借阅要求,则再获取所借书的标题以进行库内搜索,获取书目查询此书的数量,看是否还有此书,如果没有则阻止其他借书者可能进行的预订活动,将此书借出,根据书号将此书的借阅标志位取反以表示此书已借出,并将此书的书目减1。并为此读者记录借阅日期,以及归还日期,在归还日期内未能归还和续借的,并为其记录超借天数及罚款数额。还书过程:在返还图书的过程中,图书管理员对书籍进行扫描,获取借阅者的借阅信息和被归还的书籍的信息,如书标题信息,数量等,并一一审核每本书的归还日期是否超过应归还日期。在完成阶段,将此书的书号登记并设计标志位为已归还,以便借阅者网上预订和继续借阅,同时将此类图书副本的数量加1,如果借阅者超期或丢失所借书籍,则要进行赔偿处理。华北电力大学科技学院实验