图书管理系统软件工程课程设计.docx
《图书管理系统软件工程课程设计.docx》由会员分享,可在线阅读,更多相关《图书管理系统软件工程课程设计.docx(18页珍藏版)》请在冰豆网上搜索。
![图书管理系统软件工程课程设计.docx](https://file1.bdocx.com/fileroot1/2022-10/8/4599ca7b-77da-46e1-920f-cdab7278493c/4599ca7b-77da-46e1-920f-cdab7278493c1.gif)
图书管理系统软件工程课程设计
图书管理系统
系别:
计算机科学与技术系网络工程方向
班级:
xxxx班
分组:
第9组
成员:
xxxxx
一、问题定义
图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。
因此需要对读者资源、书籍资源、借书信息、还书信息进行管理。
及时了解各个环节的信息变更,有利于提高管理效率。
管理图书采用传统的管理方法:
图书管理员在办理借书登记、查询读者借书记录时,管理人员必须在借书记录上一个个去查找,而要找到借书记录并删除该记录是件很麻烦的事情每当新书入库时,图书管理员既要填写新书入库卡片,又要填写新书入库账目,不仅工作量大,而且,在新书入库后要经历较长时间方能借出。
所以,为提高图书馆管理的效率,减少图书管理员的工作负担,有必要开发一个小型图书管理软件来对图书实施有效管理。
现代图书馆的图书管理早就进入信息化阶段了,但是从软件市场购买的一些信息管理系统软件通常是通用版的,不可能适应所以图书馆管理中的情况,功能不能扩充,这样不仅工作效率低下,浪费人力,财力,而且在一些中间环节造成信息丢失,出错。
所以建立图书管理系统,能够大大提高图书馆图书借阅的效率,还可以推进社会文化生活的进步。
二、可行性研究
1.系统建设目标
(1)要解决的问题:
(以某学校为参照)随着办公自动化水平的不断提高,现在学校管理学生信息也逐步从手工转到计算机自动化信息处理阶段。
设计一个功能完整、操作简便、界面友好的学生信息管理系统已经是势在必行的了。
(2)系统开发的目的:
提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效的实施。
立足于当今社会信息的发达,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化管理水平,实现信息资源的共享。
图书管理系统是一种基于集中统一规划的数据库数据管理新模式。
在对图书、读者的管理,其实是对图书、读者数据的管理。
本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。
使用该系统之后,图书馆管理人员可以管理读者的登记、图书的购入、借出、归还以及注销等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的流通情况。
本系统的宗旨是提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效的实施。
(3)系统名称:
图书管理系统
2.可行性分析
1)技术可行性
所建的图书馆管理系统使用基于C/S架构的web应用程序,使用了先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。
本项目应用了最新的技术,系统规模小,功能齐全,具备了较高管理效率,有较高的实时避免了学生借书与所查询的信息不一致。
其次系统投入的资金也减少了许多,而且加入了对使用权限安全性保护的功能,使系统在可用性与稳健性方面有了很大的进步,技术上是可行的。
2)经济可行性
图书管理系统对图书记录进行统一管理,实现图书管理工作的系统化,规范化和自动化,为图书管理提供便利。
与传统人员管理相比,图书管理系统提高了工作效率、同时摆脱图书管理人员在工作中出现的很多问题,大大节省了学生借书的时间。
该系统所需硬件设备为实验室的计算机,如今的性能较好的计算机的价格已经十分低廉。
由于学校急需。
采用计算机来进行图书馆的管理,因此开发经费没有问题。
3)运行可行性
本系统开发人员对系统采用的Window XP操作系统,服务器采用的Window 操作系统,前端开发语言使用的JAVA, 使用的WYSQL数据库管理系统及网络和通信技术有很深的了解。
且本系统为一个普通的信息管理系统,所耗费的资源比较小,一般的计算机都能满足条件。
因此,本系统在运行上是可行的。
4)法律可行性
本系统的开发不会侵犯他人、集体或国家的利益,不违背当地法律法规因此,本系统在法律上是可行的。
按上述四方面进行可行性分析、研究后,我们认为该项目是可行的。
三、系统的需求分析
1.图书管理系统的需求陈述
这里我们将图书管理系统的应用对象定位在中小型图书馆,因此在进行需求分析时主要考虑中小型图书馆的具体需求。
我们知道:
图书馆的主要功能就是为注册的用户提供图书的借阅,在此过程中主要涉及对图书的管理和借阅者(即注册用户)的管理以及图书借阅信息的管理。
其中,
(1)对图书的管理主要是指:
对馆藏图书的添加、修改、删除、查询等;
(2)对借阅者的管理主要是指:
对图书的借阅者添加、修改、删除、挂失、查询等操作;
(3)对图书借阅信息的管理主要是指:
对借阅者的借阅信息的管理(比如,某个借阅者何时借阅和借阅哪本图书等)。
(4)因为本系统为计算机应用系统,所以为了安全,对于每一个使用该系统的人,都要实行用户密码登录,只有合法的用户才能使用该系统。
2.图书管理系统的DFD
注:
数据流图是由VISIO2007绘制。
图1-1图书管理系统的基本系统模型
图1-2图书管理系统的顶层DFD图
图1-3图书管理系统的0层DFD图
图1-4对借阅图书的细化
图1-5对归还图书的细化
图1-6对查询的细化
图1-7对修改读者信息的细化
图1-8对修改管理员信息的细化
图1-9对修改图书信息的细化
3.图书管理系统的E-R图
根据系统数据流程图,我们可以列出以下系统所需的数据项:
图书管理员:
,编号,家庭住址,登陆密码
借阅者:
,性别,班级,系别,证件号码,证件类型,学号,,登记时间,还书时间
图书:
名称,作者,价格,图书类型,,入库时间,编码,书架,状态
1)图书管理系统的E-R模型如图所示:
图1-10实体之间关系E-R图
图1-11读者实体
图1-12图书实体
图1-13图书管理员实体
2)图书管理系统的数据字典
1.数据项分析
数据项名:
读者证件号
值:
11位{阿拉伯数字}
注释:
读者的图书代号
数据项名:
值:
2~8位{汉字}
数据项名:
班级
值:
字符串
数据项名:
系别
值:
3~10{汉字}
数据项名:
图书编码
值:
数字+字母
数据项名:
图书名
值:
字符串
数据项名:
图书作者
值:
[2~6个汉字}|4:
10{英文字母}]
数据项名:
图书所在架号
值:
数字+字母
数据项名:
图书出版社
值:
[4~10{汉字}|4:
20{英文字母}]
数据项名:
图书状态
值:
[在馆|不在馆]
注释:
说明图书状态
数据项名:
登记时间
值:
日期
注释:
采用4-2-2格式
2.数据结构分析
名字:
读者信息
组成:
{图书借阅证号++班级+学号+系别+入学年份}
组织:
按读者证号排序
注释:
包括所有读者信息
名字:
读者借阅信息
组成:
{图书代号+图书名+图书作者+图书借阅证号+图书出版社+借阅时间+到期时间}
组织:
按关键字排序
名字:
图书馆图书信息
组成:
{图书代号+索书号+图书所在架号+图书名+图书作者+图书出版社+图书情况}
组织:
按关键字排序
名字:
图书管理员信息
组成:
{管理员姓名+管理员ID+管理员登陆密码+管理员权限}
组织:
按关键字排序
3.数据流分析
数据流名:
读者信息
组成:
图书借阅证号+学号
数据流名:
读者信息
组成:
图书借阅证号++班级+学号+系别+入学年份
数据流名:
读者借阅信息
组成:
图书代号+图书名+图书作者+图书出版社+借阅时间+到期时间
数据流名:
借还书信息
组成:
图书条码号+图书代号+读者借阅证号+读者条码号+读者学号+借阅时间+到期时间
数据流名:
图书查询条件
组成:
[图书查询条件1|图书查询条件2]
数据流名:
图书查询条件1
组成:
图书名
注释:
条件中的名称可以不是全称,即实现模糊查询。
数据流名:
图书查询条件2
组成:
(图书作者)+(图书出版社)
注释:
条件中的名称可以不是全称,即实现模糊查询。
不能两项都为空。
数据流名:
图书基本信息
组成:
图书名+图书代号+图书作者+索书号+图书出版社+图书所在架号
数据流名:
要更改的读者信息
组成:
[图书借阅证号+密码++班级+学号+系别+入学年份]
数据流名:
要修改的图书基本信息
组成:
图书代号+索书号+图书架号+图书名+图书作者+图书出版社+图书情况
4.加工分析
加工名:
借书登记
编号:
1.2
激发条件:
读者借书
加工逻辑:
1.确认读者信息是否正确
2.如果正确读入读者基本信息,奖罚信息,读者借阅信息,判断是否超出读者的借阅能力和是否有处罚,如果超出借阅能力,则不能再借,或者有惩罚而没有处理,则不能再借
3.如果可以借,将读者借的图书的信息添加到读者借阅信息表里,以记录读者的借阅情况,
频率:
1次/本
加工名:
还书登记
编号:
2.2
激发条件:
读者还书
加工逻辑:
1.确认图书信息是否正确
2.正确后,从读者借阅信息表中删除读者此图书。
频率:
1次/本
加工名:
简单的图书查询
编号:
3.2
激发条件:
收到图书查询条件
加工逻辑:
1.从图书基本信息表,检索符合要求的记录
2.有,则显示符合条件的记录,无,则报错
加工名:
图书信息添加
编号:
4.2
激发条件:
收到新到图书的数据
加工逻辑:
1.对图书编号分类,录入图书信息
2.判断图书基本信息表中是否已存在此书
3.若没有,则将新信息写入图书基本信息表中
频率:
1次/本
加工名:
图书信息删除
编号:
4.3
激发条件:
图书退役
加工逻辑:
1.从图书基本信息表中调出要删除图书的信息
2.确认无误后,从图书基本信息表中删除这些图书的信息
加工名:
图书信息修改
编号:
4.4
激发条件:
收到修改数据
加工逻辑:
1.判断是否存在该图书的信息
2.若存在,将修改的信息写入图书基本信息表中
加工名:
修改读者信息
编号:
5.1
激发条件:
管理员正确登陆
加工逻辑:
1.修改读者密码
2.将修改后的密码存入读者信息库文件中
加工名:
读者信息添加
编号:
5.2
激发条件:
新生入学或添加读者
加工逻辑:
1.录入读者信息
2.添加到读者基本信息表中
加工名:
读者信息删除
编号:
5.3
激发条件:
退学或毕业或该读者已不存在
加工逻辑:
1..从读者基本信息表中调出要删除读者的信息
2.确认无误后,从读者基本信息表中删除这些读者的信息
加工名:
读者信息修改
编号:
5.4
激发条件:
读者信息有误
加工逻辑:
1.找到该读者基本信息
2.填入要修改的数据,确认无误后存入读者基本信息表中
四、系统的概要设计
1.软件体系结构图
图1-14系统体系结构图
2.数据库设计
数据结构名
数据结构
组成
Book
图书馆图书信息
BookID;BookName;BookWriter
BookPublish;BookPrice;BookDate;
BookClass;BookState;
Reader
读者信息
ReaName,ReaSex,ReaNo,ReaDep,ReaGrade,ReaKind,E-mail
Maneger
管理员信息
MID,MName,Mpwd,MAdress
数据结构列表
列名
数据类型
可否为空
说明
BookID
Varchar(50)
notnull
图书编号
BookName
Varchar(50)
notnull
图书的书名
BookWriter
Varchar(50)
notnull
图书作者
BookPulish
Varchar(50