图书管理系统论文.docx
- 文档编号:12726629
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:26
- 大小:34.88KB
图书管理系统论文.docx
《图书管理系统论文.docx》由会员分享,可在线阅读,更多相关《图书管理系统论文.docx(26页珍藏版)》请在冰豆网上搜索。
图书管理系统论文
一、系统概述1
(一)背景和意义1
(二)开发环境2
(三)功能描述2
1、功能需求2
2、用例图2
3、可行性分析3
二、需求分析4
(一)系统需求分析4
(二)任务概述4
(三)功能需求4
(四)性能需求5
三、系统设计6
(一)功能设计6
1、系统模块图6
2、系统事件流7
(二)数据库设计7
四、系统模块的实现12
五、总结24
(一)主要功能24
(二)主要特点24
参考文献24
图书管理系统的设计与实现
(计算机信息管理101班章淑芬)
摘要:
随着科学技术的迅猛发展,学校图书馆规模不断扩大,图书馆管理工作的自动化也不断的发展和成熟。
图书管理信息系统以计算机为工具,通过对图书管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,也使用户能更方便快捷的对图书进行搜索查询。
因此,我以图书馆的应用需求为背景,设计开发了本图书管理系统。
本系统以C#语言为开发语言,并采用了SQL数据库。
系统包括普通用户登录和管理员登录。
主要分:
图书管理、用户管理、管理员管理、公告和用户留言五大模块。
关键词:
图书管理系统;SQL数据库;系统开发;三层架构
一、系统概述
(一)背景和意义
随着时代的发展,计算机正在被广泛的应用于信息管理系统中。
计算机的最大好处在于利用它能够进行信息管理,使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性,计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提,本系统就是为了管理好图书馆信息而设计的。
随着学校规模的不断扩大,图书数量的急剧增加,有关图书的信息量也在成倍增长。
图书管理是每所高等院校乃至中小学校都必须切实面对的工作。
图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理。
面对庞大的信息量,就需要有图书管理系统来提高图书管理工作效率。
通过这样的系统,我们可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。
传统手工的图书管理对信息管理的主要方式是基于文本、表格等纸质的手工处理,对于图书借阅情况(如借阅天数,最迟归还日)的统计和核实凭借借书卡进行检查,用人工计算、手抄进行对借阅者的借阅权限、以及借阅天数等进行管理。
传统的数据信息处理方式存在着工作量大,容易出错,数据繁多,不易查找,容易丢失数据等缺陷。
基于这些问题,我认为有开发一套能够为用户提供充足的信息和快捷的查询手段的图书管理系统,将是非常必要的,也是十分及时的。
(二)开发环境
开发环境的选择会影响到数据库的设计,所以在这里给出图书管理系统开发与运行环境的选择如下:
开发环境:
WindowsXP、windows7
开发工具:
visio2003、SQL2005、VisualStudio2008
开发语言:
C#
(三)功能描述
1、功能需求
本图书管理系统分为普通用户登录和管理员登录以及用户注册。
普通用户:
图书管理(查找图书、预订图书、我的借阅信息)
用户信息(我的信息、修改密码)
管理员管理(查看管理员)
公告栏(今日公告)
用户留言(我要留言、回复留言)
用户注册(添加新用户)
管理员:
图书管理(图书管理、预订图书、新书入库、图书借还、我的借阅信息)
用户信息(我的信息、修改密码、用户管理、添加管理员)
管理员管理(查看管理员)
公告栏(今日公告、公告管理)
用户留言(我要留言、回复留言、留言管理)
添加管理员(管理员可以添加新的管理员)
2、用例图
根据系统的需求建立用例模型图。
如图1-1所示:
图1-1UML用例图
3、可行性分析
(1)技术可行性
随着学校与广大企事业单位内部网络的广泛建立,在通用信息平台上构筑高效实用的协同工作和自动化办公应用系统,有效实现内部知识管理,已成为众多用户的共同需求。
图书管理系统,为学校与广大企事业单位自动化办公提供了一个较好的解决方案。
在开发过程中,采用了SQLSERVER2005网络数据库,工具选择了MicrosoftVisualStudio2008,使得本系统可以方便的和其他子系统进行数据交换。
同时,注意从软件的图形应用界面上优化软件质量,使得本系统具有较强的可操作性。
(2)经济可行性
本系统若全面投入运行,我们认为整个项目的投资是不大的,因为系统开发工具,以及后台数据库,成本低廉。
所以实施图书管理系统,在经济上是可行的。
(3)运行可行性
本系统的开发环境是在windows环境中进行的,对于现在绝大部分的电脑室可行的,用户是完全可以掌握系统并使用的。
(4)操作可行性
本系统在操作上也是可行的,系统是基于VS环境平台开发的,易于操作,而且可以在任何的操作系统上使用,其界面友好,简洁易懂,易于操作。
所以系统在操作上是可行的。
二、需求分析
(一)系统需求分析
随着学校规模的不断扩大,图书数量的急剧增加,有关图书的信息量也在不断成倍增长。
面对庞大的信息量,就需要有图书管理系统来提高图书管理工作的效率。
通过这样的系统,我们可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。
传统手工的图书管理,管理过程繁琐而复杂,执行效率低,并且易于出错。
而通过本的系统,我们可以做到信息的规范管理和快速查询,实现了图书管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本。
(二)任务概述
经过对我校详细调查,并多次与负责图书管理的老师进行研讨后,加深了对现行图书管理业务的深刻了解,与此同时,将整个图书管理的业务流程抽象描述如下:
1.新的图书购进后,分门别类地进行归并汇总,加以编号。
2.新书编号后,上到相应的书架以备学生借阅。
3.如某学生需要借阅图书,需现在系统中注册一个账号,然后进入系统进行查找,再到管理员处借阅并登记。
4.学生借阅图书后,可在系统中查到该书的最迟归还日,学生应及时到管理员处归还图书并登记。
5.学生可以通过该系统查看管理员的最近公告。
6.学生可以通过系统给管理员留言或提意见。
7.管理员可以通过系统管理图书的信息、用户的信息、公告的信息、留言的信息等等。
(三)功能需求
经过以上详细的用户调查,在现行业务流程和数据分析的基础上,基本可以确定系统设计必须达到的目标。
以下是图书管理系统必须具备的功能:
1.新进图书的登记功能:
对于购进的新书,系统必须具备图书信息资料的录入功能。
2.图书的查询修改功能:
当图书资料发生变化,如图书丢失或有错误信息输入时,则应能够及时对数据进行修改和补充。
3.借阅的登记,归还的登记功能:
系统的主要功能之一,供本校学生借阅图书、归还图书,并进行登记。
4.学生信息的增加、删除和修改功能:
系统主要功能之一,建立学生信息,并对其进行维护。
5.管理员信息的增加、删除和修改:
建立管理员信息,方便对系统以及学生信息的管理和维护。
6.公告栏的查看和修改:
供管理员发布公告,学生观看公告。
7.留言板:
供学生留言,和管理员进行沟通,从而更好的管理图书信息。
(四)性能需求
为了保证系统能够长期、安全、稳定、可靠、高效的运行,图书管理系统应该满足以下的性能需求:
1、系统处理的准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。
2、系统的开放性和系统的可扩充性
图书管理系统在开发过程中,应该充分考虑以后的可扩充性。
例如用户查询的需求也会不断的更新和完善。
3、系统的易用性和易维护性
图书管理系统是直接面对使用人员的,而使用人员往往对计算机并不是非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;预测用户在使用中可能出现的问题,有针对性地提供在线帮助,要提供足够的在线帮助,缩短用户对系统熟悉的过程。
4、系统的标准性
系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些都要符合主流国际、国家和行业标准。
5、系统的先进性
目前计算系统的技术发展相当快,做为图书管理系统工程,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。
这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。
另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。
6、系统的响应速度
图书管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。
在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。
三、系统设计
(一)功能设计
1、系统模块图
根据上述的系统需求分析、任务概述、功能需求和性能需求,对图书管理系统设计以下主要功能模块,如图3-1所示:
图3-1系统模块图
添加图书:
管理员对新进的图书进行数据库信息的添加。
删除图书:
管理员对于丢失或下架的图书进行删除。
修改图书信息:
发现有图书信息错误或需要修改图书位置时,进行图书信息修改。
查询图书:
普通用户可以在此查询图书信息然后订阅或借阅。
用户注册:
对于没有账号的用户需要先进行注册。
删除学生信息:
管理员对于不存在的学生信息进行删除。
修改学生信息:
管理员对于普通用户的信息进行修改。
查询学生信息:
管理员可以查询所有学生的信息。
添加公告:
管理员添加公告通知学生一些事情。
删除公告:
对于过期的公告进行删除操作。
修改公告:
管理员可以对公告信息修改。
查询公告:
所有用户都可以对公告进行查询。
用户留言:
所有用户可以进行留言以便和其他用户或管理员进行交流。
回复留言:
此功能可以使所有用户之间进行交流和反馈。
删除留言:
管理员可以对一下不好的留言进行删除。
订阅图书:
所有用户都可以查询图书之后进行订阅。
修改个人密码:
当觉得自己密码不安全时,所有用户都可以随时更改密码。
2、系统事件流
依据软件工程的基本原理,详细设计阶段的根本任务是确定应该怎样具体实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在系统实现阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
具体来说就是把经过总体设计得到的各个模块详细的加以描述。
在此给出系统的事件流,如图3-2所示。
图31系统事件流
(二)数据库设计
1、E-R图
E-R模型的“联系”用于刻画实体之间的关联。
一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。
若有联系,进一步确定是1:
N,M:
N,还是1:
1等。
还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。
在需求分析阶段已完成该系统所有的数据分析。
根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。
根据上面的设计可以规划出的实体有:
读者实体(图3-5)、图书实体(图3-6)、借书信息实体(图3-7)、留言实体(图3-8)和公告实体(图3-9)。
图3-5图书实体(图书编号为主键)
图3-6用户实体(ID为主键)
图3-7图书借还实体(图书编号为主键)
图3-8留言实体(留言编号为主键)
图3-9公告实体(公告编号为主键)
对各个实体进行分析,可以得到系统的ER图如图3-10所示:
图3-10系统ER图
2、数据库模型图
根据以上实体ER图和系统ER图,可以得到以下数据库模型图(如图3-11数据库模型图所示):
图311数据库模型图
3、数据库表的设计
由数据模型利用SQLsever2005进行数据库的详细设计,本系统设计的数据库名为BookMis,其基本表的设计如下:
图书信息表(编号(ID)、书名(BookName)、出版社(Publisher)、作者(Author)、类型(Style)、价格(Price)、位置(Point)、预定(Orders))如表3-1所示:
表3-1图书信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
ID
int
是
是
否
编号
2
BookName
nvarchar
否
否
是
书名
3
Publisher
nvarchar
否
否
是
出版社
4
Style
nvarchar
否
否
是
类型
5
Author
nvarchar
否
否
是
作者
6
Price
nvarchar
否
否
是
作者
7
Point
nvarchar
否
否
是
位置
8
Orders
nvarchar
否
否
是
可借
预定
用户信息表(用户编号(UserID)、姓名(UserName)、年龄(Age)、性别(Sex)、系部(Apartment)、班级(Class)、联系电话(Phone)、身份证号(IDCard)、邮箱(Email)、密码(PassWord)、登录身份(Identity))如表3-2所示:
表3-2用户信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
UserID
int
是
是
否
用户编号
2
UserName
nvarchar
否
否
是
姓名
3
Age
nvarchar
否
否
是
年龄
4
Sex
nvarchar
否
否
是
性别
5
Apartment
nvarchar
否
否
是
系部
6
Class
nvarchar
否
否
是
班级
7
Phone
nvarchar
否
否
是
联系电话
8
IDCard
nvarchar
否
否
是
省份证号
9
nvarchar
否
否
是
邮箱
10
PassWord
nvarchar
否
否
是
密码
11
Identity
nvarchar
否
否
是
登录身份
借阅信息表(图书编号(ID)、用户编号(UserID)、节约时间(BorrowTime)、归还时间(ReturnTime)、借还状态(Stata))如表3-3所示:
图3-3借阅信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
ID
int
否
是
否
图书编号
2
UserID
nvarchar
否
否
是
用户编号
3
BorrowTime
datetime
否
否
是
借阅时间
4
ReturnTime
datetime
否
否
是
归还时间
5
Stata
nvarchar
否
否
是
未还
借还状态
留言信息表(留言编号(MessageID)、用户姓名(UserName)、留言日期(DateTime)、留言(Message)、留言回复(Reply))如表3-4所示:
图3-4留言信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
MessageID
int
是
是
否
留言编号
2
UserName
nvarchar
否
否
是
用户姓名
3
DateTime
datetime
否
否
是
留言日期
4
Message
nvarchar
否
否
是
留言
5
Reply
nvarchar
否
否
是
留言回复
公告信息表(公告编号(ID)、发布日期(Date)、内容(Board))如表3-5所示:
图3-5公告信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
ID
int
是
是
否
公告编号
2
Date
datetime
否
否
是
(getdate())
发布日期
3
Board
nvarchar
否
否
是
公告
系部信息表(系部编号(ApartID)、系部名(ApartName))如表3-6所示:
表3-6系部信息表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
ApartID
int
是
是
否
编号
2
ApartName
nvarchar
否
否
是
系部名
班级表(班级编号(ClassID)、班级(ClassName)、系部编号(ApartID))如表3-7所示:
表3-7班级表
序号
列名
数据类型
标识
主键
允许空
默认值
说明
1
ClassID
int
是
是
否
编号
2
ClassName
nvarchar
否
否
是
班级
3
ApartID
nvarchar
否
否
是
系部编号
四、系统模块的实现
(一)用户注册
登录之前,如果用户没有登录账号的话,可以点击登录界面的“注册”界面进行注册如图4-1所示:
图41用户注册
注册关键代码:
UI层:
privatevoidbtnRegister_Click(objectsender,EventArgse)
{
stringUserName=.();
DateTimeAge=(this.dtpBrith.Text.ToString());
stringSex=this
stringApartment=this
stringClass=this
stringPhone=this
stringEmail=this
stringIDCard=this
string
user=newintvalue=(UserName,Age,Sex,Apartment,Class,Phone,Email,IDCard,Identity);
if(value>0)
{
("信息添加成功!
");
="";
="";
="";
="";
="";
="";
="";
="";
}
else
{
("信息添加有误!
","信息修改",,;
}
}
DAL层:
publicintInsertUserInfoDAL(stringUserName,DateTimeAge,stringSex,stringApartment,stringClass,stringPhone,stringEmail,stringIDCard,stringIdentity)
{SqlConnectionConn=newSqlConnection;
();
stringComString=@"INSERTINTO[bookmis].[dbo].[userInfo]([UserName],[Age],[Sex],[Apartment],[Class],[PhoneNumber],[IdentityCard],[Email],[identitys])VALUES(@UserName,@Age,@Sex,@Apartment,@Class,@Phone,@Email,@IDCard,@Identity)";
SqlCommandComm=newSqlCommand(ComString,ConnnewSqlParameter("UserName",UserName));
newSqlParameter("Sex",Sex));
newSqlParameter("Age",Age));
newSqlParameter("Apartment",Apartment));
newSqlParameter("Class",Class));
newSqlParameter("Phone",Phone));
newSqlParameter("Email",Email));
newSqlParameter("IDCard",IDCard));
newSqlParameter("Identity",Identity));
return();
}
(二)登录界面
用户通过这个界面进入系统,登录时分为普通用户和管理员,如图4-2所示:
图42登录界面
用户登陆主界面实现的关键代码如下:
privatevoidbtnLogin_Click_1(objectsender,EventArgse)
{
if"")
{("用户名不能为空,请重新输入!
");}
else
{
if"")
{("密码不能为空,请重新输入!
");}
else
{
if"")
{("用户类型不可为空,请重新输入!
");}
else
{string
string
string
stu=newUser=(UserName,PassWord,Identity);
if
{
if
{
if
{=;
=;
=;
=;
=;
=;
=;
("登录成功,欢迎使用图书管理系统!
","欢迎提示",,;
Everyonefrm=newEveryone();
();
();
}
else{("密码或用户名错误,请重新输入!
");
}
}
else{("密码错误,请重新输入!
");}
}
else{("用户名错误,请重新输入!
");}
}
}
}
}
(三)系统首页
用户登录之后可以进入系统首页,如图4-3所示,用户可以再这个界面进行各种操作或管理:
图4-3系统首页界面
(四)新书入库
当有新书到时,可以通过这个界面录入图书信息到数据库中,如图4-4所示:
图44新书入库
(五)图书管理
管理员可以通过这个界面对图书进行管理,普通用户可以通过这个界面查询图书信息,了解图书信息和预定图书,如图4-5所示:
图45图书管理
管理关键代码:
UI层:
删除:
stringBookName=this
stringAuthor=this
stringPress=this
DateTimePublishDate=(this
stringISBN=this
stringPrice=this
book=newintvalue=(BookName,Aut
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 论文