图书馆管理系统
数据库设计报告
一、设计背景 1
二、需求分析 1
2.1系统目标 1
2.2需求定义 1
2.3数据流图 2
2.4数据字典 3
三、功能说明 10
四、概念结构设计 11
4.1 分ER图 12
4.2总ER图 12
五、逻辑结构设计 13
六、物理结构设计 14
七、设计人员 16
正文
一、设计背景
随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆藏书的树木逐渐增大,这也挑战了图书管理方面的技术,以前的人工管理方式已经不再适应现在的环境,取而代之的是先进的图书管理系统,通过使用Access创建的图书管理系统可以让管理人员方便而快捷的进行管理、查询、借阅、录入等工作。
图书管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。我们小组开发图书管理信息系统就是采用现代化的信息管理方式代替手工管理方式,提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。
二、需求分析
1.1 系统目标
图书管理信息系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强.数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
系统开发的总体任务是实现各种信息的系统化,规范化和自动化。
1.2 需求定义
图书馆管理系统开发。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。
本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。本系统结构分为读者信息管理、图书信息管理,读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。本系统主要解决的问题是利用关键字对数据库进行查询。
1.3 数据流图
1.3.1 总数据流图
1.3.2入库处理
1.3.3借书处理
1.3.4还书处理
1.2数据字典
3.1数据项
数据项名: 借阅者姓名
数据项含义说明:借阅者姓名
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:借阅者姓名
数据项名: 借书卡号
数据项含义说明:借阅者借书卡号
别名:无
数据类型: 字符型
长度:10
取值范围:0000000000-9999999999
取值含义:借阅者借书卡号
数据项名: 班级
数据项含义说明:借阅者所属班级
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:借阅者所属班级名称
数据项名: 院系
数据项含义说明:借阅者所属院系
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:借阅者所属院系名称
数据项名: 管理员编号
数据项含义说明:管理员编号
别名:无
数据类型: 字符型
长度:10
取值范围:0000000000-9999999999
取值含义:管理员编号
数据项名: 管理员姓名
数据项含义说明:管理员姓名
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:管理员姓名
数据项名: 负责书库
数据项含义说明:管理员所负责书库
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:管理员所负责书库名称
数据项名: 图书编号
数据项含义说明: 图书编号
别名:借书编码
数据类型: 字符型
长度:10
取值范围:0000000000-9999999999
取值含义:图书编号
数据项名: 书名
数据项含义说明:书名
别名:无
数据类型: 字符型
长度:20
取值范围:任意字符
取值含义:图书名称
数据项名: 作者名称
数据项含义说明: 作者名称
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:作者名称
数据项名: 出版社
数据项含义说明: 出版社名称
别名:无
数据类型: 字符型
长度:20
取值范围:任意字符
取值含义:出版社名称
数据项名:出库日期
数据项含义说明: 图书出库日期
别名:借出日期
数据类型: 字符型
长度:8
取值范围:00000000-99999999
取值含义:YYYY-MM-DD
数据项名: 入库日期
数据项含义说明: 图书入库日期
别名:无
数据类型: 字符型
长度:8
取值范围:00000000-99999999
取值含义:YYYY-MM-DD
数据项名: 所存书库
数据项含义说明: 图书所存书库
别名:无
数据类型: 字符型
长度:10
取值范围:任意字符
取值含义:图书所存书库名
数据项名: 在库量
数据项含义说明: 图书在库量
别名:无
数据类型: 字符型
长度:5
取值范围:00000-99999
取值含义:图书在库数量
数据项名: 出版日期
数据项含义说明: 图书出版日期
别名:无
数据类型: 字符型
长度:8
取值范围:0000000-99999999
取值含义:YYYY-MM-DD
数据项名: 到期日期
数据项含义说明: 借阅到期日期
别名:无
数据类型: 字符型
长度:8
取值范围:00000000-99999999
取值含义:图书借阅到期日期
数据项名: 拖欠日期
数据项含义说明: 图书拖欠日期
别名:无
数据类型: 字符型
长度:5
取值范围:00000-99999
取值含义:图书拖欠天数
数据项名: 罚款数目
数据项含义说明: 罚款数目
别名:无
数据类型: 字符型
长度:5
取值范围:00000-99999
取值含义:图书拖欠罚款数目
数据项名: 销书数量
数据项含义说明: 销书数量
别名:无
数据类型: 字符型
长度:5
取值范围:00000-99999
取值含义:图书销毁数量
数据项名: 销书日期
数据项含义说明: 销书日期
别名:无
数据类型: 字符型
长度:8
取值范围:00000000-99999999
取值含义:YYYY-MM-DD
3.2数据结构
数据结构名:借阅者
含义说明:借阅者信息
组成:借阅者姓名,借书卡号,班级,院系
数据结构名: 管理员
含义说明: 管理员信息
组成: 管理员编号,管理员姓名,负责书库
数据结构名: 借书清单
含义说明: 借书信息
组成:借书卡号,借书编码,借出日期,到期日期,拖欠日期
数据结构名: 罚款清单
含义说明: 罚款信息
组成:管理员编号,借书卡号,借书编号,罚款数目
数据结构名: 图书
含义说明: 图书信息
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
数据结构名: 销书清单
含义说明: 销书信息
组成:图书编号,图书名称,日期,数量
3.3数据流
数据流名:借书卡
说明:借阅者信息
数据流来源:借阅者
数据流去向:借书处理
组成:借阅者姓名,借书卡号,班级,院系
平均流量:50
高峰期流量:100
数据流名:图书
说明:借阅图书信息
数据流来源:借书处理
数据流去向:借阅者
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
平均流量:50
高峰期流量:100
数据流名:还书
说明:借阅者还书
数据流来源:借阅者
数据流去向:还书处理
组成:借阅者姓名,借书卡号,班级,院系
平均流量:50
高峰期流量:100
数据流名:不合格的借书卡
说明:借书卡无法使用
数据流来源:借书处理
数据流去向:借阅者
组成:借阅者姓名,借书卡号,班级,院系
平均流量:50
高峰期流量:100
数据流名:借书清单
说明:借出书目信息
数据流来源:借书处理
数据流去向:图书库存情况存档
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
平均流量:50
高峰期流量:100
数据流名:还书清单
说明:归还书目信息
数据流来源:还书处理
数据流去向:图书库存情况存档
组成:借书卡号,借书编码,借出日期,到期日期,拖欠日期
平均流量:50
高峰期流量:100
数据流名:入库新书清单
说明:入库新书信息
数据流来源:管理员
数据流去向:新书入库处理
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
平均流量:20
高峰期流量:50
数据流名:库存清单
说明:库存图书信息
数据流来源:新书入库处理
数据流去向:图书库存情况存档
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
平均流量:20
高峰期流量:50
数据流名:销书计划
说明:销毁图书信息
数据流来源:管理员
数据流去向:销书处理
组成:图书编号,图书名称,日期,数量
平均流量:10
高峰期流量:25
数据流名:销书清单
说明:销毁图书目录
数据流来源:销书处理
数据流去向:图书库存情况存档
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
平均流量:10
高峰期流量:25
三、 功能说明
本系统需要完成的功能主要有6部分:
(1)实现对图书信息的修改,包括定义、查询、更新、删除等操作
图书信息包括图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库。入库日期,出库日期等。
(2)实现对借阅者信息的修改,包括定义、查询、更新、删除等操作
借阅者信息包括借书卡号,姓名,班级,院系等。
(3) 实现借书功能。
.借书信息的输入,包括借书卡号,图书编号,借出日期,到期日期,拖欠日期,罚款数目等。
.借书信息的查询,修改,包括图书编号,借书卡号,借阅者姓名,图书名称,借出日期等。
(4) 实现还书功能
.还书信息的输入,包括图书编号,借书卡号,借阅者姓名,图书名称,借出日期等。
.还书信息的查询和修改,包括还书信息编号,读书编号,读者姓名,书籍编号,书籍名称,借书日期,还书日期,备注信息等。
(5)实现销书功能
对不符合要求的图书进行出库处理,包括图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库。入库日期,出库日期等。
(6)实现对管理员信息的修改,包括定义、查询、更新、删除等操作
管理员信息包括编号,姓名,负责书库等。
系统功能结构图
四、概念结构设计
4.1实体及其属性图
1、图书信息模块
2、借阅者信息模块
3、图书管理员信息模块
4、销书单模块
4.2实体及其联系图
4.3完整的E-R图
五、逻辑结构设计
从理论‘E-R模型’到理论‘关系模型’的整理转换,通过E-R模型到关系模型的转化,可以得到如下关系模式:
借阅者(借书卡号,姓名,班级,院系)
管理员(编号,姓名,负责书库)
图书(图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期)
借阅(借书卡号,图书编号,借出日期,到期日期,拖欠日期,罚款数目)
销书清单(管理员编号,图书编号,图书名称,销书日期,销书数量)
管理(管理员编号,借书卡号,图书编号)
六 物理结构设计
概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。为了能够建立起最终的物理系统,还需要将概念结构进一步转化为DBMS所支持的关系模型。这就是数据库逻辑设计所要完成的任务。
用sql2005建立数据库数据表。
(1)打开sql2005 在数据库上点击右键
(2)选择新建数据 数据库名取做db_TSGL
(3)在db_TSGL中“表”选项上右键选择新建表
进入表的字段设置
(4)表的字段设置如下图
借阅者基本信息表
管理员信息表
图书信息表
借阅信息表
销书信息表
管理信息表
第二篇:图书馆管理系统报告报告
图书馆管理系统报告报告
摘要
图书馆作为一种信息资源的集散地,在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息,图书和用户借阅资料繁多,包含很多的信息数据的管理。随着图书馆规模的不断扩大,图书数量也相应增加,若采取手工方式对图书资料和图书借阅情况进行人工管理,由于资料繁多,手工处理的工作量大,整体管理效率低下而且容易出错,造成人力与物力过多浪费,图书馆管理费用增加,影响整个图书馆运作和管理,也不方便读者对图书资料的查阅。因此,必须制定一套合理、有效、规范和使用的图书馆管理信息系统,对对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
关键词 图书管理系统; 需求; 功能
1.问题描述
1.1背景
图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,图书管理系统也是有了很大的发展,商业化的图书信息管理软件也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。
1.2研究目的
随着科学技术的不断提高,计算机科学日渐成熟,作为计算机应用的一部分,使用计算机对图书信息进行管理,具有手工管理所无法比拟的优点。图书管理系统的开发是一个老生常谈的问题,以其作为数据库开发的示例不仅是因为他的开放性,而且还因为它是一个开放的系统,比较成熟,通过开发这个系统,对个人的软件开发能力有很大帮助。本系统主要实现对图书馆信息的管理,图书的使用对象是借阅者,例如学生,教师;管理者是图书馆的管理员。因此根据这些信息,本系统的主要功能就是:实现图书馆图书信息的管理和维护,如用户信息管理,图书馆规则维护,新书入库,整理图书,修改图书信息和进行查询等;以及服务系统的图书信息查询,图书的借出和归还等功能。图书信息管理系统能够为用户提供充足的信息和快捷的查询手段.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书信息管理的效率,也是图书管理的科学化、数字化、正规化管理,与世界接轨的重要条件。用计算机制作的图书信息管理系统还可以通过功能强大的Internet网及时的向读者发布图书的最新动态,因此,开发这样一套管理软件成为很有必要的事情。而今,这类相关的管理系统已广泛的应用在各行各业,成为各行业提高相关管理效率的重要手段。图书信息管理系统也在日益广泛地应用于各图书馆的管理中,大大提高了图书管理的相关管理效率,其在图书管理中所起的作用是显而易见的。该项目开发的软件为学校图书信息管理系统软件,是鉴于目前学校图书数剧增,图书信息呈爆炸性增长的前提下,图书馆对图书信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有中小型图书馆的图书信息的管理.。
1.3数据需求
图书馆管理信息系统需要完成功能主要有:
1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。
2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。
3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。
4.书籍类别信息的查询、修改,包括类别编号、类别名称。
5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。
6.书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。
7.借书信息的输入,包括读者借书证编号、书籍编号、借书日期。
8.借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。
9.还书信息的输入,包括借书证编号、书籍编号、还书日期。
10.还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。
11.超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。
12.超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等
1.4事物需求
(1)在读者信息管理部分,要求:
a.可以查询读者信息。
b.可以对读者信息进行添加及删除的操作。
(2 )在书籍信息管理部分,要求:
a.可以浏览书籍信息,要求:
b.可以对书籍信息进行维护,包括添加及删除的操作。
(3)在借阅信息管理部分,要求:。
a.可以浏览借阅信息。
b.可以对借阅信息进行维护操作。
(4)在归还信息管理部分,要求:
a.可以浏览归还信息
b.对归还信息可修改维护操作
(5)在管理者信息管理部分,要求:
a.显示当前数据库中管理者情况。
b.对管理者信息维护操作。
(6)在罚款信息管理部分,要求:
a.可以浏览罚款信息
b.对罚款信息可以更新
1.5关系模式
书籍类别(种类编号,种类名称)
读者(借书证编号,读者姓名,读者性别,读者种类,登记时期)
书籍(书籍编号,书籍名称,书籍类别,书记作者,出版社名称,出版日期,登记日期)
借阅(借书证编号,书籍编号,读者借书时间)
还书(借书证编号,书籍编号,读者还书时间)
罚款(借书证编号,读者姓名,借书证编号,书籍编号,读者借书时间)
2.方案图表设计
2.1 E-R图
根据1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。
图书管理信息系统可以划分的实体有:书籍类别信息实体、读者信息实体、书籍信息实体、借阅记录信息实体,归还记录信息实体。用E-R图一一描述这些实体。
2.1.1类别实体E-R图:
图2-1类别实体E-R图
2.1.2读者信息实体E-R图:
图2-2 读者信息实体E-R图
2.1.3信息实体E-R图:
图2-3信息实体E-R图
2.1.4.记录信息实体E-R图:
图2-4 记录信息实体E-R图
2.1.5记录信息实体E-R图:
图2-5记录信息实体E-R图
2.1.6罚款信息实体E-R图:
图2-6罚款信息实体E-R图
2.1.6总的信息实体E-R图:
图2-7总的信息实体E-R图
2.2数据流程图
图2-7系统的数据流程图
3.总体设计
3.1软件开发工具
数据库:Mysql5.03
服务器:tomcat 6.03
MyEclipse7.5、Jdk1.6、Visio、文本编辑器等工具
3.2开发方法
(1)开发方法
系统开发基本思路:快速原型 + 增量迭代
快速原型法(rapid prototyping)是近年来提出的一种以计算机为基础的系统开发方法,它首先构造一个功能简单的原型系统,然后通过对原型系统逐步求精,不断扩充完善得到最终的软件系统。增量迭代,根据前后相邻系统构造之间的差异,按照专门的计划和评估标准产生一个新的软件版本过程。
①阶段一:产生系统原型。经过一个快速的软件开发过程:需求分析、系统设计、系统实现3阶段,实现一个原型系统。
②阶段二:增量迭代完善系统。在快速原型的基础上,结合系统的需求分析,对系统进行增量开发不断完善系统功能。
3.3开发模式
系统采用了MVC开发模式。早期的JSP规范提出了两种用JSP技术建立应用程序的方式。这两种方式在术语中分别称作模式一 和模式二,它们的本质区别在于处理批量请求的位置不同。在模式一体系中,JSP页面独自响应请求并将处理结果返回客户。这里仍然存在表达与内容的分离,因为所有的数据存取都是由bean来完成的。尽管模式一体系十分适合简单应用的需要,但它不能满足复杂的大型应用程序的实现。
模式二体系结构,是一种把JSP与Servlet联合使用来实现动态内容服务的方法。它吸取了两种技术各自的突出优点,用JSP生成表达层的内容,让Servlet完成深层次的处理任务。在这里,Servlet充当控制者的角色,负责管理对请求的处理,创建JSP页需要使用的bean和对象,同时根据用户的动作决定把那个JSP页传给请求者。JSP页内没有处理逻辑;它仅负责检索原先由Servlet创建的对象或beans,从Servlet中提取动态内容插入静态模板。这是一种有代表性的方法,它清晰地分离了表现层与业务逻辑,明确了角色的定义以及开发者与网页设计者的分工。模式二即MVC开发模式。
MVC开发模式包括三类对象:① 模型(Model)对象:是应用程序的主体部分。② 视图(View)对象:是应用程序中负责生成用户界面的部分。③ 控制器(Control)对象:是根据用户的输入,控制用户界面数据显示及更新Model对象状态的部分。
在MVC开发模式中,控制器控制应用程序的流程,控制器委派请求给一个合适的处理者,这个处理者和一个模型在一起,每一个处理者就好像是一个在请求和模型之间的适配器,模型描述或者包装一个应用程序的商业逻辑和状态,控制一般在控制器和合适的视图之间前后运动,动作可以用一组地图来决定,通常从数据库或者配置文件读取,这就在模型和视图之间提供了一个宽松的关系,从而提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。
MVC的开发模式实现了功能模块和显示模块的分离,从而简化了软件开发过程中相关人员的工作,使不同的部分的修改通常不会影响其他部分的工作,这种分工合作与 JSP 混淆代码逻辑和显示层的做法相比有较大优势。这样网页设计人员可以只把精力放在数据的显示部分(View 视图),而程序员则只要关注如何写好程序的控制层(Controller,控制器)以及商业逻辑和数据管理(模型 Model)。
4.结束语
4.1课程设计心得
通过此次课程设计,真正达到了学与用的结合,在实验过程中,从建立数据开始,对图书馆管理信息系统设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,懂得了不少有关系统开发过程中的知识,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助。
参考文献
[1] 软件工程导论(第五版)张海藩 清华大学出版社
[2] 数据库系统教程 (第3版) 施伯乐 丁宝康 高等教育出版社
[3] 软件工程—实践者的研究方法 (美)RogerS.Pressman 著
机械工业出版社
[4] JAVA毕业设计指南与项目实践 孙更新 宾晟 科学出版社