信息资源管理论文
课 程 论 文
课程名称 信息资源管理 题 目 图书管理系统的
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
与开发 系 部 信息学院 专 业 信息管理与信息系统 班 级 信管1021班 学 号 100312013 学生姓名 周辰芳 任课教师 胡德发 职 称 讲 师
2011 年 12 月 21 日
图书管理系统的设计与开发
[内容摘要] 图书管理系统是智能办公系统(IOA)的重要组成部分,因此,图书管理系统也以方便、快捷的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减轻工作人员以往繁忙的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、掌握信息。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。采用SQL Server2005数据库作为后台数据库、Visual C#编程语言作为前台开发工具,通过对数据库技术进行了较深入的学习和应用,主要完成书目检索、读者管理、借阅管理、图书管理、用户维护、系统维护等系统功能。系统运行结果证明,本文所设计的图书管理系统可以满足学生和教师借阅者、图书管理员两方面的需要,达到了设计要求。
[关键词] 图书管理;系统设计;信息;ASP.NET;SQLServer2005
一、概述
(1) 行业背景
图书馆是信息交换和资源流通的重要媒介,对图书馆的信息化管理将大大提高图书资源的利用和信息的交换速度。建立图书管理系统,使每个用户自由地选到自己需要的图书,避免传统借书模式的繁琐、低效率、借阅程序臃肿等等的缺点,减轻相关人员的负担。
一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆的借书和还书过程,想必大家都已很熟悉。在计算机尚未在图书管理系统广泛使用之前,借书和还书过程主要依靠手工。随着近年来信息技术及计算机网络技术的不断发展, 图书馆也先从传统的图
书馆发展到自动化图书馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来越现代化,人们查找资料也更加方便。对于一些小图书馆和一些图书室来说,由于工作人员比较少,长期以来,作为图书馆的主要工作—图书借阅一直未能很好地开展。在平常的图书借阅工作中, 由于大部分读者不熟悉图书馆藏书,且对图书排架分类的不了解,往往花费很长时间才能找到其所需的书。为提高管理效率,更好地为读者服务,利用已有的办公局域网络条件,将馆藏书籍做成基于WEB的查询系统,实现图书在一个单位的网络内甚至Internet上查询,可使图书查询和借阅变得更加方便快捷,从而使图书室的工作效率得到明显提高。
(2) 可行性分析
本次设计题目:“图书管理系统的设计与开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统的可行性分析有以下几个方面:
1、技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等。
2、经济可行性:系统建设不需要很大的投入、可缩减人力投入。
3、运行上可行性:本系统作为一个小型的图书馆信息管理系
统,所耗费的资源非常的小。
4、各种社会因素可行性分析:可降低工作人员工作强度,提高效率。
综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。
二、系统分析报告
(1)组织结构图
根据图书管理系统的实际需求,可以将图书管理系统划分为系统设置、图书管理、读者管理、图书借还、系统查询、排行榜6个部分各个部分的具体功能的系统功能结构图:
图书管理系统
系读图图系
统者书书统排 设管管借查行
置 理 理 还 询 榜
读读图图 图图图读
管书者者书书图图书书书者
理架类档档类书书档借借借
员设型案案型借归案阅阅阅
设置 管管管管阅 还 查查排排
置 理 理 理 理 询 询 行行
榜 榜
1、图书借阅系统完成用户的借书过程其数据流图:
2、还书系统完成图书的归还过程其数据流图:
3、图书档案管理系统为用户提供图书档案信息其数据流图:
4、读者档案系统用于记录读者的详细信息其数据流图:
(2)系统流程图
图书管理系统的流程是用户先输入自己的帐号密码及系统显示的验证码进入系统如有一项不符合则不能进入系统,成功登陆系统后系统根剧登陆的帐号信息从数据库中的数据进行对比判断是读者还是管理员,如果是读者则能进行信息查询,及修改自己的相关信息,查询到自己所需要的图书就能通过管理员进行借阅图书、归还图书也是通过管理员完成的。如果不是读者而是管理员,那管理员可以进行相关信息的查询、添加删除图书及读者的所有信息、设置相应的权限、为图书更新排行榜的信息、以及完成读者的图书借阅与归还。
图书管理系统的系统流程图:
登陆
系统
否
是否登陆
管理读者 判断身份 员
排行榜信息 图书信息 读者信息 图书归还 图书借阅 信息查询
(3)系统流程分析
根据开发图书管理系统的需求分析,本系统设计了三种用户,分别为系统管理员、教师和学生。
系统要求有系统管理员用户,我们设定系统管理员,当系统管理员使用帐户登录后,需要查看有关图书的一系列的信息,管理员可以通过系统导航菜单进入读者管理界面、图书管理界面、图书借还界面、系统查询界面、排行榜界面,在读者界面中,管理员添加和修改学生或教师信息、用户可以查看自己信息,在图书管理界面管理员可以添加和修改图书信息、用户可查看图书,在图书借还界面完成读者借书还书的操作,系统查询界面管理员可以查看借出去的图书信息及库存的信息、用户可以查找自己的所需的图书,排行榜界面主要是可以让用户知道哪些图书受到读者的喜爱。读者(老师和学生)使用读者帐号登陆系统后,可以查询自己所需要的图书的信息、也可以查询自己个人的基本信息及图书的借还信息,还能查看排行榜的信息。读者的借书和还书过程是通过管理员完成的。
三、系统设计方案
(1) 数据库概念结构设计
数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这个阶段不用考虑所采用的数据库管理系统、操作系统类型、机器类型等问题。这阶段可用的工具很多。本系统采用了E-R图的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
进行数据库概念结构设计。E-R图是描述数据实体关系的一种直观描述工具。这种图中有:
1、实体:用方框表示,方框内为实体的名称。
2、实体的各种属性:用椭圆表示,椭圆内为属性名称。使用线段将其和响应的实体连接起来。
3、实体之间的联系:用菱形表示,菱形内为联系的名称。 实体和实体之间的联系较多,比较常见的联系有l:1,l:N和M:N这三种。
(2)数据库逻辑结构设计
概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计。也就是要将概念上的结构转化为数据库系统所支持的实际数据模型。
第一种转化是将实体转化为关系表。
第二种转化是联系的转化。即将各个实体之间的联系转化为表格之间的关系。
在上面工作的基础上归纳出人员管理数据库表格的组成之间的联系等等。该数据库系统具有以下方面的特点:
结构合理,对一个人员建立多条记录。
所建立的数据冗余度小,独立性强。
建档、修改、查询、统计快速而准确。
保密性好、可靠性好。
图书管理系统中要有图书,图书是图书管理系统中密不可分的部分,因此要创建一图书信息实体,用来保存图书的详细信息。
图书信息实体属性图:
(3)代码设计
1、自动计算图书归还日期的关键代码:
int days =
Convert.ToInt32(btypemanage.FindBTypeByName(btypemanage,
"tb_booktype").Tables[0].Rows[0][2].ToString());
TimeSpan tspan = TimeSpan.FromDays((double)days);
borrowandbackmanage.YGBackTime = borrowandbackmanage.BorrowTime + tspan;
2、系统登陆验证码:
在学校图书管理系统的开发过程中,怎么样防止某些人利用某些
恶意的软件对图书管理系统进行恶意的登陆来攻击系统,增加图书管
理系统的安全性是一个重要的问题。在图书管理系统的登陆模块中加
入一个验证码的功能,即用户除了要输入帐号和密码还要输入系统为
用户提供的验证码。验证码可以很好的解决了怎样防止恶意用户利用
恶意软件对系统页面的疯狂提交、以及暴力破解密码进行登陆的问
题。因此,设置一个随机函数在数字0~9和英文字母A~Z中随机抽取
四个,在用户打开登陆界面的时候,系统通过随机生成器随机生成4
个数字或字母或数字加字母存放在缓存内,并出现在界面上顺序是随
机的,当用户登陆时输入的验证码要与缓存中的进行对比符合就进
入,不符合就不能登陆。系统在提供验证码时候要加入一些干扰的条
件的,不过这些人的肉眼是很容易分辨,但机器人程序不能分辨,很
好的防止某人利用机器人程序对系统的恶意操作增加了系统的安全
性。验证码实现的关键代码:
private string GenerateCheckCode()
{
int number;
char code;
string checkCode = String.Empty;
System.Random random = new Random();
for (int i = 0; i < 4; i++)
{
number = random.Next();
if (number % 2 == 0)
code = (char)('0' + (char)(number % 10));
else
code = (char)('A' + (char)(number % 26));
checkCode += code.ToString();
}
Response.Cookies.Add(new HttpCookie("CheckCode", checkCode));
return checkCode;
}
private void CreateCheckCodeImage(string checkCode)
{
if (checkCode == null || checkCode.Trim() == String.Empty)
return;
System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);
Graphics g = Graphics.FromImage(image);
try
{
//生成随机生成器
Random random = new Random();
//清空图片背景色
g.Clear(Color.White);
//画图片的背景噪音线
for (int i = 0; i < 2; i++)
{
int x1 = random.Next(image.Width);
int x2 = random.Next(image.Width);
int y1 = random.Next(image.Height);
int y2 = random.Next(image.Height);
g.DrawLine(new Pen(Color.Black), x1, y1, x2, y2);
}
(4)数据库设计
1、读者信息实体E-R图:
2、图书的借阅和归还是图书管理系统中的一项重要的环节,开发图书管理系统就是为了方便读者对图书的借阅和归还,因此要建立一个图书借还实体,用来保存读者对图书的借阅和归还的详细信息。
图书的借阅和归还实体属性图:
3、图书管理系统为了增加系统的安全性,管理员只有在系统登陆模块验证通过后才能进入管理员的操作界面,因此套在数据库中创建一个存放登录用户信息的管理员实体。
管理员实体属性图:
4、图书管理系统的系统E-R图:
…… 编号 编号 名称 类型 密码
……
管理 读者 管理员
添加 修改 删除
还书时间 修改
管理 借还 图书
添加 删除
借书时间
类型 …… 条形码
(5)数据表设计
本系统使用的数据库管理系统为SQL Server 2005。数据库中的
表有管理员信息表、图书信息表、读者信息表、管理员权限表、图书
借阅归还表等。
图书管理员基本信息表:
字段名 数据类型 主键 描述
id varchar 是 管理员编号
name varchar 否 管理员名称
pwd varchar 否 密码
读者详细信息表:
字段名 数据类型 主键 描述
id varchar 是 读者编号
name varchar 否 读者名称
sex char 否 性别
type varchar 否 读者类型 birthday smalldatet否 生日
ime
papertype varchar 否 证件类型 papernym varchar 否 证件号码
tel varchar 否 电话
email varchar 否 E-mail createdate smalldatet否 注册日期
ime
oper varchar 否 操作员 remark text 否 备注 borrownum int 否 借阅次数
图书详细信息表:
字段名 数据类型 主键 描述 Bookcode varchar 是 图书条形码 bookname varchar 否 图书名称
type varchar 否 图书类型 autor varchar 否 作者 translator varchar 否 译者 pubname varchar 否 出版社 price money 否 价格
page int 否 页码 bcase varchar 否 书架 storage bigint 否 存储数量 intime smalldatet否 入馆时间
ime
oper varchar 否 操作员 borrownum int 否 被借次数
图书借阅和归还信息表:
字段名 数据类型 主键 描述
id varchar 是 借书编号 readid varchar 否 读者编号 bookcode varchar 否 图书条形码 borrowtime smalldateti否 借书时间
me
ygbacktime smalldateti否 应该还书时
me 间 sjbacktime smalldateti否 实际还书时
me 间 borrowoper varchar 否 借书操作 backoper varchar 否 还书操作 isback bit 否 是否归还
权限信息表:
字段名 数据类型 主键 描述
id varchar 是 用户编号 syset bit 否 系统设置 readset bit 否 读者管理 bookset bit 否 图书管理 borrowback bit 否 图书借还
syaquery bit 否 系统查询
(6) 图书管理系统详细设计
主要模块的运行
1、登陆界面
当用户输入用户名、密码,系统自动将输入的信息和相关数据表中的内容进行比较,如果该用户输入的内容和数据表中的内容相符,则通过验证,此次登录成功;否则登录失败。比较的过程是由浏览器将指令,数据发送到Web服务器,Web服务器通过对数据库进行查询将结果返回到浏览器,从而端显示成功的消息,用户只有成功登陆系统后才能进行一系列的操作:
2图书信息管理模块
图书信息管理模块主要分为查看图书信息页面和添加修改图书信息页面,用户可以在查看图书信息页面查看图书的基本信息,管理员也可以看这些信息,并且可以通过单击“添加图书信息”这个超级链接或GridView控件中的“详情”超级链接转到添加或删除图书信息界面,并在该页中添家或修改图书信息:
图书信息管理模块的实现,主要是使用了ADO.NET操作数据库技术。
在使用ADO.NET技术操作数据库时,主要用到了Connection、Command、DataAdaper和DataSet4个对象重要负责在Connection对象主要负责连接数据库,Command对象主要负责生成并执行SQL语句,DataAdaper对象主要负责在Command对象执行完SQL语句后生成并填充DataSet和DataTable,而DataSet对象主要负责存取和更新数据。
3 图书借还信息模块
图书借还管理模块主要分为图书借阅页面和图书归还页面,用户可以在通过这个模块查看图书的借阅和归还信息。管理员可以在图书
通过这个模块来完成读者借和还书的操作:
实现图书的借还功能主要用到了GridView模板列技术。
四、测试
对管理员信息维护的测试
(1)输入 2008101 点击确定
2)在信息修改处依次输入 2008111
黄
123
123
3)新增
输入 123
华
123
123
4)删除
记录删除
五、总结
在这次课程设计中,我们不仅完成图书管理系统的设计,同时也完成数据库的建立,用户界面设计以及相关功能的实现。通过这次课程设计,并把所学与实际结合起来,为以后对这类的处理打下基础。总之,在这次数据库课程设计中,我受益匪浅。最后,感谢老师这学期的耐心指导!
参考文献
[1] 刘红军(信息管理基础[M](北京:高等教育出版社,2004
[2] 姜玲玲 冯飞,数据库原理(第三版)。北京:清华大学出版社
湖南商学院北津学院课程设计评审表
姓 名 周辰芳 系部 信息学院 专业班级 信管1021班 题 目:图书管理系统的设计与开发
评审项目 成 绩 评 立题或选题(10分)
获取信息能力(10分)
审
方案的新颖性(10分)
方案的综合性(20分)
意
方案的内容(40分)
见 文档的格式(10分)
总评100%
成 绩 指导教师职称 讲师 签名 评审时间: 2011年 月 日