基于PB的图书管理系统论文Word格式.docx
- 文档编号:834815
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:50
- 大小:442.08KB
基于PB的图书管理系统论文Word格式.docx
《基于PB的图书管理系统论文Word格式.docx》由会员分享,可在线阅读,更多相关《基于PB的图书管理系统论文Word格式.docx(50页珍藏版)》请在冰点文库上搜索。
需求分析主要是了解用户的需求。
需求了解得越详细,程序的后期开发与维护费用就会越少。
一般的开发团队中,需求分析都是由资历较深的系统分析员或项目经理担当,可见它的重要性。
需求分析制订好后,需要反复修改。
将最后的结果交给用户审定,确认无误后,由系统分析员完成需求分析文档,再开始下一步工作。
(2)概要设计:
概要设计紧跟在需求分析之后。
用户需求明确后,将得到的数据分析后,开始构建数据库的逻辑结构。
此时,数据库中的表格还未成形,通过各种分析工具(如PowerDesigner等)画出数据流图,最后就可抽象出数据库的具体表结构。
这时由系统分析人员反复审核。
确认所有的需求都考虑在内,没有遗漏后,就可以开始制订概要设计文档。
概要设计文档形成后,整个程序的逻辑框架也就形成了。
(3)详细设计:
概要设计完成后,根据设计中制订的业务模块。
就可以进行详细分析设计了。
详细设计就是将各个业务模块的窗口全部建好,各个窗口控件的处理代码全部用语言表达出。
所以详细设计是整个系统中最繁琐的环节。
详细设计完成后,整个程序就确定了,再由编程人员根据详细设计文档将代码完成。
整个开发工作就宣告结束。
1)程序编码:
程序编码相对于其他环节来说比较简单,程序员只需要根据详细分析文档写程序编码,保证代码没有错误即可。
程序编码需要注意的是整个程序书写中命名的规范化与编程风格的规范化,这需要较长时间的培养来形成。
需要在不断的实践中形成自己独特的风格。
总的来说,不要过分地追求复杂的算法,因为那可能会导致后期维护人员无法读懂你的代码而造成维护的困难。
(4)测试:
程序编码完成后,就需要测试。
测试有几种类型,主要是测试代码有无逻辑错误以及在加载数据环境下程序的稳定性问题。
测试工作中发现的错误应及时改正,然后将它记录到测试文档中。
(5)打包:
测试完成,确认无误后。
程序就可以打包发行了。
打包一般使用工具如PWISE等。
以上是一个完整的MIS系统开发过程,其实不仅MIS系统,其他类型的程序开发也基本相同。
二系统需求分析
整个软件生命周期中,开发所占的费用和时间都很小。
后期维护工作一般要占整个软件生命周期的80%以上。
所以系统分析很重要,一个好的系统分析可以减少很多后期维护工作。
1现行业务描述
下面以一所学校的图书馆为例子进行分析,画出图书馆的组织结构图如下:
图2.1
该图书馆各个部门负责的主要业务如下:
(1)采编组主要负责图书采编工作,包括购置新书、打印编目、增加数量。
(2)目录厅主要负责读者查询工作,包括可借图书(按图书类别、图书名称或图书作者查询);
新书目录(按图书类别、日期查询)。
(3)借阅组主要负责图书流通、查询统计、借阅查询等工作。
(4)阅览室、工具书室主要负责读者阅览工作,包括:
阅览各种杂志、报纸、阅览各种工具书。
下面绘制出图书馆流通业务中借书的流程图:
(1)读者在目录厅查阅索引卡;
(2)读者写出所借图书的分类号、种次号、交给图书管理员,并出示本人的借书证;
(3)图书管理员根据图书的分类号、种次号到书库找书;
(4)将图书交给读者,并由读者填写所借图书的借书卡。
(5)图书管理员把借书卡保存到写有该读者借书证号的口袋里。
得出该图书馆业务流程图如下所示:
图2.2
2现行系统存在问题的分析
该图书馆工作大部分还是进行着手工管理,工作起来效率很低,由于不可避免的人为因素,经常造成数据的遗漏、误报。
计算机信息化管理有着储存信息量大、速度快等许多优点,提供给我们的处理信息及时快捷,同时也提高了我们工作人员的自身素质。
3解决方案
基于以上的对问题的分析,利用计算机给我们提供信息,及时地调整学校图书馆图书结构,并且对学生们的借阅过程形成一整套动态的管理就十分必要了。
图书馆信息系统的建立,需要进行用户的需求调查与分析,以确定系统目标,提出解决
问题的详细方案,这是系统建设的重要环节。
学校图书馆规模相对于商业图书馆小,但要有着完善的图书信息,对每一册书要有详细的记录信息,功能上对系统的需求是全面的。
因此对用户的需求可分为四个方面:
一方面是图书馆工作人员通过计算机来管理各类图书,分类编号,调整图书结构,增加图书库存,适应学生的需求;
二方面是学生们能通过计算机来查询浏览图书馆中的图书,来确定自己需要的书籍,为借阅做好准备;
三方面是工作人员对学生们的借书证发放;
四方面也是图书馆的核心工作,对图书的借阅管理。
这四个方面形成了学校图书馆一个工作整体,采用计算机自动化信息处理,可方便快捷地共享信息、交流信息,高效地协同工作。
在软、硬件方面对系统的需求,软件要求易学,界面友好,容易掌握,可以很简单方便的管理各种图书信息。
硬件的配置要求不能太高,这样可以很好的适应当前的学校图书馆。
在开发方式上对系统的需求,由于学校图书馆是一种无商业利益的,所以系统设计开发的周期要短,在短时间内完成,减少开发成本,提高开发效率,方便、简单、实用作为系统开发的指导思想。
三系统总体结构设计
如果要完成一个完整的图书管理系统,需要的相关信息很多。
由于种种条件的限制,同时考虑到开发成本,所以本系统仅实现基本的管理功能。
并不能完全满足上面例子所描述的图书馆,使用前应进行二次开发。
1系统目标设计
系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:
书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。
提供方便的查询方法。
如:
以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;
以借阅人编号对借阅人信息进行检索;
以出版社名称查询出版社联系方式信息。
提供统计分析功能。
可以展现出图书类型比例、库存与借出比例。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2系统功能分析
根据以上功能,将图书管理系统的数据分为:
数据输入部分:
主要包括图书基本信息的录入、借阅人基本信息的录入、用户基本信息的录入。
数据输出部分:
主要是各种统计查询,包括:
根据图书信息(如书名、作者、出版社等)查阅图书及其借阅信息、统计输出图书类型比例等。
数据处理部分:
主要涉及借阅和归还的处理,如一本书借出后,必须在数据库中将该书标记为已借出,以防出现数据库中有书但图书馆无书的情况;
一本书归还后,同样必须在数据库中将其标记为已经归还,以便再次借出。
3系统各功能模块设计
在系统功能分析的基础上,考虑PowerBuilder程序编制的特点,得到如图所示的系统功能模块图:
图3.1
4数据流图
(1)图书基本信息登记/修改
图3.2
说明:
出版社信息人工录入后,存放在出版社信息库中,便于今后书籍信息的录入以及出版社信息的查询。
分类信息由图书馆进行分类定制,存放在图书分类信息库中,
用于图书的分类管理。
登记新书时,当涉及到出版社和分类的填写时,只需做相应的选择即可,并存放在图书信息库中。
(2)
借阅人基本信息登记/修改
图3.3
说明:
录入借阅人基本信息后存放在借阅人信息库中。
(3)图书查询
图3.4
输入查询条件后,检索图书信息库,并反应出查询结果。
(4)图书统计
图3.5
根据选择的统计条件,检索图书分类信息库或图书信息库,并反应出统计结果。
(5)图书借阅
图3.6
输入借阅人编号,通过检索借阅人信息库,核实借阅人身份。
输入图书编号,通过
检索图书信息库,核实图书信息。
进行图书借出处理后,在图书借阅库中进行登记,
并将借出图书的在借标志设为“是”。
(6)图书归还
图3.7
输入图书编号,检索在借信息库,反应出图输借阅情况。
进行归还操作后,修改在
借信息库中相关条目,同时在图书信息库中修改相关图书在借标志为“否
四数据库设计
数据库的设计是MIS系统的核心部分,设计数据库,首先要进行需求分析,然后进行数据库的概念结构设计、逻辑结构设计、数据库结构实现等步骤。
1数据库需求分析
根据以上的需求分析和数据组织,开始设计数据结构,即根据需求勾画出实体/关系图(E/R)。
在概念上,E/R图代表的是系统需要的数据及其这些数据之间的关系。
如图所示的实体/关系图:
图4.1
从图中可以看出,在这个系统中实际存在的实体:
图书和借阅人,其中借阅人和图书是多对多关系,针对本系统,通过对图书借阅管理的内容和数据流程分析,设计数据项和数据结构如下:
(1)图书基本信息,其数据项有图书编号、图书名称、作者、出版社等。
(2)借阅人基本信息,其数据项有借阅人编号、借阅人姓名、电话等。
(3)图书借阅登记,其数据项有借阅序号、借阅图书编号、借阅人编号等。
为了实现图书信息录入的方便性与规范性以及相关的统计功能,还应增加出版社信息
与图书分类信息:
(4)出版社信息,其数据项有出版社编号、出版社名称、地址、电话、传真等。
(5)图书分类信息,其数据项有分类编号、分类名称、同一类型图书数目。
同时针对于本系统的多用户使用特点,增加用户信息表:
(6)用户信息表,其数据项有用户名、密码、用户权限。
为了实现图书借阅超期罚款制度,还应增设罚金规则表:
(7)罚金规则表,其数据项包括免费使用天数、罚金费率、规则启用开关。
2数据库逻辑结构设计
数据库设计有几个范式,一般我们要做到的是第三范式,即数据表中没有冗余字段以及同一个表中的字段没有函数依赖关系,冗余字段即在一个表中已经保存过的信息,在另一个表中就不应该存在,如果需要的话,可以通过表间的关联来得到,函数依赖性就是一个表中的字段间不应该有计算关系,如一个表中有单价字段、数量字段,就不应该有一个总金额字段。
如果程序运行过程中需要总金额,可以实时计算。
不过在一些较常用的表中,我们可以适当地保留冗余字段,这样,在程序运行过程中可以减少由于表间互相关联而使用速度降低等问题。
这就是所谓的第四范式。
数据表设计时,最好不要使用用户输入的信息作为主键,每一个数据表自己定义一个主键,添加信息是由程序自动添加,这样就可以减少数据更新时产生的错误。
表与表相关联的外键最好是由程序自动生成的主键,这样数据库就比较规范了。
另外,数据表设计时一般都应该有一些标志字段,标志字段可以定义成CHAR
(1)或BIT
型。
建议实际应用中定义成CHAR
(1)字段可以存储多种可能的状态,在最初设计时,可能我们没有考虑到的一些情况,在程序后来的开发中,可以通过设计标志字段为不同的值来解决,这样就避免了修改数据库结构。
数据库初期设计时一定要谨慎,把所有可能的情况都考虑进去,即使当时没有用到,也要将它留在数据库中作为备用字段以便将来扩充。
程序一旦开始编码,就应该尽量避免再修改数据库。
因为如果数据库结构一旦改变,
所有与修改的数据表相关的业务都有可能受到影响,而某些影响还很难看到,这样就容易形成一个恶性循环。
错误越改越多,越改越乱,最终导致程序的失败。
PB的数据窗口与其他语言的数据控件不一样,它的很多东西是预编译的。
即使你一个模块已经调试无误,但只要数据库结构改动。
相应的模块就一定要重新修改,否则一定会出问题。
图书借阅管理系统数据库中各个表的设计结果如下面几个表格所示。
每个表格表示为数据库中的一个表。
借阅人基本信息表memberinfo
记录借阅人的基本情况,memberid设为主键、索引。
表4.1
列名
数据类型
长度
可否为空
注释
Memberid
Char
10
NotNull
借阅人编号
Membername
Null
借阅人姓名
Id
varchar
20
身份证号
Add
50
联系地址
Phone
联系电话
Mobile
移动电话
用户基本信息表people
记录系统用户的用户名、密码与权限,name设为主键。
表4.2
name
用户名
password
密码
level
char
1
权限
图书基本信息表bookinfo
记录图书基本信息,bookid设为主键、索引。
表4.3
Bookid
Notnull
图书编号
Isbn
30
图书ISBN
Classname
图书类型
Title
40
图书名称
publishdate
date
-
出版日期
author
作者
words
int
字数(千字)
pub
出版社
price
numeric
19.4
价格
disk
附带光盘
keyword
关键词
number
存放代码
100
摘要
bookonloan
图书在借标志
(Y-在借N-未借)
出版社基本信息表publishinfo
记录出版社信息,pubid设为主键。
表4.4
Pubid
4
出版社编号
Pub
出版社名称
Zip
6
邮政编码
Tel
16
Fax
传真
http
网址
分类信息表bookclass
记录定制的分类情况,classid设为主键。
表4.5
Classid
2
分类编号
分类名称
Number
数目
借阅情况信息表loan
进行借阅的登记,loanid设为主键、自动增长。
表4.6
Loanid
Int
借阅序号
memberid
Loandate
借阅日期
规则信息表regular
记录设置的借阅规则,days设为主键。
表4.7
Days
免费借阅天数
Fine
Dec
5.2
罚金标准
Flag
规则开关
(1)规划有效的索引
a.在组合表的列中创建索引,包括主关键字和外部关键字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PB 图书 管理 系统 论文