图书管理系统名称.docx
《图书管理系统名称.docx》由会员分享,可在线阅读,更多相关《图书管理系统名称.docx(22页珍藏版)》请在冰豆网上搜索。
图书管理系统名称
一、导言
1、目的
本说明书描述了图书馆管理系统软件的设计需求,读者为该管理系统软件的设计人员、代码编写人员、测试人员、维护人员和该项目的审核验收人员,是作为设计人员进行软件设计的依据。
2、项目背景
软件名称:
图书管理系统
项目开发单位:
河北工程大学科信学院09计算机一班
项目开发者:
齐玉荣张培邹建付向飞
用户单位:
科信学院
3、定义
(1)Mysql:
数据库管理软件
(2)DBMS:
数据库管理系统
(3)Windows2000/2003/XP:
运行环境
(4)JSP:
软件开发语言
(5)Myeclipse:
开发工具
4、参考资料
[1]韩万江《软件项目管理案例教程》机械工业出版社2009.4
[2]张海藩《软件工程导论》清华大学出版社2008.2
二、总体设计
1、需求规格
按照需求分析文档中的规格要求,使用条形码扫描器进书、借书、还书,使得信息传递准确、流畅。
同时,系统最大限度地实现易安装,易维护性,易操作性,运行稳定,安全可靠。
主要进行数据的输入输出项目:
图书信息:
书名、编号、作者、定价、出版社、数量、是否可借
用户信息:
学号、姓名、年龄、性别、借书限制、是否允许借书、
是否有过期未还书目
借阅信息:
学号、编号、数量、结束日期
2、运行环境
硬件环境:
最低配置:
CPU:
Pentium3800以上或其它兼容规格,内存:
256M以上,
硬盘:
20GB以上空间
推荐配置:
CPU:
Pentium41.6G,内存:
512M以上,硬盘:
100GB以上空间。
软件环境:
WindowsServer2003/2000/XP/Server2008
SQLServer2000
3、基本设计概念和处理流程
读者借还书处理流程如图1:
图1读者借还书处理流程图
更新图书资料处理流程如图2:
图2更新图书资料处理流程图
4、总体结构设计
图书馆管理系统
图书借还
图书管理
读者管理
系统设置
排行榜
系统管理
图书馆信息
书架管理
读者类型管理
读者档案管理
图书类型管理
图书档案管理
图书借阅
图书归还
读者借阅排行榜
管理员设置
更改口令
退出系统
图书逾期管理
图书借阅排行榜
图书借阅查询
图书档案查询
图3系统结构图
5、功能需求与程序的关系
本系统包括图书馆内图书信息,学校在校学生的信息以及学生的借阅信息。
此系统功能分为面向学生和面向管理员两个部分,其中学生可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认。
6、人工处理过程
手工绘制系统结构设计图,人工设计系统基本界面,统筹总体规划
三、系统子模块介绍
1、读者注册登录模块
读者首次登陆图书管理系统时,需要先进行注册使成为系统的用户,并在读者信息库中保留相应的信息。
注册后可进入登录页面,登录系统后,用户可以使用系统开放给普通用户的各种功能。
在个人信息中,注册用户还可以查看并修改自己的个人信息。
丢失自己密码的注册用户可以通过个人资料认证来重新找回自己的密码。
2、图书信息查询、预览模块
登录用户可以在这个模块中查询系统中记录的图书信息,包括书名,编号,作者(译者),出版社,定价,存放位置,数量以及可借阅复本数等信息。
并且可以预览自己感兴趣的书籍的封面,评价,部分内容等。
3、读者信息管理
读者把个人信息传到个人信息管理模块进行管理,可以对个人信息进行修改。
管理员也可以利用这个模块提供的功能对读者个人信息进行修改和删除
读者借阅记录模块
只有管理员有权限操作这个模块。
管理员可以查询读者的注册信息和借阅记录,并且可以根据实际情况添加、修改、删除读者的借阅记录。
4、图书借阅模块
只有管理员有权限操作这个模块。
管理员在得到读者借阅的需求时,在该模块中添加借阅记录,并依据该记录修改图书信息以及读者信息中的借阅图书部分,并且如果读者需求借阅的图书已经全部借出,管理员可以根据图书借阅模块中的记录查找该图书流向,然后通过通信方式(短信或者Email)尽量通知借阅了该图书的读者,使得该图书能尽早归还。
5、图书归还模块
只有管理员有权限操作这个模块。
管理员在得到读者归还图书的需求时,在在图书借阅记录表中查询到该借阅信息。
根据该信息判断图书是否是该处借出图书,判断图书是否逾期,是否需要对读者罚款。
并修改图书借阅记录表和读者借阅记录。
6、管理员管理、注册、登录模块
管理员的确定是通过开始的注册决定的,在注册时有若是想注册为管理员必须要满足一定的要求(职位、学历、管理员人数),才能注册成为管理员,一般也客户方指定的几人(一般为3人)为管理员。
注册后可进入登录页面,登录系统后,用户可以使用系统开放给普通用户的各种功能。
在个人信息中,注册用户还可以查看并修改自己的个人信息。
丢失自己密码的注册用户可以通过个人资料认证来重新找回自己的密码。
四、数据总体结构设计
1、数据库概念结构设计
数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这个阶段不用考虑所采用的数据库管理系统、操作系统类型、机器类型等问题。
这阶段可用的工具很多。
用的最多的是E-R图(Entity-Relation,实体-关系图),另外还有许多计算机辅助工具(ComputerAidedSoftwareEngineering,CASE)可以帮助进行设计。
本系统采用了E-R图的方法进行数据库概念结构设计。
E-R图是描述数据实体关系的一种直观描述工具。
这种图中有:
(1)实体:
用方框表示,方框内为实体的名称。
(2)实体的各种属性:
用椭圆表示,椭圆内为属性名称。
使用线段将其和响应的实体连接起来。
(3)实体之间的联系:
用菱形表示,菱形内为联系的名称。
(4)实体和实体之间的联系较多,比较常见的联系有l:
1,l:
N和M:
N这三种。
2、数据库逻辑结构设计
概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计。
也就是要将概念上的结构转化为数据库系统所支持的实际数据模型。
第一种转化是将实体转化为关系表。
这种转化较简单,需要将实体的属性定义为表的属性即可。
第二种转化是联系的转化。
即将各个实体之间的联系转化为表格之间的关系,如外部键的定义。
在上面工作的基础上归纳出人员管理数据库表格的组成之间的联系等等。
该数据库系统具有以下方面的特点:
(1)结构合理,对一个人员建立多条记录。
(2)所建立的数据冗余度小,独立性强。
(3)建档、修改、查询、统计快速而准确。
(4)保密性好、可靠性好。
五、系统接口设计
1、外部接口
(1)用户界面
按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。
主对话框:
由六个功能按钮构成
借书、还书、图书查询、系统操作、帮助、退出
借书对话框:
图书书号编辑框:
用于输入图书书号;
读者信息显示区:
用于显示读者信息(姓名);
读者已借图书信息显示区:
用于显示读者已借图书信息;
书号提交按钮:
提交借书请求;
退出按钮:
退出借书对话框。
还书对话框:
图书书号编辑框:
用于输入图书书号;
读者信息显示区:
用于显示本次图书归还者信息(读者证号、读者姓名);
已还图书信息显示区:
用于显示读者本次已还图书信息(书名、超期天数);
未还图书信息显示区:
用于显示读者尚未归还的图书信息(书名、借书日期);
提交按钮:
用于提交还书请求;
返回按钮:
用于退出还书对话框。
图书查询对话框:
查询方式复选框:
用于选择查询所需满足的条件(作者、书名、出版社、出版时间);
关键字编辑框:
用于输入查询关键字(作者、书名、出版社);
时间条件单选框:
用于选择出版时间所需满足的条件类型;
时间编辑框:
用于编辑年与月;
开始查询按钮:
用于提交查询请求;
退出查询按钮:
用于退出图书查询对话框;
系统操作对话框:
由八个功能按钮构成
图书库操作、读者库操作、数据统计、系统设置、数据备份、数据恢复、更改口令、返回。
图书库操作对话框:
图书书号编辑框:
用于显示图书书号;
书名编辑框:
用于显示编辑图书书名;
作者编辑框:
用于显示编辑作者;
单价编辑框:
用于显示编辑图书单价;
出版社编辑框:
用于显示编辑出版社;
出版年月编辑框:
用于显示编辑图书出版的年月;
图书状态单选框:
用于显示编辑图书状态(在库、借出、异常);
纪录总数显示:
用于显示图书记录的总数;
当前记录序号显示:
用于显示当前记录在记录集中的位置;
“前一个”按钮:
显示和编辑前一个记录;
“后一个”按钮:
显示和编辑后一个记录;
“移动到”按钮:
显示和编辑指定图书书号的记录;
“加入”按钮:
增加图书记录;
“删除”按钮:
删除当前的图书记录;
“退出”按钮:
退出图书库操作对话框。
读者库操作对话框:
读者证号编辑框:
用于显示读者证号;
读者姓名编辑框:
用于显示编辑读者姓名;
联系方法编辑框:
用于显示编辑读者联系方法;
已借图书信息显示区:
用于显示读者借书信息(书名、借书日期);
纪录总数显示:
用于显示读者记录的总数;
当前记录序号显示:
用于显示当前记录在记录集中的位置;
“前一个”按钮:
显示和编辑前一个记录;
“后一个”按钮:
显示和编辑后一个记录;
“第一个”按钮:
显示和编辑第一个记录;
“最后一个”按钮:
显示和编辑最后一个记录;
“移动到”按钮:
显示和编辑指定读者证号的记录;
“加入”按钮:
增加读者记录;
“删除”按钮:
删除当前的读者记录;
“退出”按钮:
退出图书库操作对话框。
(6)数据统计对话框:
统计条件单选框:
用于选择统计条件类别(图书、读者、借书情况);
图书统计条件复选框:
用于指定统计条件包含的相关项(图书书号、书名、作者、单价、出版社、出版时间、图书状态);
读者统计条件复选框:
用于指定统计条件包含的相关项(读者证号、读者姓名、联系方法);
借书情况统计条件复选框:
用于指定统计条件包含的相关性(图书相关、读者相关、出借日期);
统计输出设置单选框:
用于选择统计结果的输出类别;
图书统计输出设置复选框:
用于指定输出项(图书书号、书名、作者、单价、出版社、出版时间、状态);
读者统计输出设置复选框:
用于指定输出项(读者证号、姓名、联系方法);
借书情况统计输出设置复选框:
用于指定输出项(图书相关、读者相关、出借日期);
条件选择下拉列表栏(数字项):
用于指定具体统计条件(>、<、=);
条件选择下拉列表栏(字符项):
用于指定具体统计条件(=、包含);
条件选择下拉列表栏(日期项):
用于指定具体统计条件(先于、后于、介于);
条件选择下拉列表栏(图书状态项):
用于指定具体统计条件(在库、出借、异常);
关键字编辑框:
用于输入编辑统计关键字;
“开始统计”按钮:
提交统计请求;
“返回”按钮:
退出数据统计对话框。
系统设置对话框:
系统参数设置区:
用于显示编辑系统参数(最多可借图书数、借书期限);
“保存设置”按钮:
提交更新系统设置请求;
系统操作员记录序号显示:
用于显示当前记录的序号;
系统操作员账号编辑框:
用于显示编辑账号;
系统操作权限复选框:
用于显示编辑系统操作权限(图书库操作许可、读者库操作许可、系统操作许可);
“上一个”按钮:
显示编辑前一个系统操作员;
“下一个”按钮:
显示编辑后一个系统操作员;
“加入”按钮:
加入新的系统操作员账号;
“删除”按钮:
删除当前系统操作员账号;
2、内部接口
(1)主模块
输入:
操作系统传递至的各种消息以及用户的输入数据
输出:
用户界面显示
上层模块:
无
下层模块:
借书模块、还书模块、图书查询模块、系统管理模块
(2)借书模块
输入:
读者证号、图书书号
输出:
读者信息、相关借书信息
上层模块:
主模块
下层模块:
读者查验模块、图书查验模块、借书登记模块、相关信息获取模块。
(3)还书模块
输入:
图书书号
输出:
相关读者信息
上层模块:
主模块
下层模块:
借书记录查验模块、还书登记模块、相关信息获取模块、还书信息记录模块。
(4)书籍查询模块
输入:
查询方式及相应的查询关键字
输出:
查询结果集的视图显示
上层模块:
主模块
下层模块:
显示控制模块、查询命令生成模块、数据库查询模块、数据显示模块。
(5)系统操作模块
输入:
与系统管理对话框有关的各种用户及系统消息
输出:
上层模块:
主模块
下层模块:
系统操作权限查验模块、图书库操作模块、读者库操作模块、数据统计模块、系统设置模块。
(6)读者查验模块
输入:
读者证号
输出:
合法\非法读者标志
上层模块:
借书模块
下层模块:
数据库查询模块
(7)相关信息获取模块
输入:
读者证号
输出:
与读者证号匹配的借书记录集(含相关图书信息)
上层模块:
借书模块、还书模块、读者库操作模块
下层模块:
数据库查询模块
(8)图书查验模块
输入:
图书书号
输出:
图书允许/禁止出借标志
上层模块:
借书模块
下层模块:
数据库查询模块
(9)借书登记模块
输入:
读者证号、图书书号
输出:
操作结果信息
上层模块:
借书模块
下层模块:
数据库操作模块
(10)借书记录查验模块
输入:
图书书号
输出:
借书记录存在/不存在标志,借书记录
上层模块:
还书模块、图书库操作模块
下层模块:
数据库查询模块
(11)还书信息记录模块
输入:
借书记录
输出:
已还图书信息
上层模块:
还书模块
下层模块:
无
(12)还书登记模块
输入:
图书书号
输出:
操作结果信息
上层模块:
还书模块
下层模块:
数据库操作模块
(13)查询命令生成模块
输入:
用户界面的输入
输出:
数据库查询命令(SQL命令)
上层模块:
图书查询模块、数据统计模块
下层模块:
无
(14)数据显示模块
输入:
数据库操作的结果集
输出:
用户界面的数据列表显示
上层模块:
图书查询模块、数据统计模块。
下层模块:
无
(15)系统操作权限查验模块
输入:
用户名、用户口令
输出:
合法/非法用户标志
上层模块:
系统操作模块
下层模块:
数据库查询模块
(16)数据库操作模块
输入:
与图书库操作子对话框有关的用户输入及系统消息
输出:
下层模块:
图书记录集获取模块、显示更新模块、更新当前记录模块、借书记录查验模块
(17)读者库操作模块
输入:
与读者库操作子对话框有关的用户输入及系统消息
输出:
上层模块:
系统操作模块
下层模块:
读者记录集获取模块、显示更新模块、更新当前记录模块、相关信息获取模块
(18)书籍记录集获取模块
输入:
输出:
图书记录集
上层模块:
图书库操作模块
下层模块:
数据库查询模块
(19)读者记录集获取模块
输入:
输出:
读者记录集
上层模块:
读者库操作模块
下层模块:
数据库查询模块
(20)显示更新模块
输入:
输出:
用户界面显示
上层模块:
图书库操作模块、读者库操作模块、系统设置模块。
下层模块:
(21)更新当前记录模块
输入:
输出:
操作结果信息
上层模块:
图书库操作模块、读者库操作模块、系统设置模块
下层模块:
数据库操作模块
(22)数据统计模块
输入:
统计方式及其关键字
输出:
统计结果视图显示
上层模块:
系统操作模块
(23)数据库操作模块
输出:
上层模块:
借书模块、还书模块、图书库操作模块、读者库操作模块、系统设置模块。
下层模块:
无
(24)数据库查询模块
输入:
数据查询命令
输出:
查询结果集
上层模块:
读者查验模块、图书查验模块、借书记录查验模块、相关信息获取模块、图书查询模块、系统操作权限查验模块、数据统计模块、系统设置模块。
下层模块:
无
(25)上层模块
系统操作模块数据结构设计
六、系统数据库及数据结构设计
1、数据库设计
数据对象的E-R模
读者
姓名
编号
性别
院系
职位或学历
年龄
图1读者E-R图模型
管理员
姓名
管理员编号
性别
年龄
电话
图2管理员E-R图模型
图书
书名
图书编码
作者
出版社
数量
位置
图3图书E-R图模型
读者
姓名
年龄
编号
性别
院系
管理员
姓名
管理员编号
性别
电话
年龄
图书
书名
图书编号
作者
出版社
数量
管理
管理
借、还
还书日期
借书日期
职位或学历
位置
1
N
N
N
N
N
图6-4总体E-R图模型
2、逻辑结构设计要点
数据库表详解
表1图书借还记录表(book_BandR):
字段名
类型
大小
说明
备注
reader_ID
char
10
读者ID
book_ID
char
10
图书ID
borrow_date
date
8
借书日期
Return_dae
date
8
还书日期
表2图书信息表(book_information):
字段名
类型
大小
说明
备注
book_id
char
10
图书ID
主键
book_name
char
45
书名
author
char
45
作者
publisher
char
45
出版社
price
char
45
价格
book_class
char
45
图书类型
book_status
char
45
图书状态
表3读者信息表(reader_information):
字段名
类型
大小
说明
备注
reader_id
char
10
读者ID
主键
reader_name
char
45
读者名字
reader_level
char
10
读者权限级别
Email
char
45
邮箱
telephone
char
45
电话
address
char
45
地址
表4密码储存表(key):
字段名
类型
大小
说明
备注
user_name
char
10
用户名
主键
user_passward
char
10
密码
user_grade
char
10
分类
七、运行设计
1、运行模块的组合
程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。
2、运行控制
本软件控制流程:
主程序运行,等待用户的输入,根据用户的输入调用各子模块。
3、运行时间
各模块运行时间比较短,不至于影响软件主体的质量,因此不予讨论。
八、系统出错处理设计
1、出错信息
(1)用户登录时,输入用户名必须为数字,密码不能为空,否则报错。
(2)读者注册,用户名必须为数字,密码必须为数字或字母,否则报错。
(3)管理员或用户查询图书时,必须选择图书一项属性,并根据该属性输入查找内容,必须选一种查找方式,否则报错。
(4)管理员修改或删除图书(读者)时,输入的图书(读者)ID必须存在,否则报错。
(5)管理员添加图书(读者)时,输入的图书(读者)ID必须不存在,否则报错。
(6)管理员进行借阅归还图书操作时,必须按要求填入信息,否则报错。
(7)管理员修改图书信息时,必须符合各项属性,否则报错。
2、补救措施
对于一般错误,给予用户提示信息,让其重新输入或退出。
对于严重错误,启动备份文件恢复,建议使用帮助文件。
3、系统维护设计
由于本项目比较小,除了严格按照软件工程的科学方法开发软件、认真建立文档、编码阶段写详细住室外,并没有特殊维护设计,如设计维护模块等。
不过,我们的DBA会定期备份数据资料,并进行管理。