基于php的图书馆管理系统的设计与实现文档格式.docx
《基于php的图书馆管理系统的设计与实现文档格式.docx》由会员分享,可在线阅读,更多相关《基于php的图书馆管理系统的设计与实现文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
4.7读者信息管理24
4.7.1读者信息管理概述24
4.7.2读者信息管理技术分析24
4.7.3读者信息管理实现过程24
4.8系统查询25
4.8.1系统查询概述25
4.8.2系统查询技术分析26
4.8.3系统查询实现过程26
4.9更改口令27
4.10小结27
5测试28
5.1测试目的28
5.2测试方法28
5.2.1测试环境28
5.2.2功能测试29
5.2.3用户界面测试30
5.2.4单元测试30
5.3小结32
6结束语33
6.1总结33
6.2展望33
参考文献34
致谢35
1绪论
该部分主要介绍当前图书馆管理系统的背景及意义,并且简要介绍论文的结构安排。
基于PHP的图书馆管理系统能够方便有效地管理图书,大大的提高了图书馆管理的效率。
1.1课题研究的背景
随着电子计算机和通信技术的发展,人类已经逐渐地进入信息化社会。
图书馆管理也从人工文本操作发展到了计算机自动化操作。
虽然,当前的图书馆大部分都在使用计算机来进行管理,但是,仍有很多的学校图书馆和书店的图书管理系统只能进行一些基本的图书借阅等功能操作,在及时性、有效性等方面有所欠缺。
针对目前普遍的图书管理系统存在的功能不全、操作复杂、系统要求高等一系列问题,设想一款操作简单、高效率的图书管理系统。
基于目前很多图书管理系统只能在服务器上操作问题,有必要建立一个图书管理系统有效的支持WEB服务,以使图书管理工作规范化、系统化、程序化,提高信息处理的速度和准确性,并且能通过Internet能够及时、准确修改图书情况。
本系统的设计有效的支持WEB访问,使得资源利用最大化,用户只需通过浏览器就可以实现操作,并且该操作灵活简单。
此设计的目标在于开发一个功能齐全,操作简单明了的图书馆借阅系统。
本系统结合图书馆实际需要分析,采用功能很强大的MyEclipse作为开发工具,使用PHP来开发B/S(Browser/Server)模式的图书管理系统。
整个系统符合操作简便、界面友好、灵活、实用、安全的要求出发,完成借书、还书的全过程,包括读者资源、书籍资源、借书信息、还书信息,能够及时地了解各个环节的信息的变更。
1.2课题研究的意义
实现图书馆对外借书、还书的简易操作,提高图书馆对最频繁工作的效率;
实现图书馆对外所藏图书的按类别、书名等多方面的查询,最大的方便读者和图书馆工作人员对所需图书的查询;
建立图书馆外借读者数据库,方便工作人员对读者进行有效管理;
实现图书馆对新书入库,旧书封存的简单处理,并且建立书籍档案,方便进货,整体提高图书管理的效率。
1.3管理信息系统的发展现状
随着计算机技术的发展以及计算机网络的逐渐普及,英特网成为人们查找信息的重要场所。
二十一世纪是信息的时代,所以信息的交换和信息流通显得的特别重要。
为使信息能及时快速的流通,因此,使用计算机来管理图书成为必然,并且通过Internet来管理图书也成为主流。
目前,中小型以及大型图书馆、书店等均开始使用各种系统管理软件来辅助管理图书,但是大多数的图书管理系统都是只能够进行一些基本的图书借还功能,还存在一些缺陷。
例如:
图书借阅到期后,将直接记为未归还,并开始计算超期罚款,而读者或许还并不知道已经超期,而导致要缴纳大量的罚款。
1.4相关技术与工具的介绍
本系统采用PHP进行编写,采用Dreamweaver进行页面的设计,采用MyEclipse进行集成环境的开发,采用Tomcat服务器,使用B/S模式进行系统的开发。
并且使用MySQL数据库,进行后台数据的管理。
MyEclipse是一个多编程语言开发平台,安装上支持相应的语言开发插件,就可以在MyEclipse下开发出来Java以外的C/C++、C#、JavaFXscript等语言的工程。
MyEclipse是Eclipse的插件,也是一款功能强大的集成开发环境,支持代码编写、配置、测试以及除错,使用方便。
B/S(Brower/Server)结构即浏览器/服务器模式,是WEB兴起后的一种网络结构模式。
他最大的优点就是能在任何地方进行操作而不用安装其他专业软件,只要有一台能连接网络的电脑就能使用,客户端无需安装和维护,系统扩展容易[5]。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在各个不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL被广泛地应用在Internet上的中小型网站中。
由于其速度快、体积小、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL作为网站数据库。
1.5论文结构安排
本文主要介绍图书馆管理系统的开发背景和相关技术及工具介绍、需求分析、总体设计和详细设计与实现,最后介绍系统的相关测试,全文共分六章,具体安排如下所示:
1、绪论:
本章主要介绍系统的开发背景和意义及系统所完成的工作、开发该系统所用到的工具及相关技术和整个论文的结构安排等。
2、需求分析:
本章主要介绍系统的设计目标,而且对系统的功能需求,性能需求等方面进行详细介绍。
3、总体设计:
本章主要介绍系统的整体设计,而且使用系统功能图对整个系统的功能设计、数据库的概念结构设计、逻辑结构设计和物理结构设计等方面进行详细的介绍。
4、详细设计与实现:
本章主要分为详细设计和系统实现两部分。
介绍核心功能模块的设计与实现,并借助相应的实现界面,来陈述功能设计与实现过程。
5、测试:
本章介绍项目测试的目的和方法。
而且结合关键功能给出设计的测试用例和测试结果。
6、结束语:
本章主要分为总结和展望两部分。
总结部分对本论文的撰写进行回顾与总结,展望部分对图书馆管理系统的可扩展性进行介绍与分析。
1.6小结
本章首先介绍本课题的研究背景及意义深入研究本系统的重要性。
最后介绍论文的结构安排,以便于在可以保证论文质量的前提下按照计划顺利完成本论文的撰写。
2需求分析
前一章主要是针对开发背景和意义、技术与工具的研究,在其基础上该章主要是系统的需求分析。
需求在软件产品的整个生存期中占有非常重要的位置,它是软件工程项目的依据和出发点。
无论是软件的开发还是软件的维护都是以满足需求作为最终目的的。
需求分析是软件开发的基础,需求分析得出的结论是软件开发后续阶段的工作依据,直接决定着最终软件能否满足用户的需求,决定着软件开发的成功与否。
2.1任务概述
通过计算机对图书进行管理,不仅为图书馆的管理注入了新的生机,而且在运行过程中省了大量的人力、物力、财力和时间,可以提高图书馆的效率,还为图书馆在读者群中树立了一个全新的形象,并为图书馆日后发展奠定一个良好的基础。
通过对一些图书馆的实际考察、分析,并结合图书馆的要求以及实际的市场调查,将整个图书管理的业务抽象并描绘如下:
1、新的图书购进后,分别对其进行类别汇总并加以编号。
2、新书编号后,上架以备读者借阅。
3、如读者需要借阅图书,就会在其借阅登记表记录下借阅的相关信息与借阅日期。
4、学生借阅图书后,及时地归还图书,并记录下还书日期。
2.2功能需求
经过对用户的调查,在业务流程的基础上,基本可以确定系统必须达到的目标,以下是图书管理系统必须具备的功能:
1、网站设计页面要求美观大方、个性化,功能全面,操作简单。
2、要求实现基础信息的管理平台。
3、要求对所有读者进行管理。
4、要求实现图书借书排行、了解当前的畅销书。
5、商品分类详尽,可按不同类别查看图书信息。
6、提供快速的图书信息、图书借阅检索功能,保证数据查询的灵活性。
7、实现图书借阅、图书续借、图书归还的功能。
8、实现综合条件查询,如按用户指定条件查询、按日期时间段查询、综合条件查询等。
9、要求图书借阅、续借、归还时记下每一笔记录的操作员。
10、实现对图书借阅、续借和归还过程的全程数据信息跟踪。
11、提借阅到期提醒功能,使管理者可以及时了解到已经到达归还日期的图书借阅信息。
12、自动续借功能,对即将到期未归还而且未续借的读者,自动续借一次。
13、提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
14、具有易维护性和易操作性。
根据功能需求分析确定该系统划分为以下几个管理模块:
系统设置(管理员设置、书架设置)、读者管理(读者类型管理、读者档案管理)、图书管理(图书类型管理、图书档案管理)、图书借还(图书借阅、图书续借、图书归还)、系统查询(图书档案查询、图书借阅查询、借阅到期提醒)、更改口令等。
用例图如图2-1所示:
图2-1图书馆管理系统用例图
其中读者档案管理用例描述如下:
表2-1管理员管理读者档案
用例编号
101
用例名称
管理员管理读者档案
用例概述
管理员通过读者管理模块管理读者的档案
范围
管理员添加、修改和删除读者的基本信息
主参与者
管理员
次要参与者
操作员
项目相关人
利益说明
利益
管理员添加、修改和删除读者的任意信息
前置条件
管理员用户已成功登入系统
后置条件
读者新的信息成功加入数据库
成功保证
读者信息设置成功
基本事件流
步骤
活动
1
管理员用户在主界面点击读者管理模块中的读者档案管理
2
系统显示读者信息管理界面
3
管理员在该界面进行添加、修改、删除读者信息操作
4
系统将操作结果写入数据库
5
用例终止
扩展事件流
无
2.3性能需求
为了保证系统能够安全、长期、稳定、可靠、高效的运行,图书管理系统应该满足以下的性能需求:
1、系统处理的准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
在系统设计和开发过程中,要充分考虑系统目前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足用户对信息处理的需求。
2、系统的开放性和系统的可扩充性
图书管理系统在开发过程中,应该充分考虑以后的可扩充性。
例如用户查询的需求要不断的更新和完善。
所有这些,都要求系统提供足够的手段进行功能的调整和扩充。
而要实现这一点,应通过系统的开放性来完成,即系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。
通过软件的修补、替换完成系统的升级和更新换代[6]。
3、系统的易用性和易维护性
图书馆管理系统直接面对使用人员,而使用人员却对计算机并不是很熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面。
4、系统的标准性
系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些都要符合主流国际、国家和行业标准。
5、系统的先进性
目前计算系统的技术发展相当快,作为图书管理系统工程,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。
这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。
另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并且先进的产品。
6、系统的响应速度
图书管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。
在进行统计分析时,根据所需数据量的不同而尽可能的提高反应速度,原则是保证操作人员不会因为速度问题而影响工作效率。
2.4接口需求
用户界面:
界面的设计应本着简洁、漂亮、通俗易懂,操作简便,并具有一定的灵活性;
尽可能采用开发工具构造界面,使需求定义和设计、编码相衔接。
硬件接口:
采用标准的键盘、鼠标控制接口;
能够提供与多种打印机之间的接口,这一部分主要由操作系统决定。
2.5可行性论证
通过对图书的各个方面进行了具体的了解之后,现对开发图书管理系统的可行性进行分析。
技术上可行:
系统所需硬件设备,市场上销售且价格较低,甚至可以使用原有的设备;
软件上,操作系统采用Windows系列操作系统,系统开发工具为MyEclipse10,采用PHP开发,后台数据库采用MySQL5.0这些软件在MIS开发中已被大量应用,技术上都比较成熟,因此在技术上是可行的。
经济上可行:
由于中小型企业急需采用计算机来进行图书的管理,因此对开发图书管理系统大力支持。
管理上可行:
中小型企业对图书有很多的管理体制,每位读者均有卡号,同时图书馆还为每位读者建立了档案。
因此管理上可行。
另外,同时制定了培训计划,并进行了实施MIS的物质准备和工作准备。
综上所述,开发图书管理系统在技术上、经济上、管理上都是可行的。
2.6小结
本章首先对系统进行需求分析,通过对系统功能需求的分析,说明系统该完成的功能。
接着对系统的开发是否可行进行论证,确保该系统是能够进行开发的。
3总体设计
系统概要设计是系统实现一个重要的前期工作。
本章节将结合功能设计、模块划分和子模块功能设计及流程三个方面对该系统的概要设计做详细的说明。
3.1功能设计
本系统是基于B/S模式的图书馆管理系统的设计与实现。
系统功能主要包括登录,系统设置,读者管理,图书管理,图书借还,系统查询等。
通过分析本系统设计将要实现用户登录、系统设置、读者管理、图书管理、图书借还、系统查询等模块。
系统模块结构参考图3-1。
图3-1图书馆管理系统模块
3.2模块具体划分
系统主要划分为六大模块,分别是用户登录模块、系统设置模块、读者管理模块、图书管理模块、图书借阅模块和系统查询模块。
其模块具体划分参考图3-2。
各模块主要实现的功能如下:
1、系统设置
修改图书馆的基本信息,设置管理员的权限操作,添加和修改书架信息。
2、读者管理
添加和删除读者类型,对读者信息进行添加、修改、删除操作。
3、图书管理
添加、修改图书类型,对图书信息进行添加、修改、删除操作。
4、图书借阅
实现读者借书、还书、续借功能。
5、系统查询
查询图书信息、图书借阅信息和借阅到期的信息,自动续借和借阅到期提醒功能。
6、修改口令
更改个人登录密码。
图3-2图书馆管理系统功能模块图
3.3概念结构设计
在需求分析阶段已完成该系统所有的数据分析。
根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。
下面给出概念结构设计的实体图和E-R图。
1、管理员实体图:
图3-3管理员实体图
2、读者信息实体图:
图3-4读者实体图
3、图书信息实体图:
图3-5图书信息实体图
4、借书信息实体图:
图3-6借书实体信息图
5、还书信息实体图:
图3-7还书实体信息图
6、系统E-R图:
图3-8系统E-R图
3.4逻辑结构设计
逻辑结构设计的任务是把概念结构设计阶段设计完毕的基本E-R图转化为与选用的具体机器上的DBMS产品所支持的数据模型相符的逻辑结构(包括数据库模式和外模式)。
这些模式在功能性、完整性和一致性约束及数据库的可扩充性等方面应满足用户的各种要求。
E-R图型关系模型的转化要解决的问题是如何将实体和实体间的关系转化为关系模式,如何确定这些关系模式的属性和代码。
现在需要将前面的数据库概念结构化为MySQL数据库系统所支持的实际数据模型,即数据库的逻辑结构[2]。
根据优化原则进行优化设计,最终得出该系统的数据模型为:
管理员(管理员名称,密码)
图书信息(条形码,书名,类型,作者,译者,出版社,价格,页码)
读者信息(ID,姓名,性别,条形码,职业,出生日期,有效证件,证件号码,电话,E-mail,备注)
借书信息(ID,读者编号,图书编号,借书时间)
还书信息(ID,读者编号,图书编号,借书时间,归还时间,操作员)
3.5物理结构设计
物理结构设计是指根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构。
各数据表如下:
tb_manager表(管理员信息表)
管理员信息表主要用来保存管理员信息。
表tb_manager的结构如表3-1所示。
表3-1管理员信息表
字段名称
数据类型
是否为空
是否主键
默认值
描述
id
Int(10)unsigncd
NO
YES
ID自动编号
name
Varchar(30)
NULL
管理员名称
pwd
密码
tb_purview(权限表)
权限表主要用来保存管理员的权限信息,该表中的id字段与管理员信息表(tb_purview)中的id字段关联。
表tb_purview的结构如表3-2所示。
表3-2权限表
Int(11)
管理员ID号
sysset
Tinyint
(1)
系统设置
readerset
读者管理
bookset
图书管理
borrowback
图书借还
sysquery
系统查询
tb_booktype(图书类型表)
主要用来保存图书类型信息。
表tb_booktype的结构如表3-3所示。
表3-3图书类型表
ID(自动编号)
typename
类型名称
days
可借天数
tb_bookcase(书架信息表)
书架信息表主要用来保存书架信息。
表tb_bookcase的结构如表3-4所示。
表3-4书架信息表
书架名称
tb_bookinfo(图书信息表).
该表用于保存图书信息。
表tb_bookinfo的结构如表3-5所示。
表3-5图书信息表
barcode
varchar(30)
条形码
bookname
varchar(70)
书名
typeid
int(10)unsigned
类型
author
作者
translator
译者
ISBN
varchar(20)
出版社
price
float(8,2)
价格
page
页码
bookcase
书架
inTime
date
录入时间
operator
del
tinyint
(1)
是否删除
int(11)
tb_borrow(图书借阅信息表)
用于保存图书信息。
表tb_borrow如表3-6所示。
表3-6图书借阅信息表
readerid
读者编号
bookid
int(10)
图书编号
borrowTime
借书时间
backtime
归还时间
ifback
是否归还
renew
是否续借
tb_publishing(出版社信息表)
出版社信息表主要用来保存出版社信息。
表tb_publishing的结构如表3-7所示。
表3-7出版社信息表
ISBN号
pubname
出版社名称
tb_reader(读者信息表)
读者信息表主要用来保存读者信息。
表tb_reader的结构如表3-8所示。
表3-8读者信息表
姓名
sex
varchar(4)
性别
vocation
varchar(50)
职业
birthday
出生日期
paperTy