图书管理系统实验报告-面向对象的分析与设计
背景、意义;需求分析;用例分析、类图、顺序图、通信图、活动图
1.研究背景及意义
图书馆是一所学校或是一座城市的一个文化标志,可以为学生以及社会上的各界人士提供丰富的图书文化资源,是一个学校管理机制中一个重要的环节。随着我国信息化的飞速发展,传统的图书管理模式已经满足不了对于大量图书管理的需求了,传统图书馆在当前图书管理中存在许多问题:
① 手工检索效率低
图书馆内图书数量非常的庞大,且种类繁多。虽然图书馆已经将图书进行了分类,图书的检索已经比较的简单,但因为手工检索存在着效率低下的问题,所以图书检索问题普遍存在于各个图书馆中,并随着图书数量的增多变得愈加严重。
② 手工借书还书失误高
图书馆的工作量大、效率低图书馆的日常工作就是借书与还书,这也是图书馆的主要工作。在借书和还书的高峰期,图书馆的图书归还登记以及图书借出登记工作量将会大量的增加,直接导致工作人员的工作量大幅度增加,而大量的信息使用人工操作难免会出现差错,如果没能将一些特殊情况及时的详细记录的话,就会给图书馆带来损失。
随着教育改革的不断推进,当前人们对于教育的重视程度在不断地攀升,这导致各个院校的发展进程也在不断的加快,图书馆的图书管理工作也随之更加的繁重。但是,随着我国信息技术的发展,计算机的应用范围不断扩大,所以在将计算机技术应用在图书管理已经逐渐成为图书管理工作的一项必然的发展趋势。
因此建立一款依托于互联网技术,能够让读者更快捷、更便利地对图书进行搜索、借阅和归还,并且能够根据读者的不同需求提供对应服务,实现图书信息资源的共享的图书管理系统是非常有必要的。
与传统的手工管理模式相比较而言,图书馆内图书实现自动化、电子化管理,可以为使用人员提供更加快速准确、精细的图书管理信息,如,检索方便快捷、检索结果准确、存储的数据量大,并且成本低,可以很好地节省资源、并且还具有人机交互界面等众多的功能。并且使图书馆的管理变得不再繁琐;读者借书阅读也变得方便,快捷;大大减少了图书的丢失和人员管理带来的不必要麻烦;减少人力与管理费用;提高信息准确度;改进管理和服务;建立高效的信息传输和服务平台,提高信息处理速度和利用率。
从根本上看,图书馆里系统的最终目的就是为了减少成本的投入,同时大大地提高了工作效率,还要兼具系统在运行过程中可靠性很高、安全性稳定、存储容量大等特点。此外还要保证系统能够简单上手、灵活操作、实用性强。此外该系统需要必备两方面的特点:第一,图书检索功能需要方便快捷,可以在大量的图书中快速准确的检索出图书的相关信息;第二,由于图书以及用户借阅资料非常的多,因此管理者需要及时、准确、有效的查询图书信息,并及时的修改图书信息。
2.系统的需求分析
(1)开发该系统的可行性
图书管理信息系统的搜索程序大大方便了用户的需求,从现在的情况来看,实现该系统的可行性非常之高, 可以方便快捷有效地完成借阅、查询等的各项操作,录入数据合法性校验程序高,查询速度快。具有较高的安全性,系统对不同的用户提供不同的功能模块,操作权限有不同级别限制。一般的读者用户只能查看图书信息和借阅情况。另外系统还具有一定的保护机制,防止系统被恶意攻击,信息被恶意修改和窃取。有完善的备份机制,如果系统被破坏应该能快速恢复。
(2)系统的功能性需求分析
图书管理系统主要用户:管理员、读者、
每类用户的主要功能:
1)读者:
登录、注册读者信息
借阅、归还:读者可进行图书的借阅与归还的操作,但不能对信息进行更改。
查询:读者可查看个人信息;
可检索各种图书信息及图书状态、查看借还图书记录,自己已借阅的书籍和期限。
2)管理员:管理员登录管理员账号后,可以执行系统所有功能
管理图书信息:
可以浏览所有图书信息,检索特定图书的信息;
可以查看图书状态:借阅、归还、预约
可以对图书信息进行维护:添加图书、删除图书、修改图书信息。
具体信息包括:图书编号、图书名称、作者、出版社、出版日期、印刷次数、单价、图书类别等。
管理读者信息:
可以浏览读者信息,检索特定读者信息;
可以对读者信息进行维护:增加、删除、修改;
可以查看读者借阅、归还、预约等信息;
具体信息:读者类型、书证编号、读者姓名、身份证号、出生日期、性别、电话、院系、注册日期等。
管理图书借还:借书、还书、预约、续借、催还
图书借阅功能:输入读者编号,输入要借阅的图书的信息,记录系统当前时间即借阅时间;
图书归还功能:输入读者编号,选择其名下已借阅的图书,判断否超过了规定的期限;超过期限,交罚款,没超过期限,归还图书
具体信息包括:书证号、借阅人姓名、图书编号、图书名称、借阅日期、归还日期、状态等
系统维护:系统管理人员维护系统日常工作
3.用例分析
表1 图书借阅用例描述
用例名称 | 图书借阅 |
参与者 | 借阅者、管理人员 |
主要成功情节 | 借阅者查询图书信息,确定要借阅的图书; |
向管理人员提交借阅请求; | |
管理人员收到请求; | |
验证借阅者信息和图书信息为可借阅,并且在库、无预约; | |
管理人员添加借阅记录,修改图书状态; | |
向借阅者表示借阅成功 | |
扩展 | 验证借阅者信息失败—借阅失败; |
验证图书信息不可借阅—借阅失败; | |
验证图书信息为借出或者有预约—借阅失败,提醒借阅者可预约 |
表2 图书归还用例描述
用例名称 | 归还图书 |
参与者 | 借阅者、管理人员 |
主要成功情节 | 借阅者提交归还图书申请; |
管理人员审核归还申请; | |
查看是否逾期,逾期缴纳罚金; | |
修改借还记录、修改图书状态信息; | |
退还押金 | |
扩展 | 图书丢失—归还失败,需赔偿 |
表3 图书预约用例描述
用例名称 | 图书预约 |
参与者 | 借阅者、管理人员 |
主要成功情节 | 借阅者查看图书信息和预约记录,确定预约图书; |
提交预约申请; | |
管理人员审核预约申请; | |
验证读者信息和图书信息; | |
添加预约记录,预约成功 | |
扩展 | 验证图书信息为不能借阅—预约失败; |
4. 数据表分析与设计
表1 借还记录数据表设计
字段名 | 类型 | 备注 |
图书编号 | Varchar(10) | 主码 |
读者账号 | Varchar(10) | 主码 |
借阅日期 | Data | 主码 |
归还日期 | Data | not null |
续借日期 | Data | |
续借时长 | Varchar(10) | |
是否逾期 | Char(2) | “是”或“否” |
逾期时间 | Varchar(10) | |
是否缴纳罚款 | Char(2) | “是”或“否” |
缴纳罚款 | Varchar(10) | |
押金 | Varchar(10) | not null |
表2 图书预约数据表设计
字段名 | 类型 | 备注 |
图书编号 | Varchar(10) | 主码 |
读者账号 | Varchar(10) | 主码 |
预约时间 | Data | 主码 |
等待时长 | Varchar(10) |
表3 读者信息数据表设计
字段名 | 类型 | 备注 |
账号 | Varchar(10) | 主码 |
密码 | Varchar(10) | not null |
姓名 | Varchar(10) | not null |
性别 | Char(2) | “男”或“女” |
身份证号 | Char(18) | not null |
身份 | Char(3) | “学生”“教师”“其他” |
联系方式 | Char(11) | not null |
表4 图书信息数据表设计
字段名 | 类型 | 备注 |
图书编号 | Varchar(10) | 主码 |
书名 | Varchar(10) | not null |
作者 | Varchar(5) | not null |
出版社 | Varchar(10) | not null |
库存 | int | not null |
出版时间 | Data | not null |
单价 | Varchar(10) | not null |
能否被借阅 | Char(3) | “能”或“不能” |
当前状态 | Char(3) | “在库”或“借出” |
表5 管理人员数据表设计
字段名 | 类型 | 备注 |
ID | Varchar(10) | 主码 |
姓名 | Varchar(10) | not null |
身份证号 | Char(18) | not null |
联系方式 | Char(11) | not null |
表6 管理图书数据表设计
字段名 | 类型 | 备注 |
管理人员ID | Varchar(10) | 主码 |
图书编号 | Varchar(10) | 主码 |
操作日期 | Data | 主码 |
操作类型 | Varchar(10) | 主码“增”、“删”、“改”、“查” |
表7 管理读者数据表设计
字段名 | 类型 | 备注 |
管理人员ID | Varchar(10) | 主码 |
读者账号 | Varchar(10) | 主码 |
操作日期 | Data | 主码 |
操作类型 | Varchar(10) | 主码“增”、“删”、“改”、“查” |
①图书借还类图
②图书预约类图
将概念数据模型转化为对象关系模型:
注:被预约的图书不能被续借、固定每次借阅标椎时长15天
借还记录(读者账号、图书编号、借阅日期、归还日期、续借日期、续借时长、是否逾期、逾期时间、是否缴纳罚金、缴纳金额、押金)
图书预约(图书编号、读者账号、预约时间、等待时长)
图书信息(编号、书名、作者、出版社、库存、出版时间、单价、是否能被借阅、当前状态)
读者信息(账号、密码、姓名、身份证号、性别、身份、联系方式)
管理人员(ID、姓名、身份证号、联系方式)
管理读者(管理人员ID、读者账号、操作日期、操作类型)
管理图书(管理人员ID、图书编号、操作日期、操作类型)
5.系统主要交互流程设计
1、顺序图
控制类:borrowCotrol
实体类:四个:图书信息、读者信息、借还记录、图书预约
边界类:两个参与者两个边界类:readerForm、librarianForm
①图书借阅
②图书归还
③图书预约
2、通信图
①图书借阅
②图书归还
③图书预约
3、活动图
①图书借阅
②图书归还
③图书预约
6.系统实现
管理人员的界面设计:
1、管理人员登录页面
2、查看、修改用户信息
3、查看、添加、修改图书信息
4、图书借阅
5、图书归还
7. 总结
该系统主要以满足图书馆的图书管理需求为导向,将解决学校图书馆的需求为主要目的,基于此建立一个能够满足图书馆工作人员和借阅者要求,同时还具备读者信息管理、、图书检索、图书信息管理、图书借阅管理、等众多功能的图书馆管理系统。结合读者与管理者的实际需求,运用计算机技术在图书管理中,可以使图书管理工作更加的高效。
通过以上基于UML的图书管理信息系统的分析与设计,能够了解 UML对图书管理信息系统的福利,可以看出采用UML来进行建模,系统的相关参与者的所需功能以及各自所要操作的流程多能很好地在UML的相关图中得到很好的表述,它的设计优劣直接影响到用户对工程产品的满意度。尽管每个模型都有不同的设计方案和表达形式,但是最好的模型总是能够最大可能的切合实际,节约成本。而且越庞大的项目,建模的重要性越大。这样对于系统的开发人员来说,就能很好地做到对系统需求的把握以及在接下来的软件设计工作中避免一些不必要的错误产生,增加各部门之间的交互能力,加快项目开发进度,使得项目的开发更加科学、有效。
参考文献:
- 陈平.图书馆图书管理系统的结构设计及其功能实现. 2019-09-16
- 庄礼金.基于JSP的图书在线借阅系统的分析与设计. 2019-11-01
- 尹斌.图书管理系统/基于UML的图书管理信息系统分析与设计.2019-12-05
- 张日如.基于UML的图书管理系统的设计. 2019-12-29
- 张景峰.基于UML的用例图模型创建. 2019-03-10
图书管理系统实验报告-面向对象的分析与设计相关推荐
- python图书管理实训报告总结_图书管理系统实验报告
图书管理系统实验报告 一.问题描述 有一个小型书库保管了大量图书,关于图书有大量信息需要处理,这些信息包 括图书的分类.书名.作者名.购买日期.价格等.现要求编写一个程序以便于对 图书的管理. 基本要 ...
- 用模拟计算机求电路方程的解实验报告,电路计算机辅助分析实验报告..docx
电路计算机辅助分析实验报告. 大连理工大学实验报告电路计算机辅助分析与设计课 程 名 称: 电路计算机辅助分析与设计学部(学院): 电子信息与电气工程学部专 业: 电气工程及其自动化班 级: 电气13 ...
- 成绩分析系统c语言实验报告,学生成绩管理系统实验报告
<学生成绩管理系统实验报告>由会员分享,可在线阅读,更多相关<学生成绩管理系统实验报告(13页珍藏版)>请在人人文库网上搜索. 1.学生成绩管理系统实验报告实验名称:学生成绩管 ...
- python名片管理器实验报告_名片管理系统——实验报告.doc
名片管理系统--实验报告 网上名片管理系统 数据库和表的建立:(在MySQL中创建数据库test,并在test数据库中建立card.user和recycle表格,其中card和recycle具有相同的 ...
- python超市管理系统实训报告_超市管理系统实验报告范文
超市管理系统实验报告 一.背景 现在, 我们身边到处都是超市, 而这些超市很多都是小型超市, 在这些超市 里,实行的还是人工管理,管理方式混乱,工作效率低下,管理成本也比较高, 还不能及时的得到货物信 ...
- 医药计算机实验报告,医药管理系统实验报告.doc
医药管理系统实验报告 成 绩 评 定 表 学生姓名班级学号专 业计算机科学与技术课程设计题目医药管理系统 评 语 组长签字: 成绩 日期 2015 年 月 日 课程设计任务书 学 院信息科学与工程学院 ...
- c语言成绩管理系统报告书,C语言学生成绩管理系统实验报告
<C语言学生成绩管理系统实验报告>由会员分享,可在线阅读,更多相关<C语言学生成绩管理系统实验报告(22页珍藏版)>请在人人文库网上搜索. 1.学生成绩管理系统实验报告实验名称 ...
- java销售管理系统实验报告_java学生通讯录管理系统实验报告
java学生通讯录管理系统实验报告 (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 宁波大红鹰学院 课课程程设设计计课程设计名称: ...
- c语言用数组编写学籍管理程序,c语言学籍管理系统实验报告.docx
c语言学籍管理系统实验报告.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3. ...
- c语言学生档案管理课设作业,2019-2020年c语言课程设计学生档案管理系统实验报告.doc...
2019-2020年c语言课程设计学生档案管理系统实验报告.doc 还剩 10页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: *********C 语 ...
最新文章
- 3天拆解数据分析全流程!
- 飓风“桑迪”路径图的制作
- 产品设计体会(6014)商业智能的尝试
- 树莓派练习程序(火焰检测)
- TopCoder SRM 152 div 2 500point
- T级的备份兄弟们都怎么做
- IntelliJ IDEA 2020.2.1 发布,Lombok插件可能被官方支持
- Android网络课程笔记-----定制通知系统
- Jquery插件使用 焦点图插件 MyFocus ,另外记录一款插件 KinMaxShow大背景图插件。...
- chrome插件:提取页面数据
- abb机器人开通选项_ABB机器人623-1Multitasking选项 ABB机器人多任务使用方法教程...
- android 切换主题介绍一
- FastStone Capture 9.3 汉化绿色便携版 - 极品屏幕截图工具
- python qq空间登录_Python案例之QQ空间自动登录程序实现-阿里云开发者社区
- 从顶级会议Interspeech 2019看语音领域大家都在弄个啥嘞
- 做了五套登录页,晒一下 自己比较满意的~ oh yeh~
- 计算机学院请假管理系统,《计算机学院在校学生离校请销假管理暂行规定》
- CK+人脸表情数据集下载
- 计算机怎么取消用户密码,怎么取消开机密码:计算机开机进入Windows时的开机密码怎么取消?...
- UltraEdit v21.00
热门文章
- cenos 安装 Docker
- 按顺序取html中多个输入框的值,JS获得多个同name的input输入框的值的实现方法
- java end_Java Matcher end()用法及代码示例
- WIN32汇编 状态栏的使用
- c语言程序 题库管理,C语言程序设计题库管理.doc
- 2010年c语言上机题库,2010年计算机c语言上机题库
- 对《Java编程思想》读者的一点建议
- UnityWebPlayer使用(1) 单机环境下在WinForm中使用Unity3d
- c语言第十章课后作业答案,C语言练习题第十章
- C语言猜数字小游戏---详解+源码