资源描述
专业方向组设计
学校图书借阅管理系统
指 导 教 师 李 鑫
院(系、部) 电信学院
专 业 班 级 计算机06—2
学 号 0606010212
姓 名 宋成龙
电子与信息工程学院
计算机科学系
参考目录
1 问题定义 2
1.1 项目背景 2
1.2 项目目标及范围 2
2 可行性研究 6
2.1 现行系统的系统流程图 6
2.2 技术可行性分析 6
2.3 经济可行性分析 6
2.4 可行性研究结论 6
3 需求分析 7
3.1 **系统功能需求分析 7
3.2 **系统性能需求分析 7
3.3 **系统数据需求分析 7
3.4 **系统数据流图 7
3.4.1 数据流图符号说明 7
3.4.2 **系统数据流图 8
3.5 **系统数据字典 15
4 总体设计 25
4.1 总体设计的任务 25
4.2 总体设计的原理 25
4.2.1 模块化 25
4.2.2 模块独立 25
4.3 **系统软件结构设计 25
4.3.1 **系统的层次图 25
4.3.2 **系统各模块描述 26
4.4 **系统数据库设计 26
4.4.1 **系统数据库的逻辑模型 26
4.4.2 **系统数据库的物理模型 30
5 详细设计 41
5.1 详细设计的任务及目标 41
5.2 **系统各模块算法描述 41
5.3 **系统人机界面设计 46
6 编码 48
6.1 程序设计语言的选择 48
6.2 编码中涉及的规则 49
7 测试 50
7.1 软件测试的任务 50
7.2 软件测试的方法 50
7.3 测试用例设计 50
8 **系统用户手册 52
8.1 软硬件环境 52
8.2 软件操作指南 52
附录 A 源程序清单 56
1 问题定义
1.1 项目背景
由于学校的不断发展,学生不断增多,学校图书馆的图书品种、数量也在不断的增多。以前的人工管理方式暴露出了很多问题。例如,学生想要借一本书,图书管理人员还要花大量时间在茫茫书海中苦苦寻觅。浪费了大量宝贵的时间。学校为了提高工作效率,同时摆脱图书管理人员在工作中出现的很多问题,现学校需要开发一个图书人借阅管理系统。
1.2 项目目标及范围
学校图书借阅管理系统主要的目的是实现图书馆的信息化管理。图书馆的主要业务就是图书的借阅和归还,因此系统最核心的功能便是实现图书的借阅和归还。此外,还需要提供图书的信息查询、读者图书借阅情况的查询功能。项目实施后,能够提高图书馆的图书借阅、归还流程,提高工作效率。整个项目需要在两个月的时间内交付用户使用。
时间就是金钱,效率就是生命。项目实施后,图书馆的每个业务流程所用时间缩短了2/3,所用人员减少了1/2,原来两个人3分钟可以完成的工作,现在只需1个人1分钟就可以完成。极大的提高了效率,间接为学校节约了大量成本。
2 可行性研究
2.1 现行系统的系统流程图
读者
图书归还
图书续借
图书借阅
管理员
图书档案
管理图书档案信息
图书借阅档案
完成图书续借
根据读者信息获取借阅图书信息
管理读者档案信息
完成图书借阅
读者档案
归还相关图书
图书归还档案
获取读者信息
系统流程图
2.2 技术可行性分析
开发一个学校图书借阅管理系统,涉及到的技术问题不会太多,主要用到的技术就是struts框架。Struts框架是专门开发web应用程序的框架,它是采用Java servlet和jsp技术来构造mvc模式的web应用的一种框架,它是由一组相互协作的类,servlet和jsp标签组成的一个可重用的mvc设计模式。Struts是框架而不是库,但也包括了标签库和独立的使用程序类,因此,应用struts框架开发web程序是最佳的选择。
2.3 经济可行性分析
经济可行性即进行成本效益分析,评估项目的开发成本,估算开发成本是否会超过项目预期的全部利润。开发学校图书借阅管理系统提高了图书管理人员的工作效率,节约了学校的开支。因此,在经济上是可行的。
2.4 可行性研究结论
经过以上的分析,学校图书借阅管理系统值得开发。
3 需求分析
3.1系统功能需求分析
根据图书借阅管理系统工程的特点,可以将其分为系统管理,读者管理,图书管理,图书借还,系统查询等5个部分。
图书借阅管理系统
图书借还
读者管理
系统查询
图书管理
系统设置
口令更改
参数设置
退出系统
图书到期提醒
图书借阅查询
图书档案查询
图书归还
图书续借
图书借阅
图书档案管理
图书类型管理
读者档案管理
读者类型管理
书架设置
管理员设置
图书馆信息
3.2 系统性能需求分析
*界面设计友好,美观。
*数据存储安全,可靠。
*信息分类清晰,准确。
*强大的查询功能,保证数据查询的灵活性。
*实现对图书借阅、续借和归还过程的全程数据信息跟踪。
*提供图书借阅排行榜,为图书馆管理员提供了真实的数据信息。
*提供借阅到期提醒功能,使图书管理员可以及时了解到已经到达归还日期的图书借阅信息。
*提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
*具有易维护性和易操作性。
3.3 系统数据需求分析
*图书信息
*读者信息
*图书借阅信息
*图书归还信息
*管理员信息
3.4 系统数据流图
3.4.1 数据流图符号说明
数据的源点/终点
变换数据的处理
数据存储
数据流
3.4.2 系统数据流图
3.5 系统数据字典
4总体设计
4.1总体设计的任务
1. 划分出组成系统的物理元素—— 程序、文件、数据库、人工过程和文档。
2. 设计软件结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互之间的关
系。
4.2总体设计的原理
4.2.1模块化
把程序划分成若干个模块,每个模块完成一个子功能,把这些模块组装成一个整体,可以完成指定的功能,满足用户的需求。
4.2.2模块独立
每个模块只完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单,和其他模块之间没有过多的相互作用。
4.3系统软件结构设计
4.3.1系统的层次图
4.3.2系统各模块描述
1)公共模块
2)管理员模块
3)图书档案管理模块
4)图书借还模块
5)读者管理模块
6)系统查询模块
4.4 系统数据库设计
4.4.1系统数据库的逻辑模型
根据以上各节对系统所做的需求分析和系统设计,规划出本系统中使用的数据库实体分别为图书档案实体,读者档案实体,图书借阅实体,图书归还实体,管理员实体,权限实体,参数实体,图书类型实体,书架实体,出版社实体,读者类型实体,图书馆实体。
(1)图书档案实体。
图书档案实体包括编号、条形码、书名、类型、作者、译者、出版社、价格、页码、书架、录入时间 操作员、是否删除等属性。图书档案实体的E-R图如下:
类型
书名
条形码
作者
编号
图书
译者
出版社
价格
。。。
(2)读者档案实体
读者档案实体包括自动编号、姓名、性别、条形码、职业、出生日期、有效证件、证件号码
、电话、电子邮件、登记日期、操作员、备注、类型等属性。读者档案实体的E-R图如下:
出生日期
职业
条形码
性别
姓名
编号
证件号码
有效证件
图书
书架
电话
(3)图书借阅实体
(4)图书归还实体
(5)管理员实体
4.4.2 系统数据库的物理模型
数据库逻辑数据模型的一个关系对应了数据库中的一个表。
(1)设计数据表
根据逻辑模型和数据字典先分析和设计数据表。需要确定数据表名称,所含字段名称、类型、
宽度以及应当建立的索引字段等。
(2)创建数据表
根据数据库逻辑数据模型创建的数据表分别如下:
□tb_manager(管理员信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
Id
int(10)unsigned
NO
Yes
自动编号
name
Varchar(30)
Yes
NULL
管理员名
Pwd
Varchar(30)
Yes
NULL
密码
□tb_purview(权限表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(11)
No
Yes
0
管理员ID号
sysset
tinyint(1)
Yes
0
系统设置
readerset
tinyint(1)
Yes
0
读者管理
bookset
tinyint(1)
Yes
0
图书管理
borrowback
tinyint(1)
Yes
0
图书借还
sysquery
tinyint(1)
Yes
0
系统查询
□tb_parameter(参数设置表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
cost
int(10)unsigned
Yes
NULL
办证费
validity
int(10)unsigned
Yes
NULL
有效期限
□tb_booktype(图书类型表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
typename
varchar(30)
Yes
NULL
类型名称
days
int(10)unsigned
Yes
NULL
可借天数
□tb_bookcase(书架信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
name
varchar(30)
Yes
NULL
书架名称
□tb_bookinfo(图书信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(11)
No
Yes
自动编号
barcode
varchar(30)
Yes
NULL
条形码
bookname
varchar(70)
Yes
NULL
书名
typeid
int(10)unsigned
Yes
NULL
类型
author
varchar(30)
Yes
NULL
作者
translator
varchar(30)
Yes
NULL
译者
ISBN
varchar(20)
Yes
NULL
出版社
price
float(8,2)
Yes
NULL
价格
page
int(10)unsigned
Yes
NULL
页码
bookcase
int(10)unsigned
Yes
NULL
书架
inTime
date
Yes
NULL
录入时间
operator
varchar(30)
Yes
NULL
操作员
del
tinyint(1)
Yes
0
是否删除
□tb_borrow(图书借阅信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
readerid
int(10)unsigned
Yes
NULL
读者编号
bookid
int(10)
Yes
NULL
图书编号
borrowTime
date
Yes
NULL
借书时间
backtime
date
Yes
NULL
应还时间
operator
varchar(30)
Yes
NULL
操作员
ifback
tinyint(1)
Yes
0
是否归还
□tb_giveback(图书归还信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
readerid
int(11)
Yes
NULL
读者编号
bookid
int(11)
Yes
NULL
图书编号
backTime
date
Yes
NULL
归还时间
operator
varchar(30)
Yes
NULL
操作员
□tb_publishing(出版社信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
ISBN
varchar(30)
Yes
NULL
ISBN号
pubname
varchar(30)
Yes
NULL
出版社名称
□tb_reader(读者信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
No
Yes
自动编号
name
varchar(20)
NULL
姓名
sex
varchar(4)
Yes
NULL
性别
barcode
varchar(30)
Yes
NULL
条形码
vocation
varchar(50)
Yes
NULL
职业
birthday
date
Yes
NULL
出生日期
paperType
varchar(10)
Yes
NULL
有效证件
paperNO
varchar(20)
Yes
NULL
证件号码
tel
varchar(20)
Yes
NULL
电话
email
varchar(100)
Yes
NULL
电子邮件
createDate
date
Yes
NULL
登记日期
operator
varchar(30)
Yes
NULL
操作员
remark
text
Yes
NULL
备注
typeid
int(11)
Yes
NULL
类型
□tb_readertype(读者类型信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
NO
Yes
自动编号
name
varchar(50)
Yes
NULL
名称
number
int(4)
Yes
NULL
可借数量
□tb_library(图书馆信息表)
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int(10)unsigned
NO
Yes
自动编号
librayname
varchar(50)
Yes
NULL
馆名
curator
varchar(10)
Yes
NULL
馆长
tel
varchar(20)
Yes
NULL
联系电话
address
varchar(100)
Yes
NULL
联系地址
eamil
varchar(100)
Yes
NULL
E-mail
url
varchar(100)
Yes
NULL
网址
createDate
date
Yes
NULL
建馆日期
introduce
text
Yes
NULL
简介
5 详细设计
5.1 详细设计的任务及目标
详细设计任务决定各个部模块内部特性(内部的算法及使用的数据),详细设计的任务不是编写程
序,而是给出程序设计蓝图,程序设计人员根据蓝图编写程序。目的是为软件结构图(SC图或HC图)
中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。表达工
具可以由开发单位或设计人员自由选择,但它必须具有描述过程细节的能力,而且在编码阶段能够直
接翻译为程序设计语言书写的源程序。
5.2 系统各模块算法描述
5.3 系统人机界面设计
6 编码
6.1 程序设计语言的选择
本系统采用JAVA语言编程。
6.2 编码中涉及的规则
7 测试
7.1软件测试的任务
软件测试的任务是发现程序中的错误。
7.2软件测试的方法
软件测试的方法有黑盒测试和白盒测试。
7.3 测试用例设计
8 系统用户手册
8.1软硬件环境
开发本项目所用的操作系统是windows XP,开发工具为MyEclipse,数据库采用MySQL5.0,项目运行服务器为tomcat6.0。
8.2 软件操作指南
(1)用户登录图书馆管理系统后,可看到图书借阅排行榜,通过排行榜可以看出借阅图书的名称、图书类型、借阅次数等相关信息。
(2)单击“系统设置”/“图书馆信息”命令,对图书馆信息进行设置操作。
(3)单击“系统设置”/“管理员设置”命令,对管理员信息进行添加、权限设置、查询及删除操作。
(4)单击“系统设置”/“参数设置”命令,对办证费用及有效期限信息进行添加操作。
(5)单击“系统设置”/“书架设置”命令,对书架信息进行添加、修改及删除操作。
(6)单击“读者管理”/“读者类型管理”命令,对读者类型信息进行添加、修改及删除操作。
(7)单击“读者管理”/“读者档案管理”命令,对读者信息进行添加、修改及删除操作。
(8)单击“图书管理”/“图书类型设置”命令,对图书类型信息进行添加、修改及删除操作。
(9)单击“图书管理”/“图书档案管理”命令,对图书信息进行添加、修改及删除操作。
(10)单击“图书借还”/“图书借阅”命令,对图书借阅信息添加操作。
(11)单击“图书借还”/“图书续借”命令,对图书续借信息进行添加操作。
(12)单击“图书借还”/“图书归还”命令,对图书归还信息进行添加操作。
(13)单击“系统查询”/“图书档案查询”命令,对图书档案信息进行查询操作。
(14)单击“系统查询”/“图书借阅查询”命令,对借阅的图书信息进行查询操作。
(15)单击“系统查询”/“借阅到期提醒”命令,对借阅到期提醒信息进行查询操作。
(16)单击“更改口令”按钮,对当前的用户密码进行修改操作。
(17)单击“退出系统”按钮,退出当前操作系统。 3、通过活动,使学生养成博览群书的好习惯。
B比率分析法和比较分析法不能测算出各因素的影响程度。√
C采用约当产量比例法,分配原材料费用与分配加工费用所用的完工率都是一致的。X
C采用直接分配法分配辅助生产费用时,应考虑各辅助生产车间之间相互提供产品或劳务的情况。错
C产品的实际生产成本包括废品损失和停工损失。√
C成本报表是对外报告的会计报表。×
C成本分析的首要程序是发现问题、分析原因。×
C成本会计的对象是指成本核算。×
C成本计算的辅助方法一般应与基本方法结合使用而不单独使用。√
C成本计算方法中的最基本的方法是分步法。X
D当车间生产多种产品时,“废品损失”、“停工损失”的借方余额,月末均直接记入该产品的产品成本
中。×
D定额法是为了简化成本计算而采用的一种成本计算方法。×
F“废品损失”账户月末没有余额。√
F废品损失是指在生产过程中发现和入库后发现的不可修复废品的生产成本和可修复废品的修复费用。X
F分步法的一个重要特点是各步骤之间要进行成本结转。(√)
G各月末在产品数量变化不大的产品,可不计算月末在产品成本。错
G工资费用就是成本项目。(×)
G归集在基本生产车间的制造费用最后均应分配计入产品成本中。对
J计算计时工资费用,应以考勤记录中的工作时间记录为依据。(√)
J简化的分批法就是不计算在产品成本的分批法。(×)
J简化分批法是不分批计算在产品成本的方法。对
J加班加点工资既可能是直接计人费用,又可能是间接计人费用。√
J接生产工艺过程的特点,工业企业的生产可分为大量生产、成批生产和单件生产三种,X
K可修复废品是指技术上可以修复使用的废品。错
K可修复废品是指经过修理可以使用,而不管修复费用在经济上是否合算的废品。X
P品种法只适用于大量大批的单步骤生产的企业。×
Q企业的制造费用一定要通过“制造费用”科目核算。X
Q企业职工的医药费、医务部门、职工浴室等部门职工的工资,均应通过“应付工资”科目核算。X
S生产车间耗用的材料,全部计入“直接材料”成本项目。X
S适应生产特点和管理要求,采用适当的成本计算方法,是成本核算的基础工作。(×)
W完工产品费用等于月初在产品费用加本月生产费用减月末在产品费用。对
Y“预提费用”可能出现借方余额,其性质属于资产,实际上是待摊费用。对
Y引起资产和负债同时减少的支出是费用性支出。X
Y以应付票据去偿付购买材料的费用,是成本性支出。X
Y原材料分工序一次投入与原材料在每道工序陆续投入,其完工率的计算方法是完全一致的。X
Y运用连环替代法进行分析,即使随意改变各构成因素的替换顺序,各因素的影响结果加总后仍等于指标的总差异,因此更换各因索替换顺序,不会影响分析的结果。(×)
Z在产品品种规格繁多的情况下,应该采用分类法计算产品成本。对
Z直接生产费用就是直接计人费用。X
Z逐步结转分步法也称为计列半成品分步法。√
A按年度计划分配率分配制造费用,“制造费用”账户月末(可能有月末余额/可能有借方余额/可能有贷方余额/可能无月末余额)。
A按年度计划分配率分配制造费用的方法适用于(季节性生产企业)
展开阅读全文