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