面向对象图书管理系统实验.docx
- 文档编号:8763593
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:30
- 大小:347.46KB
面向对象图书管理系统实验.docx
《面向对象图书管理系统实验.docx》由会员分享,可在线阅读,更多相关《面向对象图书管理系统实验.docx(30页珍藏版)》请在冰豆网上搜索。
面向对象图书管理系统实验
一、需求调查分析
本系统主要实现对图书馆的信息进行管理,图书馆的正常运营中总是面对大量的读者信息,图书信息以及两者相互作用产生的借书信息,因此要对读者资源,图书资源,借书信息进行管理.本系统的开发就是在于提高图书管理的工作效率,加强图书馆的管理。
图书馆管理系统是图书馆管理工作中不可缺少的部分,它的内容对于图书馆的管理者和使用者来说都至关重要,所以图书管理系统应该能够为管理者或读者提供充足的信息和快捷的数据处理手段。
但一直以来人们使用传统人工的方式进行图书管理和借阅管理,这种管理方式存在着许多缺点,如:
效率低、易忘记、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对图书信息进行管理,具有着手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。
这些优点能够极大地提高图书管理的效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套管理软件成为很有必要的事情。
图书管理信息系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于后台数据库的建立要求建立起数据一致性和完整性强.数据安全性好的库。
而对于前端应用程序则要求应用程序功能完备,易使用等特点。
在图书管理系统中,管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。
持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。
借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。
然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。
最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。
归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。
如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。
然后提交还书请求,系统接受后删除借阅纪录,并登记并修改可借阅图书的数量。
图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。
1.作为读者对图书管理系统的要求有:
1)能按各种方式(比如书名、编号、作者)查询图书馆的藏书情况.
2)能够方便地借阅图书、续借图书、归还图书。
3)能够查询自己的基本资料、借阅图书情况.
4)能够熟悉图书管理系统的使用。
2.作为图书管理员,对图书管理系统的要求有:
1)能方便的对图书信息进行录入登记,注销陈旧的书籍。
2)能够方便地对读者进行登记,或注销读者信息(基本信息,借阅信息).
3.作为系统管理员,对图书管理系统的要求有:
1)能够对图书管理系统的数据进行维护。
2)能够方便对图书信息进行管理和维护。
二、用况建模
1.确定执行者
通过对系统需求陈述的分析,可以确定系统有三个执行者:
图书管理员行为者,读者行为者及系统管理员行为者。
简要描述如下:
1)图书管理员行为者:
管理员按系统授权维护和使用系统不同功能,可以创建、修改、删除读者信息和图书信息即读者管理和图书管理,借阅、归还图书以及罚款等即借阅管理.
2)读者行为者:
通过互联网或图书馆查询终端,查询图书信息和个人借阅信息,还可以在符合续借的条件下自己办理续借图书。
3)系统管理员:
可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
三者之间的关系图1-1所示:
图1—1
2.确定用况
在确定执行者之后,结合图书管理的领域知识,进一步分析系统的需求,可以确定系统的用况有:
1)借阅管理:
包含借书、还书(可扩展过期和丢失罚款)、续借、借阅情况查询;
2)读者管理:
包含读者信息和读者类别管理;
3)图书管理:
包含图书信息管理、图书类别管理、出版社管理、图书注销和图书信息查询.
下面是借阅情况查询、读者信息管理、读者类别管理、图书类别管理、出版社管理和图书信息查询等用况的简要描述:
1)借书:
管理员为读者进行登记借书信息。
2)还书:
管理员为读者进行注销借书信息并对还书过期或丢失图书的读者进行罚款。
3)续借:
管理员通过对读者申请续借的情况进行审查,没有过期或丢失对读者原有的信息进行增、删、改等管理。
4)借阅情况查询:
读者通过互联网或图书查询终端登录系统后,查阅个人的所有借阅纪录。
5)读者信息管理:
管理员登录后,对读者详细信息进行增、删、改等维护管理。
6)读者类别管理:
管理员登录后,对读者类别进行增、删、改等维护管理。
7)图书信息管理:
管理员登录后,对新进来的图书信息进行登记入库并对现有的图书信息进行维护管理.
8)图书类别管理:
管理员登录后,对图书类别进行增、删、改等维护管理。
9)出版社信息管理:
管理员登录后,对出版社详细信息进行增、删、改等维护管理。
10)图书注销管理:
管理员登录后,对图书库中的陈旧的书籍信息进行注销管理.
11)图书信息查询:
读者或管理员通过互联网或图书查询终端登录后,查询所需要的图书信息.
下面是借书、还书、续借、图书信息管理、图书注销等用况的进行描述:
1)借书
用况名称:
借书
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.输入读者编号;
提示超期未还的借阅记录;
B.输入图书编号;
If选择“确定”then
If读者状态无效或改书“已”注销或已借书数>=可借书数Then
给出相应提示;
Else
添加一条借书记录;
“图书信息表”中“现有库存量”-1;
“读者信息表”中“已借书数量”+1;
提示执行情况;
Endif
清空读者、图书编号等输入数据;
Endif
If选择“重新输入”then
清空读者、图书编号等输入数据;
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A.等待输入下一条;
后置条件:
如果是有效借书,在系统中保存借阅纪录,并修改图书库存量和读者借书数量。
2)还书
用况名称:
还书
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A。
输入读者编号;
提示超期未还的借阅记录;
If有超期then
提示,调用“计算超期罚款金额”;
Endif
If丢失then
选择该书借阅记录;
调用“计算丢失罚款金额”+调用“计算超期罚款金额”;
Endif
If选择“确定"还书then//要先交罚款后才能还
B.输入图书编号;
If读者状态无效或该图书标号不在借书记录中then
提示该读者借书证无效或该图书不是该读者借阅的;
Else
添加一条还书记录;
删除该借书记录;
“图书信息表”中“现有库存量”+1;
“读者信息表”中“已借书数量”-1;
提示执行情况;
Endif
清空读者、图书编号等输入数据;
Endif
If选择“重新输入”then
清空读者、图书编号等输入数据;
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A.等待输入下一条;
后置条件:
如果是有效还书,在系统中删除借阅纪录,并修改图书库存量和读者借书数量。
3)续借
用况名称:
续借
参与的执行者:
管理员、读者
前置条件:
一个合法的管理员或读者已经登录到这个系统
事件流:
A.输入读者编号;
提示超期未还的借阅记录;
If有超期then
提示,调用“计算超期罚款金额”;
Endif
选择该书借阅记录;
Endif
If选择“确定"续借then
If该图书已超期或该图书续借次数〉=可续借次数then
提示该读者该图书已超期或该图书续借次数>可续借次数,不能续借;
Else
修改该书借阅记录中的“应归还日期";
图书续借次数+1;
提示执行情况;
Endif
清空读者、图书编号等输入数据;
Endif
If选择“重新输入”then
清空读者书编号等输入数据;
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A.等待输入下一条;
后置条件:
如果是有效续借,在系统中修改借阅纪录。
4)查阅情况查询
用况名称:
查阅情况查询
参与的执行者:
读者
前置条件:
一个合法的读者已经登录到这个系统
事件流:
A.读者通过互联网或图书查询终端登录。
If选择“登录”then
If用户信息正确then
显示读者所有借阅记录;
Else
返回登录页面重新登录;
Endif
Endif
If选择“退出"then
返回上一级界面;
Endif
返回A。
等待选择下一条或重新查询;
后置条件:
如果是有效操纵,在系统中增加、修改、删除图书信息纪录.
5)读者信息管理
用况名称:
读者信息管理
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.查询读者的信息情况;
B。
选择要查询的读者信息记录;
If选择“确定"查询then
If读者信息正确then
显示读者借阅情况;
Else
无此读者信息记录;
提示执行情况;
Endif
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A。
等待选择下一条或重新查询;
后置条件:
如果是有效操纵,在系统中增加、修改、删除图书信息纪录。
6)读者类别管理
用况名称:
读者类别管理
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A。
分类读者信息情况;
B。
选择要分类的读者信息记录;
If选择“确定”分类then
If需要进行分类的读者then
进行对读者的信息分类;
Else
添加一条读者分类记录;
提示执行情况;
Endif
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A。
等待选择下一条或重新查询;
后置条件:
如果是有效操纵,在系统中增加、修改、删除图书信息纪录.
7)图书信息管理
用况名称:
图书信息管理
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
管理新图书入库。
选择图书信息的管理。
If选择“确定”入库then
If输入该书编号及作者名称then
“图书信息表”中“现有库存量"+1;
Else
图书入库不成功;
提示执行情况;
Endif
Endif
If选择“退出"then
返回上一级界面;
Endif
返回A。
等待选择下一条或重新入库;
后置条件:
如果是有效入库,在系统中保存图书信息记录,并对图书信息做标记及进行增加、修改、删除图书信息纪录.
8)图书类别管理
用况名称:
图书类别管理
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.查询要分类的图书信息;
B.选择要分类的图书信息记录;
If选择“确定”分类then
If该书有借阅记录then
提示该书有人已借阅,不能分类;
Else
添加一条分类记录;
“图书信息表”中设定该书“已”分类;
提示执行情况;
Endif
Endif
If选择“退出"then
返回上一级界面;
Endif
返回A.等待选择下一条或重新查询;
后置条件:
如果是有效操纵,在系统中增加、修改、删除图书信息纪录。
9)出版社信息管理
用况名称:
出版社信息管理
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.查询图书的出版社信息;
B。
选择要记录的图书出版社信息记录;
If选择“确定"记录then
If该书有借阅记录then
提示该书有人已借阅,不能记录;
Else
添加一条记录出版社记录;
“图书信息表”中设定该书“已”记录;
提示执行情况;
Endif
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A.等待选择下一条或重新查询;
后置条件:
如果是有效操纵,在系统中增加、修改、删除图书信息纪录。
10)图书注销
用况名称:
图书注销
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.查询要注销的图书信息;
B.选择要注销的图书信息记录;
If选择“确定”注销then
If该书有借阅记录then
提示该书有人已借阅,不能注销;
Else
添加一条注销记录;
“图书信息表”中设定该书“已”注销;
提示执行情况;
Endif
Endif
If选择“退出"then
返回上一级界面;
Endif
返回A.等待选择下一条或重新查询;
后置条件:
如果是有效注销,在系统中保存注销纪录,并对图书信息做标记。
11)图书查询
用况名称:
图书查询
参与的执行者:
管理员
前置条件:
一个合法的管理员已经登录到这个系统
事件流:
A.查询图书信息;
B.选择图书信息记录;
If选择“确定”查询then
If该书有借阅记录then
提示该书有人已借阅,不能查询;
Else
添加一条查询记录;
“图书信息表"中设定该书“已"查询;
提示执行情况;
Endif
Endif
If选择“退出”then
返回上一级界面;
Endif
返回A.等待选择下一条或重新查询;
后置条件:
如果是有效查询,在系统中保存查询纪录,并对图书信息做标记。
3.确定用况之间的关系
确定执行者和用况之后,进一步确定用况之间的关系,如图2—1所示.
从图2—1图书管理系统的用况图可以看出有个六个用例:
”读者用例,借阅用例,图书用例,借阅情况用例,续借用例,图书信息查询用例。
”系统边界有个三个行为者,即图书管理员,读者,以及一个系统管理员。
⏹图书管理员:
管理图书馆图书信息登记与管理,读者信息登记和类别分类,借阅的管理。
双向。
⏹读者:
提供续借信息,对图书信息查询,以及对图书借阅情况的查询。
双向.
⏹系统管理员:
可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
双向。
从2-1图中我们还可以看出图中的每个用例之间的包含关系和扩展关系,读者用例包含关系是读者信息和读者类别;借阅包含关系是借书,还书,续借,借阅情况;而图中丢失和过期则是还书中的扩展;图书用例的包含关系是图书信息,图书类别,出版社信息及图书信息查询,其中意见反馈则是图书信息查询的扩展。
最高层用例图中展开读者借书的用例图如下图2—2所示:
读者借助此图书管理系统子系统,可以进行一下操作:
图2-2
读者借助此图书管理系统子系统,可以进行一下操作:
1.查询图书;
2.预留图书;
3.借书;
4.还书;
5.查阅借阅信息.
其中,在读者进行预留图书和查询借阅信息之前,读者必须先登录系统;
读者进行还书操作时,必须保证图书完整;
最高层用例图中展开图书馆管理员处理借书、还书等的用例图如下图2-3所示:
图书管理员用例描述:
图2-3
图书管理员使用系统进行的操作主要有:
1.处理读者的送还的图书;
2.处理读者的借书要求
3.处理读者的预留图书要求
其中在处理还书时,要查看图书的完整性;处理读者借书时,要检查读者信息;
最高层用例图中展开系统管理员进行系统维护的用例图如下图2-4所示:
图2-4
系统管理员使用系统进行的操作主要有:
1.处理图书库里新书信息记录;
2.处理图书库里旧图书的信息记录;
3.处理新旧图书信息记录维护问题;
4.处理新读者信息登记;
5.处理已存在的读者信息记录;
6.查询读者资料;
7.添加书目信息;
8.处理旧书目信息.
三、图书管理系统对象模型
根据需求描述,提取出管理员,借阅者,图书等几个对象。
3.1对象模型描述
下面对这个几个对象进行详细描述并建模:
3.1.1.读者Borrower类:
读者在系统注册的信息包括一下几点:
姓名(name),
住址(address),
城市(city),
省/州(state),
邮政编码(zip),
可借数的最大数目(maxbook),
借书期限(maxday),
读者编号(userid),
借书证号码(borrow_number);
读者使用系统可进行的操作有:
查询-———-——find(),
借书—-————borrow(),
还书——--—--return_back();
3.1.2.系统管理员Administrator类:
系统管理员也可以借书,因此他能进行读者类所以的操作;系统管理员同时也是图书管理员,也可以进行图书管理员说做的一切操作;系统管理员有自己的特殊编号,用来登录系统,进行系统级操作。
以区别图书管理员.
3.1.3.图书管理员Librarian类:
图书管理员也要在系统内注册,注册信息如下:
姓名(name),
住址(address),
城市(city),
省(state);
系统为每个管理员分配一个唯一编号workID。
图书管理员登录系统后,可以进行以下操作:
更新借书还书信息———-—-update();
增加预留--——--—-----—--—create();
删除预留信息--———--———destroy();
3.1.4.书目Title类:
书目类代表图书,在系统中要保存每一本图书的资料,这些信息包括:
书名(name),
作者(author),
书号(isbn),
库存数量(total_number),
借阅号(borrowed_number),
是否可以借出(is_allowedForBorrow);
在书类的操作有一些:
查找书目-—--———-—--------—-find();
增加书目——-—-—-—-——--—-—create();
删除书目-————————-—-—---destroy();
借书-—-———--—-——-—--———---borrow();
还书-—-————-———---—-—--——-return_back();
预留图书-——----———————reserve()
3.1.5.其他类:
Item类:
此类代表一个书目的一份拷贝
Loan类:
代表对超过还书期限的读书进行罚金的类
Reserve类:
预留图书类
3.2类图如下图3—1所示:
图3-1
四、系统设计
“图书管理系统"系统设计用包图描述,如图4-1所示。
五、图书管理系统动态模型如下图5-1所示:
图5—1图书管理系统动态模型
系列图
借阅者查询书籍信息的时序图如下图5—2所示:
数据需求:
要查询的图书名称
图5—2
图书管理员处理书籍借阅的时序图如下图5-3所示:
图5—3
系统管理员删除书目的时序图如下图5—4所示:
数据需求:
书目信息
图5—4
主流程:
a)系统管理员向系统提交要删除的书目
b)系统查找此书目
c)系统查找此书目下的所有拷贝
d)系统删除此书目的所有拷贝
e)系统删除此书目
系统管理员添加借阅者帐户的时序图如下图5—5所示:
数据需求:
读者详细资料
图5-5
主流程:
a)系统管理员填写新读者的信息
b)2。
提交信息,创建读者信息保存到数据文件
系统管理员添加书籍的时序图如下图5—6所示:
数据需求:
书目信息
每本书的拷贝的详细资料
图5-6
主流程描述:
a)系统管理员向系统提交新书资料(additem());
b)系统查询与此书相关的书目;
c)系统返回查询结果;
d)查到书目,则提交,添加此书目的拷贝。
六、图书管理系统活动图
借阅者的活动图如下图6—1所示:
图6-1
图书管理员的活动图如下图6—2所示:
图6-2
a)图书管理员登录系统后,处理日常事务,比如处理读者还书,借书;
b)在处理还书时,系统会计算读者的还书期限是否过期,如果过期,则要交一定的罚金,并且更新借阅信息;
c)处理借书时,系统会验证此读者借书的数量是否超过了限制,如果超过最大可借书的数目时,拒绝继续借书.
系统管理员维护借阅者帐户的活动图如下图6—3所示:
图6—3
a)系统管理员运行图书管理系统,在登录界面上输入口令后,系统对用户进行验证,只有通过系统验证后,才能进行管理.否则推出系统;
b)通过系统验证后,进入管理主界面,可以对借阅者进行管理;
c)查看借阅者的相关信息,以保证借阅者信息的正确性;
d)可以为读者注册资料,使其能通过系统借书,更新读者的资料。
系统管理员进行书目信息维护的活动图如下图6-4所示:
图6—4
a)系统管理员运行图书管理系统,在登录界面上输入口令后,系统对用户进行验证,只有通过系统验证后,才能进行管理。
否则推出系统;
b)通过验证后,系统管理员可以对书目进行管理,购买了新书后,需要向系统增加新的书目信息;
c)查询书目信息,对图书资料进行全局管理和监督;
d)图书过时后,需要删除相关资料,保证数据的正确。
系统管理员维护书籍信息的活动图如下图6-5所示:
图6-5
系统管理员登录系统,输入口令,系统进行验证,验证通过后,才可以使用系统,否则系统拒绝.
登录后,系统管理员可以对图书进行一些管理,比如增加图书,删除图书,操作完成后,推出系统.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 图书 管理 系统 实验