重庆大学图书管理系统设计与实现.docx
- 文档编号:7706022
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:45
- 大小:458.02KB
重庆大学图书管理系统设计与实现.docx
《重庆大学图书管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《重庆大学图书管理系统设计与实现.docx(45页珍藏版)》请在冰豆网上搜索。
重庆大学图书管理系统设计与实现
自考毕业论文
题目:
重庆大学图书管理系统
设计与实现
专业计算机信息管理
学生姓名XX准考证号XXXXXXXXXX
指导教师XX职称讲师
日期2012年10月6日
重庆大学图书管理系统设计与实现
摘要:
图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。
图书馆若采用手工方式对图书资料和图书借阅情况进行人工管理,由于资料繁多,手工处理的工作量大,整体管理效率低下,也不方便读者对图书资料的查阅。
为了提高日常的图书管理效率,本文针对通常的图书管理流程,以C/S模式设计了一个图书管理系统,可以满足大多数中小型图书管理要求。
本文介绍了在VisualC#.NET环境下开发图书管理信息系统的过程。
文章介绍了图书馆管理信息系统的系统分析部分,包括可行性分析、图书借阅流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统界面友好,操作简单,比较实用。
关键词:
图书管理数据库程序开发
一、绪论
1、系统开发背景
随着社会的发展,人们对知识的需求也不断地增长。
在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就成不可少了,图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。
因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。
随着社会的日益发展,尤其是科技的迅猛发展,使得我国各项事业得到了前所未有的突破,不仅提高了工作效率,而且也降低了劳动强度,美化了工作环境。
随着计算机广泛地应用在科学技术领域的各个方面,并逐渐进入家庭,成为人们生活中必不可少的一部分。
为了适应读者对图书的需求,同时又大大减轻图书馆工作人员的工作量,全面提高图书馆的管理效率及服务质量,我以C#为环境,基于ACCESSS数据库,开发了此应用软件,本系统适用于各类小型图书馆,以及各类大中专院校、中小学校、企事业单位的图书馆和资料室的现代化综合管理。
2、系统实现的目标
1.强化和巩固理论基础,掌握数据库编程的基本技巧;
2.要求用C/C++语言或其它语言及相应开发环境,实现一个小型完整程序的设计与开发;
3.巩固深化所学课程的知识,培养学生运用知识,分析和解决实际问题的能力。
系统概述:
1.图书管理:
每种图书都有书名、书号(ISBN)、作者(译者)、出版社、定价和内容简介。
图书信息登入、查询和维护。
2.借书证管理,包括申请、注销借书证,查询借书证持有人等。
借书证记录有借阅者的姓名、所在单位、职业等。
3.凭借书证借书,每次最多能借3本书。
借书期限最长为30天。
4.借还图书、资料的登记、超期处理等。
5.图书、资料查询,借、还图书和资料情况查询。
3、开发技术和开发工具
本系统采用ACCESS创建后台数据库,前台开发工具采用的Visual Studio2010,编程语言为C#,程序采用C/S结构。
二、需求分析
1、系统可行性分析
可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。
信息系统也应从技术可行性,经济可行性和社会可行性三方面来论证。
通过长时间的观察与实践,我认为图书馆管理系统的可行性分析如下:
(1)经济可行性分析
作为图书馆这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:
其中包括设备购置费、软件开发费用、管理和维护费、人员工资和培训费等。
由于各个图书馆实行统一操作,系统共享,其设备购置,人员工资,维护费用相对较少,前期的资金投入主要集中于购置图书上。
建立信息中心,可将来自各方面的信息集中管理,提高图书管理的计划性和预见性,快速地反馈市场信息。
(2)技术可行性分析
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。
图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。
这一特点非常适合计算机特点,通过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。
计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。
(3)社会可行性分析
社会可行性有时也称为操作可行性,主要论证新系统在企业或机构开发和运行的可能性以及运行后可能一起的对企业或机构的影响,即组织内外是否具备接受和使用新系统的条件。
在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新是图书馆完全有可能也有能力采用这样先进的管理技术。
它对图书馆带来的影响可以看到:
对传统管理理念的冲击,可能引起管理层的变动和人员的调整。
对图书馆工作人员的要求提高,使图书馆在一定的可能下进行机构精简,迫使工作人员继续学习新知识,拓宽图书馆在市场环境下的生存空间。
对图书馆与读者之间业务方式的转变和扩充。
基于以上分析,我认为有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。
2、图书系统功能需求简介
学校的图书管理涉及图书信息、系统用户信息、读者信息、图书借阅等多种数据管理。
从管理的角度可将图书分为三类:
图书信息管理、系统用户管理、读者数据管理。
图书信息管理包括图书征定、借还、查询等操作,系统用户管理包括系统用户类别和用户数据管理,读者数据管理包括读者类别管理和个人数据的录入、修改和删除。
经过实际考察与分析,图书管理系统主要应具有以下功能:
图书借阅者的需求是查询图书室所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看、维护等。
图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。
图书馆工作人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。
在此模块中,图书馆工作人员可以为图书借阅者加入借书记录或是还书记录,并打印生成相应的报表给用户查看和确认。
图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。
本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。
图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息、借阅信息、借阅者的基本信息等。
3、功能需求描述
经过前期的深入调查和研究,总结出该平台需要完成的一些具体功能有如下:
书籍管理,读者管理,系统管理和借阅管理等等组成。
根据学校图书管理的实际流程,结合上述的各功能模块,系统的功能分析图
如图2.1所示。
图2.1系统功能分析图
4、目标系统要求
经过详细的调查,在现行业务流程和数据分析的基础上,基本可以确定系统设计必须达到的目标了。
图书管理系统必须具备的功能有:
(1)新书入库管理功能:
对于新购进的图书,必须具备图书资料的信息录入功能。
新书入库:
可以单本或批量导入图书数据。
包括图书编号、书籍名称、图书总数、出版社、出版日期、图书价格、总页数、图书开本、ISBN号、语种、借出数量等。
三、数据库设计
1、数据库介绍
数据库需求分析是数据库结构设计的第一个阶段,是非常重要的一个阶段。
这个阶段主是要确定基本数据、数据结构处理的流程,组成一份详尽的数据字典,为以后进一步设计打下基础,通过对图书管理系统的内容分析,针对本系统,设计的数据如下:
管理员基本信息:
管理员账号、密码。
书籍信息:
书籍编号、书籍名称、书籍分类编号、书籍价格、书籍库存量、书籍介绍。
读者信息:
读者编号、姓名、学号、可借书总数、备注。
借阅信息:
用户编号、书籍编号、名称、库存量、类别、借出日期、归还日期、已借书数。
2、数据流程图
系统流程图可以表示现行系统的信息流动和加工处理等详细情况,是对系统的一种逻辑抽象,它独立于系统的实现,表达了数据和处理过程的关系。
根据系统需求所确定的目标,本系统实现包括系统管理、图书管理、读者管理、借书信息管理、还书信息管理、等几个方面内容的数据库应用系统。
数据流图如下:
图3.1顶层数据流图
图3.20层数据流图
图3.31层数据流之一
图3.42层数据流之一
图3.52层数据流之二
3、数据字典
数据流图重点在描述以处理逻辑为中心的数据的流入与流出,而对数据本身未加描述,影响了用户对数据流图的理解。
数据字典是对数据流图的很好的补充,它是数据流图上所有成分的定义和解释的文字集合,它是对数据流图的各种成分起注解、说明的作用,同时它还对系统分析中其他需要说明的问题进行定义和说明。
系统分析人员把不便在数据流图上注明而对于系统分析应该获得,对整个系统开发以至将来系统运行与维护是必须的信息尽可能放入数据字典。
所以根据上面数据流程图,可以得出本系统中各个数据的数据字典。
下面是一部分的数据的数据字典:
表3.1系统用户管理数据流条目
数据流名称:
系统用户管理
数据流编号:
01
简要说明:
主要管理用户的使用权限,对不同的用户使用不同的管理
数据流去向:
管理员
数据流组成:
用户编号+用户密码
表3.2图书编号管理数据流条目
数据流名称:
图书编号管理
数据流编号:
03
简要说明:
主要描述管理员对书籍信息进行添加、删除和修改的管理
数据流来源:
管理员
数据流去向:
图书编号管理
数据流组成:
书籍编号+书籍分类编号+书籍名称+书籍介绍+价格+剩余库存量+借还次数
表3.3读者数据管理数据流条目
数据流名称:
读者数据管理
数据流编号:
02
简要说明:
对读者信息进行添加、删除、和修改的管理
数据流来源:
管理员
数据流组成:
读者编号+姓名+学生编号+可借书总数+备注
关键字
读者编号
4、数据库概念设计逻辑设计
几乎所有的项目都是基于数据库的,这使得数据的设计在整个项目中的地位举足轻重。
良好的数据设计往往能够减少开发的负担。
数据库设计是指对于一个给定的应用环境,通过合理的逻辑设计和有效的物理设计来构造较优的数据库模式,建立数据库极其应用系统,满足用户的各种信息需求。
(1)数据库概念设计
概念设计是把用户的需求进行综合、归纳与抽象,统一到一个整体概念结构中,形成数据库的概念模型。
概念模型是面向现实世界的一个真实模型,它一方面能够反映现实世界,同时又容易转化为数据库逻辑模型,也容易让用户理解。
数据库概念模型独立于计算机系统和DBMS。
E-R图是设计数据概念模型的一种有效地工具。
实体——实体是现实世界中客观存在的事物。
联系——实体之间可能存在着各种联系,这种联系通过信息系统的功能活动表现出来。
属性——实体或联系的性质就是属性。
了解了E-R图的大致内容,结合需求分析的要求绘制了图书管理系统的E-R图。
1.管理员信息E-R图如图3.6所示。
图3.6管理员信息E-R图
2.书籍信息E-R图如图3.7所示。
图3.7书籍信息E-R图
3.读者信息E-R图如图3.8所示。
图3.8借阅信息E-R图
4.借阅信息E-R图如图3.9所示。
图3.9借阅信息E-R图
(2)数据库逻辑设计
逻辑设计在数据库概念设计的基础上进行。
其主要任务是将概念模型转换为数据库的逻辑模型,并与选用的DBMS相结合,产生具体的DBMS所支持数据模型的逻辑模式。
表3.4UserInfo(用户/管理员信息表)
字段名称
数据类型
说明
Id
Int
用户编号
主键,自动增长
UserName
Varchar(50)
用户名称
必填和唯一约束
userPwd
Varchar(50)
用户密码
必填,密码长度大于等于6位。
该表和客户信息表一样存在字段的命名规则的要求,出于安全考虑对于管理员帐号发放应该谨慎,管理人员数量一定要控制,越少越安全,在实际应用中,我们还要对整个数据库进行加密,以防止系统重要数据泄漏。
表3.5BooksInfo(书籍信息表)
字段名
数据类型
说明
Id
Int
书籍编号
主键,自动增长。
TypeId
Int
书籍类别
外键(GoodsType),必填。
booksName
Varchar(50)
书籍名称
必填。
Price
Decimail(8,2)
书籍价格
必填。
Status
Int
书籍状态
必填,值只能为0和2(0上架,1下架)。
Photo
Varchar(50)
书籍图片
必填,存储商品图片名称。
Stock
Int
库存
必填。
Mark
Varchar(20)
备注
可选输入。
书籍信息表(BooksInfo):
书籍信息表主要负责存储书籍名称,书籍类别,书籍图片,书籍价格,备注等信息。
主要属性有:
ID,TypeId,booksName,Price,Status,Photo,Stock,Remark.
表3.6ReaderInfo(读者信息表)
字段名
数据类型
说明
Id
Int
读者编号
主键,自动增长。
Name
Varchar(100)
姓名
必填,唯一约束。
CanBowBook
Int
可借书总数
必填。
StdId
Int
学生编号
必填。
Mark
varchar(100)
备注
选填。
该表有严格的定义要求,因为本校人员的借书有明确的信息可以显示,可以确保书籍信息的安全,不会因为借出的原因是书籍丢失,或非本校人员直接将书籍带出本校,使书籍不翼而飞。
表3.7BorrowInfo(借阅信息表)
字段名
数据类型
说明
OrderId
Int
借阅编号
主键,自动增长。
BorrowerId
Int
读者编号
外键(CustomerInfo),必填,表示下订单的客户编号。
BooksId
Int
书籍编号
外键,必填,表示被借阅书籍的编号和其他信。
Status
Int
借阅状态
必填,值只能是0和1,(0未确认1已确认)。
orderTime
Datetime
借阅时间
必填,默认为系统的当前日期。
backTime
Datetime
归还时间
必填,默认为一周。
借阅信息表:
每当有书籍被借出阅读时,系统生成的一张表单,明确了借阅人,借阅的书籍,借阅时间,归还时间和被借出的状态。
四、系统详细设计
程序按照三个主要管理功能进行组织,其中借书和还书由于经常使用,单独列出来。
下面我们按照操作顺序对程序的操作、界面的源程序进行详细说明。
1、登录窗体设计
设计登录界面
创建一个新的“Windows窗体”,名为Login,作为本系统的登录界面。
在Login窗体上添加两个Label控件,两个Button控件和两个TextBox控件,添加控件后的窗体如图所示。
图4.1登录界面
登录模块是图书馆管理系统的入口,在运行本系统后,首先进入的便是登录窗体。
在该窗体中,系统管理员可以通过输入正确的管理员名称与密码登录到系统;当没有输入管理员名称或密码时,系统将会弹出相应的提示信息。
其中登录窗体及其主要控件的属性设置如表4.1所示。
表4.1登录窗体及其主要控件的属性设置
窗体及其控件类型
属性名称
属性值
说明
Form
Name
frmLogin
窗体名称
Text
登录
窗体的标题文本
MaximizeBox
False
窗体的最大化失效
Startposition
CenterScreen
窗体启动时位于屏幕中心
FormBorderStyle
FixedSingle
窗体的大小固定
ComboBox
Name
cbxEmployeeNo
选择登录用户编号
TextBox
Name
Txtpwd
输入用户登录密码
PasswordChar
*
密码替代显示字符
Button
Name
btnOK
“确定”按钮
btnCancel
“取消”按钮
代码设计如下:
privatevoidbtnOK_Click(objectsender,EventArgse)
{string[]note=newstring[2];
OleDbConnectioncon=newOleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;"+"dataSource=d:
\\bylw\\tsgl.mdb");
OleDbCommandcom=newOleDbCommand("select*fromemployeewhere员工编号="+"'"+txtEmployeeNo.Text.Trim()+"'",con);
con.Open();
try
{OleDbDataReaderreader=com.ExecuteReader();
if(reader.Read())
{note[0]=(string)reader["员工编号"];
note[1]=(string)reader["密码"];
}else
throw(newException("您的账号有问题,请确认后再输!
"));
if(note[0]==txtEmployeeNo.Text.Trim())
if(note[1]==txtPwd.Text.Trim())
{frmMainmain=newfrmMain();
main.Show();
this.Hide();
}else
{throw(newException("您的密码出现错误,请查证再输!
"));}
else
{throw(newException("您的账号有问题,请确认后再输!
"));}
}
catch(Exceptionex)
{MessageBox.Show("登陆问题:
\n"+ex.Message,"登陆出错",MessageBoxButtons.OK,MessageBoxIcon.Error);}
}privatevoidbtnCancel_Click(objectsender,EventArgse)
{Application.Exit();}
2、主窗体设计
首先,启动程序“MicrosoftVisualStudio2005”,选择“文件”——“新建”——“项目”,打开“新建项目”对话框,输入项目名称为“图书馆管理系统”,并指定文件位置。
将项目中的默认添加的第1个Windows窗体文件名称改为“MainFrm.cs”,并将其作为主窗体。
在主窗体中先进行界面设计,然后再编写其相应的事件方法代码,主窗体的执行效果如图4.2所示。
图4.2主窗体执行的效果图
3、图书信息管理模块设计
图书信息管理模块的内容包括图书入库和修改图书信息等。
该功能模块主要负责图书信息的相关操作,保证数据库中的完整、规范和准确,使用户可以方便快捷地来管理图书信息。
该模块主要操作针对数据库的的图书信息表“”进行添加、修改和删除记录。
图书信息管理窗体如图4.3所示:
图4.3图书信息管理窗体运行效果图
新书入库窗体,其运行效果如图4.4所示。
图4.4新书入库窗体的运行效果图
借书子窗体如图4.5所示。
借书信息包括借书信息的添加,借书信息的修改,借书信息的删除,借书信息的查询。
借书信息的管理对于图书管理系统来说是非常有必要的,首先,利用菜单编辑器在主界面窗口中添加“借书信息管理”模块,在“借书信息管理”模块下添加子模块:
添加借阅信息、修改借阅信息、删除借阅信息和查询借阅信息,再对各子模块进行设计。
图4.5借书子窗体的运行效果图
此功能可实现对新的借书信息的添加,从而使任何读者的借书信息都能记录下来,不会导致查询时信息的缺少或紊乱。
当用户进入主界面后,只要点击“借书信息管理”模块下的“添加借阅信息”,即可进入此界面,用户可将要添加的信息一一录入,如果缺少某一信息,系统会给出提示。
为满足读者和管理员的需求,方便管理员进行借书信息的添加,在设计时主要采用文本框进行,以方便更改;而对于“读者类别”,“书籍类别”,“借出日期”和“应还日期”比较固定的格式,则采用复选框来进行,通过对这些信息的添加和修改,处理过的记录将自动替换原来的信息,同样,数据库内容的信息也将替换原来的信息,取到更新的作用,这个更新的作用是采用数据对象“ADO”提供的更新数据源操作方式来实现,减少了很多烦琐的操作,方便了管理人员的操作。
该窗口设计思路清晰,排列整齐,内容放置规范。
对于“借出日期”和“应还日期”的设置,主要是考虑到借书期限的限制,对于一些不自觉遵守图书管理的读者,是非常必要的。
当读者还书时,如果超过了应还日期的期限,则必须给予罚款。
图书还书模块主要实现读者还书功能。
当读者需要还书时,管理员输入读者编号后按Enter键,即可在窗体表格中显示读者借阅图书相关信息;在表格中单击某一行数据,在罚款相关文本框中将显示相应的内容等;最后管理员单击“归还选中图书”按钮,完成图书归还操作。
归还图书子窗体如图4.6所示。
图4.6还书子窗体运行效果图
4、读者信息管理模块设计
每年都有新生入校和老生毕业,作为一个学校的图书馆,读者信息需要实时的更新。
读者信息管理包括添加读者信息、修改读者信息和删除读者信息。
如下图4.7所示:
图4.7读者信息管理运行效果图
5、图书信息查询
图书信息查询用于显示所有的图书信息,或者根据用户设定的条件进行查询。
系统允许用户使用三种查询的方法,即按照书名查询、按照作者查询和按照图书编号进行查询。
如下图4.8所示:
图4.8图书信息查询运行效果图
五、系统测试
1、测试概要
具体操作如下:
(1)打开数据库SQLService2005,数据库右键选择‘附加’,选择要添加的数据库,如图5.1所示:
图5.1添加数据库
2、测试过程
用例1:
系统操作登录测试
用例
测试数据
预期结果
UC1:
输入正确的用户名和密码
用户名:
admin密码:
123
系统跳转到主界面
UC2:
输入空用户名
用户名:
请输入用户名
UC3:
输入用户名和空密码
用户名:
admin密码:
请输入密码
UC4:
输入用户名和错误的密码
用户名:
admin密码:
123456
错误的用户名或密码
当用户输入的用户名或密码错误是系统会跳转到出错页面并提示“错误的用户名或密码”,用户点
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 重庆大学 图书 管理 系统 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)