图书馆管理系统说明书.docx
《图书馆管理系统说明书.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统说明书.docx(30页珍藏版)》请在冰豆网上搜索。
![图书馆管理系统说明书.docx](https://file1.bdocx.com/fileroot1/2023-2/6/59e0790f-c85e-4806-a729-32556494699b/59e0790f-c85e-4806-a729-32556494699b1.gif)
图书馆管理系统说明书
*******************
实践教学
*******************
兰州理工大学
计算机与通信学院
2010年春季学期
软件开发综合训练课程设计
题目:
图书馆管理系统
专业班级:
07级软件工程二班
姓名:
赵德林
学号:
07250313
指导教师:
马威
成绩:
目录
摘要3
序言4
1、可行性分析5
1.1问题描述5
1.2可行性分析研究5
1.2.1技术可行性5
1.2.2经济可行性5
1.2.3操作可行性6
1.3结论意见6
2、项目开发计划7
2.1编写目的7
2.2项目背景7
2.3项目概述7
2.4项目开发计划8
2.5交付期限8
3、需求分析9
3.1任务需求分析9
3.2数据流图、数据字典及实体联系图10
3.2.1数据流图10
3.2.2数据字典12
3.2.3实体联系E-R图14
4.概要设计18
4.1总体设计18
4.2系统功能模块图18
4.3数据库概念设计19
4.4数据库逻辑结构设计19
4.5连接数据库的特点22
5、详细设计23
5.1系统的主要功能23
5.2程序流程图23
5.3用户界面设计28
5.3.1一般交互设计28
5.3.2信息显示设计29
5.3.3数据输入设计29
5.4程序设计过程30
5.4.1登录界面及密码修改30
5.4.2图书添加操作及修改31
5.4.3查询操作32
设计总结33
参考文献34
致谢35
摘要
图书馆管理系统是图书馆不可缺少的部分。
图书馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理图书、期刊、试卷合订本等,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套图书馆管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
关键字:
图书管理;图书借阅;归还;系统;录入
序言
随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。
在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。
1、可行性分析
1.1问题描述
现阶段,科学信息技术日新月异,计算机迅猛发展,图书馆管理也由从原来的效率比较低的人工管理转变为现在由计算机设计的高效率图书馆管理系统,让计算机对图书馆进行自动管理,管理员可以直接在计算机上实现图书馆的信息管理,同时读者又可以用计算机进行图书的续借和信息查询。
我在现行系统初步调查的基础上提出了新系统目标。
1.2可行性分析研究
对于图书馆管理系统的开发,我经过一定程度的调查,发现要想开发出更加出色的程序系统,必须在现阶段基础上,让图书馆管理系统更加优化,让系统程序分期分批实现,具体系统目标主要从技术可行性、经济可行性、操作可行性三个方面进行研究。
1.2.1技术可行性
在这里考虑到在现有技术条件是否能顺利完成开发工作,硬、软件配置能否满足开发者需要。
根据客户提出的图书馆管理系统系统功能、性能及实现系统的各项约束条件,根据新图书馆管理系统目标来衡量所需的技术是否具备,本系统是一个数据库管理(增、删、改、查)的系统,根据现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。
1.2.2经济可行性
这里主要是对开发图书馆管理系统的经济效益进行评价,一方面是估算开发它的支出费用,其中包括设备购置费、软件开发费、管理和维护费、人员(管理员)工资和培训费等。
另一方面是估算图书馆管理这个软件可能取得的收益中可以用钱来衡量的那部分。
并对目前的软件市场进行调查,所做软件是否有很大的销售市场和相当规模的用户群。
所做软件的开发成本与客户提出的要求是否可达到双方都满意。
并且,分析系统开发是否会对其它产品或利润带来一定影响。
经过对上述几个方面的调查研究和分析,我们得出图书馆管理这个软件的市场前景是相当客观的,在经济角度来说,开发图书馆管理系统是可行的。
1.2.3操作可行性
这里考虑到图书馆管理的相关人员对开发这个图书馆管理系统是否支持。
如果图书馆管理人员积极支持该系统开发,使这个计算机设计的自动化的系统能够充分发挥作用,同时操作便于管理员理解,经过短时间的培训图书馆管理员就可以使用图书馆管理系统,同时易于读者来进行一定程度上操作。
1.3结论意见
经过认真地可行性研究,图书馆管理系统基本上做到了在技术、经济、操作、法律上的可行。
我认为按照计划上实施的前提下,全系统的设计将会按时、高质量完成。
系统研制和开发是可以进行的。
2、项目开发计划
2.1编写目的
经过项目的可行性分析,得出项目可进一步进行下去,本文档为图书馆管理系统需求分析报告,为图书馆管理系统的设计的主要依据,主要针对图书馆管理系统的概要设计和详细设计人员,作为项目验收的主要依据。
在图书馆管理系统软件进一步的开发之前首先制定出此软件项目计划。
2.2项目背景
本软件全称为图书馆管理系统。
项目根据可行性分析报告制定软件项目计划。
软件适用于普通图书馆。
这里我进行图书借阅和图书查询这两个模块的研究和开发。
2.3项目概述
满足客户的需求,实现图书馆管理的流程。
主要功能包括用户系统管理、图书资料管理、借阅者资料管理、图书查询、图书借阅、图书归还等等。
1、工作内容
让计算机对图书馆信息进行自动管理,用户可以直接在计算机上实现图书馆的信息管理,并能在一定程度上实现自动化。
2、条件与限制
开发该软件的条件比较简单,以开发单位目前的经济与技术条件已完全具备开发的条件。
该系统可在用户要求的期限内完成。
3、产品
该项目因开发时间较短,这里只给出设计思想,具体程序没写。
4、验收标准
软件的验收标准完全由用户提出的软件需求制定,能保证软件的基本符合用户的要求。
2.4项目开发计划
1、任务分解
分三个大的阶段进行开发第一阶段完成本系统需求分析,第二阶段完成数据库设计、概要设计跟详细设计,第三阶段书写整个文档。
2、预算
软件资金投入较少,具体预算分配简略。
3、关键问题
图书馆管理系统各模块之间的联系和后台数据库的完成。
使用目前的设备与现有开发技术完全可以开发出该系统,总的来说该项目没有较大的技术难点与其他的一些风险因素。
对于出现的一些小难点总都能得到解决。
2.5交付期限
所要开发的系统较简单,所有开发工作用户要求要在三周内完成,完成项目的最迟时间为2010年8月27日。
3、需求分析
3.1任务需求分析
程序流程图的优点是对控制流程的描绘很直观,易于掌握。
通过对系统的调查和可行性分析,画出程序的流程图如下所示,程序过程设计主要是在借助过程设计工具的情况下,对程序的具体实现过程进行设计。
程序的主要部分设计在这个环节完成。
经分析先给出该系统的系统流程图,如图3.1所示:
续借
图3.1系统流程图
该图书馆管理系统主要模块包括读者注册模块、用户管理模块、图书资料管理模块、借阅者资料管理模块、图书查询管理模块、图书借阅模块和图书归还模块。
系统要实现基本信息录入、修改、查询、删除等功能:
1、图书资料的录入、修改、查询、删除,图书库存的查询,以及对最近比较热门的图书的查询。
录入的图书资料主要包括图书编号、图书名称、作者、出版社、出版日期、定价、图书类别,查询的图书除了包括图书资料外还有在馆库存量、在馆状态(是/否)和热门图书。
2、借阅者资料的增删改查。
借阅者资料包括借阅者编号、借阅者姓名、性别、出生日期、所在院系和职务。
3、读者注册:
填写自己的基本信息,主要包括读者姓名、性别、出生日期、所在院系和职务。
这里借阅者被普通管理员录入基本信息后可以注册一个账号,更快捷的登录图书查询和图书续借界面,更快的借阅图书。
4、根据要求,查询统计符合条件的各类图书信息。
5、图书借阅、图书归还依据需要,对重要新信息进行统计。
3.2数据流图、数据字典及实体联系图
3.2.1数据流图
该系统数据流程图如图3.2所示:
更新普通管理员
图3.2系统数据流程图
数据流图由四种基本的元素构成:
数据流(DataFlow),处理(Process),数据存储和数据源(数据终点)。
数据流(DataFlow):
为具有名称且有流向的数据,用标有名称的箭头表示,一个数据可以是记录、组合项或基本项。
处理(Process):
表示对数据所进行的加工和变换,在图中用矩形框表示。
指向处理数据流为该处理的输入数据,离开处理的数据为处理的输出数据。
数据存储:
表示用文件方式或数据库形式所存储的数据,堆砌进行的存取分别以指向或离开数据存储的箭头表示。
数据源及数据终点:
表示数据的来源或数据的去向,可以是一个组织或人员,它处于系统范围之外,所以又称它为外部实体,它是为了帮助理解系统界面而引入的,一般只出现在数据流图的起点和终点。
3.2.2数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
本次设计是图书管理系统的开发,所以这里采用卡片形式书写数据字典。
每张卡片上保存描述一个的信息,这样做有利于更新和修改,而且能单独处理描述每个信息,下面列出用户信息,图书信息,管理员信息和借阅信息的卡片信息。
数据字典卡片:
名字:
密码
别名:
描述:
验证本系统的普通管理员身份
定义:
密码=8{字符}8
位置:
普通管理员信息表
名字:
用户名
别名:
描述:
惟一标识本系统的普通管理员身份
定义:
用户名=8{字符}8
位置:
普通管理员信息表
名字:
普通管理员
别名:
普通管理员信息表
描述:
普通管理员信息的描述
定义:
用户名+密码+姓名+性别+身份证号+籍贯+住址+电话
位置:
普通管理员信息表,更新普通管理员
名字:
借阅者资料
别名:
借阅者资料信息表
描述:
借阅者信息的描述
定义:
借阅者编号+借阅者姓名+性别+出生日期+所在院系+职务
位置:
借阅者信息,产生借阅者资料管理
名字:
图书资料
别名:
图书信息表
描述:
图书资料信息的描述
定义:
图书编号+图书名称+作者+出版社+定价+出版日期+图书类别+库存+在馆状态
位置:
图书库存,库存清单,图书信息,更新库存清单
名字:
用户名
别名:
描述:
惟一标识本系统的读者身份
定义:
用户名=8{字符}8
位置:
注册信息表
名字:
读者信息
别名:
读者注册信息表
描述:
读者信息的描述
定义:
用户名+密码+姓名+性别+出生日期+所在院系+职务
位置:
注册信息,产生图书续借和图书查询
名字:
密码
别名:
描述:
验证本系统的读者身份
定义:
密码=8{字符}8
位置:
注册信息表
名字:
图书借阅归还
别名:
描述:
借阅信息的描述
定义:
图书编号+图书名称+借阅者编号+借阅者姓名+所在院系+职务+借出日期+应还日期+归还日期+续借+书数
位置:
产生图书借阅和图书归信息
名字:
权限二
别名:
描述:
标识本系统的普通管理员对本系统管理权使用权限
定义:
权限一=8{字符}8
位置:
管理员信息
名字:
权限一
别名:
描述:
标识本系统的超级管理员对本系统管理权使用权限
定义:
权限一=8{字符}8
位置:
操作用户表
名字:
权限三
别名:
描述:
标识本系统的读者对本系统管理权使用权限
定义:
权限一=8{字符}8
位置:
注册信息,产生图书查询和续借
3.2.3实体联系E-R图
通过对图书管理系统的功能要求、数据流程图和数据字典分析,分析图书管理普通管理员管理的图书资料、借阅者资料、图书借阅归还、读者信息,同时这里还有普通管理员信息,可以确定该应用中的实体,属性和实体之间的关系,并画出如下所示的E-R图。
图书编号
图书名称
作者
在馆状态
出版社
图书资料
库存
图书类别
出版日期
定价
图3.3图书资料实体E-R
性别
借阅者姓名
借阅者编号
出生日期
职务
所在院系
借阅者资料
图3.4借阅者资料实体E-R图
出生日期
图3.5读者信息E-R图
书数
图书名称
图书编号
借阅者编号
借阅者姓名
应还日期
归还日期
续借
图书借阅归还
所在院系
职务
借出日期
图3.6出库图书借阅归还信息实体E-R图
电话
归还日期
借阅者编号
1m
注册
管理
1n
1m
nn
图3.8实体和实体之间的E-R图
4.概要设计
4.1总体设计
通过这个阶段的工作将划分出组成系统的物理元素。
系统概要设计的基本目的是用比较抽象的概括方式确定系统如何完成预定的任务,也就是要确定系统的配置物理方案。
软件结构设计时应该遵循的最主要的原理是模块独立,让模块彼此间的接口关系应该尽量简单。
4.2系统功能模块图
可以根据模块独立原理对软件结构进行精化。
为了合理的分解,得到尽可能高的内聚、尽可能松散的耦合,最终要的是,为了得到一个易于实现、易于测试和易于维护的软件结构,应该对模块进行再分解或合并。
系统功能模块图如图4.1所示:
归还期限
4.3数据库概念设计
数据库一般分为三级模式:
外模式、概念模式和内模式。
外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。
概念模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为基础。
内模式是对数据的物理结构和存储方式的描述。
在这里我们将要设计的是数据库的概念模式,
通过对图书管理系统的内容和数据流程分析及E-R图,设计如下数据项和数据结构。
图书资料。
包括图书编号、图书名称、作者、出版社、定价、出版日期、图书类别、库存、在馆状态等。
借阅者资料。
包括借阅者编号、借阅者姓名、性别、出生日期、所在院系、职务等。
读者信息。
包括用户名、密码、姓名、性别、出生日期、所在院系、职务等信息。
图书借阅归还信息。
包括图书编号、图书名称、借阅者编号、借阅者姓名、所在院系、职务、借出日期、应还日期、归还日期、书数、续借等信息。
普通管理员信息。
包括用户名、密码、姓名、身份证号、籍贯、住址、电话等信息。
数据库概念结构设计,是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为后面的逻辑结构设计打下基础。
4.4数据库逻辑结构设计
在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如,将E-R图模型转化为关系模型,道理很简单,我们设计概念模型基本上都是一些抽象的关系,在再数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键。
根据图书管理系统的功能要求,选取SQLServer2000作为后台数据库。
在上面的实体和实体之间的E-R图设计基础上,形成数据库中的表格及表格之间的关系。
该数据库由5个表组成,图书资料表、借阅者资料表、读者信息表、图书借阅归还表、普通管理员信息表。
一、主表的结构设计
1.图书资料信息
图书资料表是对图书资料信息进行统计,包括图书编号、图书名称、作者、出版社、定价、出版日期、图书类别、库存、在馆状态等信息。
图书资料表的结构表如表4-1所示
表4-1图书资料结构表
列名
数据类型
长度
是否允许为空
说明
bookid
varcahr
8
否
图书编号
bookname
varcahr
10
否
图书名称
bookauthor
varcahr
50
否
作者
bookpress
varcahr
50
否
出版社
bookprice
money
10
否
定价
bookpublish
datetime
10
否
出版日期
bookcategory
varcahr
50
否
图书类别
bookreserve
int
4
否
库存
bookin
varcahr
2
否
在馆状态
2.借阅者资料信息
借阅者资料表是对借阅者资料信息进行统计,包括借阅者编号、借阅者姓名、性别、出生日期、所在院系、职务等信息。
借阅者资料表的结构表如表4-2所示
表4-2借阅者资料结构表
列名
数据类型
长度
是否允许为空
说明
lenderid
varcahr
10
否
借阅者编号
lendername
varcahr
50
否
借阅者姓名
lendersex
varcahr
2
否
性别
lenderbirth
datetime
8
否
出生日期
lendercollege
varcahr
50
否
所在院系
lenderpostion
varcahr
10
否
职务
3.读者信息表
读者信息表是对读者信息进行统计,包括用户名、密码、姓名、性别、出生日期、所在院系、职务等信息。
读者信息表的结构表如表4-3所示
表4-3读者信息结构表
列名
数据类型
长度
是否允许为空
说明
reader
varcahr
10
否
用户名
readerpasswd
varcahr
6
否
密码
readername
varcahr
50
否
姓名
readersex
varcahr
2
是
性别
readerbirh
datetime
8
是
出生日期
readercollege
varchar
50
否
所在院系
readerpostion
varcahr
10
是
职务
4.图书借阅归还信息表
图书借阅归还信息表是对图书借阅归还进行统计,包括图书编号、图书名称、借阅者编号、借阅者姓名、所在院系、职务、借出日期、应还日期、归还日期、书数、续借等信息。
图书借阅归还表的结构表如表4-4所示
表4-4图书借阅归还结构表
列名
数据类型
长度
是否允许为空
说明
bookid
varcahr
10
否
图书编号
bookname
varcahr
50
是
图书名称
lenderid
varcahr
10
否
借阅者编号
lendername
varcahr
50
是
借阅者姓名
lendercollege
varchar
50
否
所在院系
lenderpostion
varcahr
10
是
职务
borrowdate
datetime
8
否
借出日期
returndate
datetime
8
否
应还日期
backdate
datetime
8
否
归还日期
booksum
int
2
否
书数
bookcontinue
varcahr
2
否
续借
5.普通管理员信息表
普通管理员信息表是对普通管理员进行统计,包括管理员权限、用户名、姓名、身份证号、籍贯、住址、电话等信息。
普通管理员表的结构表如表4-5所示
表4-5普通管理员结构表
列名
数据类型
长度
是否允许为空
说明
managerright
varcahr
8
否
密码
manageruser
varcahr
10
否
用户名
managername
varcahr
50
否
姓名
managerid
varcahr
20
否
身份证号
managerbirth
varchar
50
是
籍贯
manageraddress
varchar
50
是
住址
managerphone
varcahr
20
是
电话
4.5连接数据库的特点
当开发环境通过连接到数据库上之后,在设计中使用数据库画笔可实现对该数据库中表格,视图等的操作,如创建表,修改表,删除表,增加/删除记录。
设计中设计数据窗口的时候,通过对话框实现与数据的连接。
在应用程序中则一般是在应用程序对象中书写连接数据库的程序代码,使得应用程序开始运行并实现与数据库的连接。
5、详细设计
详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统,包括了用户界面设计、程序过程设计等步骤。
5.1系统的主要功能
1、图书资料的录入、修改、删除,还有按图书类别查询图书的资料和库存等
2、借阅者资料的增删改查
3、图书查询按图书类别查询图书信息
4、图书借阅管理,有借阅权限和续借
5、图书归还管理,有正常返还图书和非正常返还图书
6、管理普通管理员信息的增删改查
7、读者注册,进入查询图书和续借图书管理
5.2程序流程图
程序流程图的优点是对控制流程的描绘很直观,易于掌握。
1、管理员管理图书程序流程图如图5.1所示
是
否
否
否
否
是
是
是
否
图5.1图书管理程序流程图
2、超级管理员管理普通管理员程序流程图如图5.2所示:
否
图5.2超级管理员管理普通管理员程序流程图
3、读者注册程序流程图如图5.3所示:
是
否
不可续借
图5.3读者注册程序流程图
4、图书的管理流程图
是
否
是
结束
查询图书书目
图书书目是否查询
普通管理员
结束
录入或修改图书资料
否
普通管理员
图书资料是否录入,修改
5.3用户界面设计
5.3.1一般交互设计
一般交互涉及信息显示、数据输入、和系统整体控制等方面。
1、一致性
为客户交互界面中的菜单选择、命令输入、数据显示以及众多的其他功能,使用一致的格式。
在设计的过程中,基本上保持了系统的格式一致。
2、信息的反馈
向用户及时提供视觉和听觉的信息反馈,以保证在用户和系统之间及时地建立双向通信。
在本系统设计过程中,基本做到了信息的及时反馈,在信息显示的大部分窗体中包括了刷新按钮,会对数据库中的数据进行及时地显示。
另外,在进行错误操作是,会弹出提示窗口并发出警告提示音。
3、执行有较大影响的操作前提示用户确认
在设计过程中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。
4、减少两次操作间需要记忆的内容
为了避免用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。
例如在录入图书、借阅者增加、图书借阅和图书归还以及管理普通管理员的模块的操作中都用到了这样的方法。
5、对话、移动和思考的效率
尽量减少用户击键的次数,在设计时考虑到了用户屏幕的布局以减少用户鼠标移动的距离,尽量避免用户在操作中发生疑问的情况。
6、允许错误
允许用户的误操作尽量不对系统造成伤害。
7、按功能对动作分类,并据此设计屏