《图书管理信息系统的设计与实现学位论文.doc》由会员分享,可在线阅读,更多相关《图书管理信息系统的设计与实现学位论文.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘要 随着人类社会的发展,人们对知识的需求也不断地增长。在这种形式下,书籍渐渐地成为人们获取知识的主要途径。而图书馆的在人们生活中占据一定的位置,图书馆信息服务促进了信息的传播,利用及再生产的增殖能力,人们掌握了信息,使之转变为技术,成为作用于经济的生产力,促进了经济的发展,这就是信息管理服务的价值体现。为了能最大限度地发挥信息的效能,就离不开对信息的加工整理,离不开对信息的管理服务。而针对图书管理的系统也因运而生。信息管理系统开发的总体目的是在图书馆信息管理中实现管理的系统化、自动化,减少工作量,增加效率及可靠性。本课题采用VS2010的ASP.NET作为开发平台,主要是设计一个图书馆信息管
2、理系统。而在功能方面本人主要负责登录界面、书籍增减、书籍出入库。关键词: 图书管理;图书管理系统;书籍操作;ASP.NETAbstract With the development of society, Mankind need more knowledge also constantly increase,Under this fsituation,book gradually become the main path to obtain the knowledge of life,and library naturally occupied in people certainly ops
3、ition, the library information services to promote the dissemination of information, use and reproduction of proliferative capacity, people master the information and make changes as technology and become role in the economy, productivity, promote economic development, and this is reflected the valu
4、e of information management services. In order to maximize the effectiveness of information to organize the processing of information can not be separated, can not do without the information management services. The library management systems for transportation and for students. Information manageme
5、nt system development The overall purpose of the overall information management in the library to achieve systematic management, automation, reduce workload, increase efficiency and reliability. The topic of ASP.NET with VS2010 as the development platform is to design a library information managemen
6、t system. In the function I am responsible for login screen, change books, books out of storage.Key words:Library Management ; Library Management System ; Book Operation ; ASP.NET1. 绪论1.1 选题背景随着社会的发展,人们对知识的需求也不断增长,在这种形式下,书籍就渐渐成为人们获得并增持长知识的只要途径,而图书馆就自然而然地在人们的生活中占据一定的位置。随着图书馆的规模不断扩大,数据量急剧增加,图书馆管理的各种信息
7、也成倍增长,特别是一些大的图书馆,而面对庞大的信息量,有必要开发图书管理系统来提高图书馆管理工作的效率。因此,如何科学的管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,而开发一套完善的图书管理系统就成了不可缺少的需求。而借助先进的图书管理系统是当今高校图书馆发展的必然趋势。全面普及信息管理系统,不仅方便读者,大大促进图书馆资源的开发和利用,而且也能全方面体现图书馆的综合服务功能。但目前绝大多数高校的图书馆系统不尽人如意,最大限度不能满足读者需求。因此我们小组设计了这套图书管理系统软件,希望为读者和管理人员提供较为科学的服务。1.2 研究意义当今,图书馆作为信息资源的集散地,图书和
8、用户的借阅资料繁多,包含很多的数据信息的管理,使得管理员工作负担严重。现在,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据相关资料的调查得知,他们以前对信息的主要方式是基于文本、表格等纸介质的手工处理。数据信息处理工作量大,容易出错,数据繁多,容易丢失,且不易查找1王珊,师萨煊编著.数据库系统概论M.高等教育出版社,2009.6-8.1。总的来说,缺乏系统,规范的信息管理手段,尽管有的图书馆有信息管理系统,但是没有发挥它的效力,资源闲置比较突出。这就要求我们更加注意到图书管理系统在图书馆的的关键作用。开发一个操作简单,功能管理完善的系统,帮助更好、更高效率的管理图书信息成
9、为图书馆发展趋势,也是图书管理人员的必备软件系统。2. 系统开发工具2.1 开发工具 Visual Studio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。目前已正式发布的是9.0版本,也就是Visual Studio2008,而在2008年12月份,微软公布了下一代开发工具和平台“Visual Studio Team System 2010”Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。随着 .NET 口号的提出与 Windows XP/Office
10、 XP的发布,微软发布了Visual Studio .NET。在这个版本的 Visual Studio 中,微软剥离了 Visual FoxPro 作为一个单独的开发环境以 Visual FoxPro 7.0单独销售,同时取消VisualInterDev。与此同时,微软引入了建立在.NET框架上的托管代码机制以及一门新的语言C#,C#是一门建立在C+和Java基础上的现代语言,是编写.NET框架的语言。.NET 的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。所有CLR支持的代码都会被解释成为 CLR 可执行的机
11、器代码然后运行。Visual Studio 2010和.NET Framework 4.0将在下面五个方面有所创新: 一、Visual Studio 2010将坚持打造一个功能平等、共同分担的平台以用于组织内的应用程序生命周期管理过程。 二、Visual Studio 2010,微软将为开发者提供合适的工具和框架,以支持软件开发中最新的架构,开发和部署。 三、客户将在不同规模的组织内创建应用,跨度从单个部门到整个企业。Visual Studio 2010将确保在这么宽泛的范围内的应用开发都得到支持。 而在数据库方面,我们采用SQL,即结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、
12、功能极强的关系数据库语言。其功能并不仅仅是查询。当前,几乎所有的关系数据库管理系统软件都是支持SQL,许多软件厂商对SQL基本命令集还进行了不同程度的扩充和修改。SQL语言有一下几个优点:一、非过程化语言;二、统一的语言;三、所有关系数据库的公共语言。2.2 运行环境配置2.2.1 硬件环境处理器:InterCR300 或更高内存:256MB或更高硬盘空间:80MB以上2.2.2 软件环境操作系统:Windows XP数据库:SQL Server 2008开发平台:ASP.NET开发环境:VS2010 3. 系统需求分析3.1 系统开发背景分析目前,大部分应用于图书馆的系统都存在种种弊端:一、
13、很多系统都是C/S结构,需要在客户机上安装软件;二、图书管理系统书目查询较以前来说有高效、准确、方便快捷等优点,但是在使用过程中,也会出现错借、漏借,漏还、漏续借等问题;三、以往的图书管理信息服务不完善,不能给读者满意的需求。为了满足读者不断增长的信息需求,现代信息管理系统应该加强信息服务;四、难以跟随现代化市场的变化。缺乏系统,规范的信息管理手段。3.2 系统总体需求分析需求分析简单地说就是分析用户的需求。需求分析是设计数据库的起点,需求分析的结果能准确地反映了用户的实际要求。图书管理系统是一项复杂的系统工程,对实际情况进行客观的分析,深入了解需求。系统利用ASP.NET与SQL2005结合
14、的技术建立数据库管理系统,采用灵活的交互式的动态的ASP页面来实现。我们知道,需求调查是为了研究系统设计的开发途径和方法。同时它也是进行概要设计和详细设计的基础,是进行内部维护和测试的依据。一般来讲,图书馆的规模决定藏书量的大小,好比说,以学校的图书馆来说,它面向的对象大都是学生和教师,这样范围就不是很大,就会适当选择小型的图书管理系统就能满足需求。而且学校的资金和场地问题也是需要充分考虑的,可以说,面向对象决定图书馆的藏书规模,决定图书管理系统的功能需求。一个好的图书馆不仅仅看它的藏书的种类和数量是否齐全,还要看它的管理机制是否健全。那么,一个好的图书管理系统就应运而生。为了减少旧书和大量内
15、容重复多余的图书占用有限的空间而又尽量做到图书种类的齐全,作为图书管理人员来说就需要及时的对图书的添加、减少、出库、入库进行科学规范的管理,这样就必须借助图书管理系统的强大功能,让管理工作及时、快速完成。这么多的好处,看来图书管理系统,是图书管理人员,读者必不可缺的东西。3.3 系统各功能模块需求分析3.3.1 管理员模块功能需求 系统开发的总体任务是实现各种信息的系统化、规范化和自动化。图书管理信息系统需要完成的功能主要有: 读者基本信息的输入,包括读者编号、读者姓名、读者性别、家庭住址、电话号码、电子信箱地址、备注等。 读者基本信息的查询、修改。 书籍信息的输入、包括书籍的编号、书籍的名称
16、、书籍的类别、作者的姓名、出版社名称、出版日期、关键词、备注信息等。 书籍信息查询、修改。 借书信息的输入,包括借书信息编码、读者编码、书籍编号、借书日期、以及应还书日期的生成等。 还书信息的输入,包括还书信息编号、读者信息编号、书籍编号、借书日期、还书日期、备注信息等。3.3.2 读者模块功能需求图书信息检索,范围可按书名、书籍编号、作者、出版社、关键词等检索款目进行精确或模糊检索、最快时间查找目标书籍。读者对个人信息检索,获取当前读者的个人信息。并根据借书证号查询当前读者当前在借书情况、历史借书情况等。3.4 可行性分析3.4.1 经济可行性经济可行性分析主要是对开发新系统所投入的资金与系
17、统投入使用后所带来的经济效益进行比较,确认新系统是否会给图书馆带来一定的经济效益。现在,计算机的价格已经十分低廉,性能也比较强大。图书管有自己的服务器,域名。只需将网页,SQL数据放到服务器上并运行即可。系统的运行可以代替进行许多繁杂的劳动,节省很多资源,可以大大提高管理员的工作效率。所以,本系统在经济上是可行的。3.4.2 技术可行性技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。本小组对图书管理产品操作信息资源需求方向有了一定认识。软件全是微软的,硬件方面普通电脑就可编写。综上所述,本系统的设计与开发在技术上和硬件设
18、备上的条件都是满足的,因此,它在技术上是可行的。3.4.3 操作可行性本系统为网页形式,每台电脑基本上装有浏览器,使用方便,在任何一台联网的电脑上就可操作。所以操作可行性可行。3.4.4 法律可行性本系统的开发和使用符合国家法律,所以法律上可行。4. 系统总体设计4.1 系统总体模块与功能4.1.1 系统整体模块结构图4-1 系统模块图4.1.2 功能设计一、登录界面:用户登录二、基本操作区:留言,个人资料修改,搜索图书,书籍借阅情况三、书籍管理:书籍查询,书籍入库,修改书籍四、库存管理:库存查询,添加书籍库存量,减少书籍库存量五、书籍操作:借书操作,还书操作,丢书操作,罚款操作,图书馆借书情
19、况六、留言管理:对留言的管理。七、超级管理员:除以上的操作外,还可以对用户进行添加,修改操作。4.2 系统登录模块与功能4.2.1 用户登录模块图4-2 登录模块图4.2.2 功能设计 一、普通用户:普通人员权限,只能操作基本操作区这个模块; 二、普通管理员:除了超级管理员模块,其他都有权限操作; 三、超级管理员:拥有系统全部权限操作。4.2.3 登录界面程序流程 图4-3 界面流程图4.3 书籍管理模块与功能4.3.1书籍管理模块图4-4 书籍管理模块图4.3.2 功能设计一、添加书籍:输入相关新书的信息,上传本地书籍图片,点击保存新书的相关信息。可在书籍表中查看添加的新书信息,方便核对,再
20、联系到库存管理模块进行书籍入库操作。二、修改书籍:提供书名、作者、关键字、出版社四种模糊查询功能,方便查找需要修改的书籍,再进行信息的修改,主要针对书籍信息的变更,准确更新书籍相关内容。4.3.3 书籍管理模块程序流程图4-5 书籍管理模块流程图4.4 库存管理模块与功能4.4.1 库存管理模块图4-6 库存管理模块图4.4.2 功能设计一、书籍入库:提供模糊搜索功能,在书库表中选择需要修改的书籍信息,输入书籍需要入库的数量,必须为非负数,点击入库。该功能主要针对大量书籍的订购。二、书籍出库:提供模糊搜索功能,在书库表中选择需要修改的书籍信息,输入书籍需要入库的数量,点击出库。该功能主要针对些
21、书籍比较残旧,或者丢失,书籍库存会做出相应的减少数量。三、关联:而对于新书的采购,必须先在书籍管理模块添加书籍信息,再进入库存管理模块,进行相应的书籍库存量的增加。4.4.3 库存管理模块程序流程图4-7 库存管理模块流程图5. 系统实现5.1 模块界面设计5.1.1 系统登录界面图5-1 系统登录界面关键代码: if (verifycode.Value != Class1.yam) Response.Write(alert(验证码出错!); else string namebox = username.Value.Replace(, ); string passbox = password.
22、Value.Replace(, ); string sql = select * from reader where userid= + namebox + ; try SqlDataReader dtr = cla.readrow(sql); if (dtr != null) if (dtrpassword.ToString() = passbox) Sessionname = dtrname.ToString(); Sessionsf = dtrmanager.ToString(); Sessionuserid = namebox; Response.Redirect(index.html
23、); else Response.Write(alert(密码错误!请重新输入密码); else Response.Write(alert(用户名不存在!请重新输入用户名!); catch (Exception ex) Response.Write(alert(出错了! ); 5.1.2 添加书籍界面图5-2 添加书籍操作界面关键代码: if (TextBox1.Text != ) int rel = 0; if (CheckBox1.Checked = true) rel = 1; string sql = insert books (name,type,writer,chuban,date
24、time,keys,price,image,beizhu,rukushijian ,rel,jiechu,sl) values( + TextBox1.Text + , + TextBox2.Text + , + TextBox3.Text + , + TextBox4.Text + , + TextBox5.Text + , + TextBox6.Text + , + TextBox7.Text + , + Image1.ImageUrl + , + TextBox9.Text + ,getdate(), + rel + ,0,0); cla.execsql(sql); Label9.Tex
25、t = 添加成功!; SqlDataSource1.DataBind(); GridView1.DataBind(); else Label9.Text = 请填写名称; 5.1.3 修改书籍界面图5-3修改书籍操作界面关键代码:if (Label10.Text != ) string sql = update books set name= + TextBox1.Text + ,type= + TextBox2.Text + ,writer= + TextBox3.Text + ,chuban= + TextBox4.Text + ,datetime= + TextBox5.Text + ,
26、keys= + TextBox6.Text + ,price= + TextBox7.Text + ,image= + Image1.ImageUrl + ,beizhu= + TextBox9.Text + where id= +Label10 .Text ; cla.execsql(sql); Label9.Text = 修改成功!; SqlDataSource1.DataBind(); GridView1.DataBind(); else Label9.Text = 请填写名称; 5.1.4 书籍入库界面图5-4书籍入库操作界面关键代码: if (Convert .ToInt32 ( T
27、extBox3 .Text)0 ) int a = int.Parse(TextBox3.Text); string sql = update books set sl=sl+a+ where id= +Label10 .Text ; cla.execsql(sql); Label9.Text = 修改成功!; SqlDataSource1.DataBind(); GridView1.DataBind(); GridView1_SelectedIndexChanged(sender, e); else Label9.Text = 请填写正确的数量; 按书籍名称查询代码:if (TextBox4
28、.Text != ) SqlDataSource1.SelectCommand = select * from books where name like% + TextBox4.Text + % or writer like % + TextBox4.Text + % or chuban like % + TextBox4.Text + % or writer like % + TextBox4.Text + %; SqlDataSource1.DataBind(); GridView1.DataBind(); else Response.Write(alert(输入不能为空!请重新输入!)
29、; 5.1.5书籍出库界面图5-5书籍出库操作界面关键代码:if(Convert.ToInt32(TextBox3.Text)0&Convert.ToInt32(TextBox2.Text) - Convert.ToInt32(TextBox3.Text)=0) int a = int.Parse(TextBox3.Text); string sql = update books set sl=sl-+a+ where id= +Label10 .Text ; cla.execsql(sql); Label9.Text = 修改成功!; SqlDataSource1.DataBind(); G
30、ridView1.DataBind(); GridView1_SelectedIndexChanged(sender ,e); else Label9.Text = 请填写正确的数量; 搜索所有书籍代码:SqlDataSource1.SelectCommand = select * from books; SqlDataSource1.DataBind(); GridView1.DataBind();按用户需求搜索书籍代码:if (TextBox4.Text != ) SqlDataSource1.SelectCommand = select * from books where name l
31、ike% + TextBox4.Text + % or writer like % + TextBox4.Text + % or chuban like % + TextBox4.Text + % or writer like % + TextBox4.Text + %; SqlDataSource1.DataBind(); GridView1.DataBind(); else Response.Write(alert(输入不能为空!请重新输入!); 6系统数据库设计6.1 数据库设计 本系统使用Visual Studio 2010安装自带的SQL Server2008数据库。数据库组织设计分
32、两个阶段,即概念设计阶段、逻辑设计阶段。6.2 概念设计阶段概念设计阶段是将用户需求分析转化为概念模型,得到数据库的概念模式。本系统的概念模型为E-R模型。一、 E-R模型的介绍用实体联系的方法来描述概念模型,是通过E-R图来实现的。E-R图有三种基本成分:实体,联系和属性。(一) 实体:用于描述现实世界中的“物体”。(二) 联系:用于描述现实世界中的“物体间的联系”。(三) 属性:用于描述现实世界中的“物体的属性”。 属 性 实 体 联 系 图6-1 E-R图的基本图形符号 二、功能模块的E-R模型在整个图书管理系统中,本人主要负责有登录界面,书籍管理的添加、修改,库存管理的书籍出入库。因此
33、,在这里只给出用户表、书籍表的属性和实体联系E-R模型。 (一)用户属性E-R图备注图6-2 用户属性E-R图(二) 书籍表属性E-R图作者类型ID出版社书籍名称出版时间价格书籍表关键词备注借出数量书籍封面总数量入库数量图6-3 书籍属性E-R图6.3 逻辑设计阶段 逻辑设计阶段是将概念模式转化为数据模型,得到数据库的逻辑模式。本系统的数据模型为关系模型。建立用户表关系和书籍表关系。一、 用户表表4-2 用户(reader)表 列名名称数据类型宽度允许为空备注id序号 int4N用户序号userid用户编号char10N主键,保存用户的编号name姓名char10N保存用户名sex性别char
34、10Y保存用户性别type用户类型int4Y学生/管理员grade年级char10Y保存用户所在年级xibie系别char10Y保存用户所在系别xuehao学号char10Y保存用户学号email电子邮件nvarchar 50YXXXX.compassword密码nvarchar50Y保存用户密码beizhu备注nvarchar50Y备注tel电话号码nvarchar50Y保存用户电话号码manager用户级别int4Y0/1二、 书籍表表4-3 书籍(books)表 列名名称数据类型宽度允许为空备注id序号int4N主键,保存书号name书籍名称nvarchar50Y保存书名type类型ch
35、ar10Y保存书的类型writer作者char10Y保存书的作者名chuban出版社nvarchar50Y保存书的出版社datetime出版时间nvarchar50Y保存书的出版时间keys关键词nvarchar50Y保存书的关键字price价格money8Y保存书的价格image书籍封面nvarchar4000Y保存书的封面beizhu备注nvarchar50Y备注jiechu借出数量int4Y保存借出书的数量rukushijian入库时间datetime8Y保存书的入库时间sl总数量int4Y保存书的总数量7. 系统评价软件测试是系统质量保证的主要活动之一。测试虽然不是质量保证的“安全网”
36、。但它是不可缺少的,而且是重要的环节。因为,在系统开发的过程中,涉及一系列的活动,而在这个活动过程中,人们可能犯很多错误,错误可能发生在设计阶段,也可能发生在整个过程的开始阶段。系统测试的目标是:测试是一个程序的执行过程,其目标在于发现错误。一个好的测试用例能够发现至今尚未察觉的错误。一个成功的测试则是发现至今尚未察觉的错误的测试。总之,测试是发现错误,这不只是从技术角度测试下定义。软件测试中最为重要的是,实际工作中人们的心理学和经济学问题。系统的测试分为单元测试、组装测试、确认测试和系统测试,每一步都是在前一步的基础上进行的。7.1 系统的测试一、单元测试:又称模块测试,是针对软件设计的最小
37、单元程序模块进行测试的工作。其目的是发现模块内部的错误,修改这些错误使其代码能够正确运行。其中,多个功能独立的程序模块可并行进行测试。二、集成测试:又称组装测试,它的任务是按照一定的策略对单元测试的模块进行组装,并在组装过程中进行模块接口与系统功能测试。集成测试的策略主要有两种:一次性组装方式和增值式组装方式。三、有效性测试:又称确认测试,目的是验证软件的有效性,即验证软件的功能和性能及其他特性是否符合用户要求。软件的功能和性能要求参照软件需求说明书。四、系统测试:系统测试的目的是为了测试软件安装到实际应用的系统中后,能否与系统的其余部分协调工作,以及对系统运行可能出现的各种情况的处理能力。7
38、.2 系统的特点现有很多图书管理系统的功能和性能都很完善,但大多是面向大型专业图书馆而开发的,专业性强、操作和使用比较复杂,使得用户难以掌握,而且这些系统的价格很昂贵。与这些类似的系统相比,本系统具有功能简洁明了,易于操作等特点,而且价格低廉,适合中小型图书馆使用,尤其是适合小型图书馆使用。7.3 系统存在问题与改进意见通过对上面有关图书管理系统的功能需求分析、设计、实施以后,可知本图书管理系统的功能有:基本操作,搜索书籍,书籍管理、库存管理等等。并且实现了系统的目标,即帮助图书管人员提高工作效率,帮助读者人员利用计算机,极为方便的对图书馆的有关书籍信息进行查阅、搜索、了解等操作,使没有效率的
39、图书管理能够系统化、直观化、合理化等。在制作完成测试的过程中,出现了许许多多的小问题,如:实现不了查询功能,书籍录入出错,添加、修改书籍表与数据库的数据不一致等,经过多番测试,基本问题已得到解决,但还是有不完美的,有时还是出现些不碍事的小错误,重新运行就行。而对于系统的升级改善,由于时间有限,不能即时实现其他复杂的功能,如书籍相关的信息打印功能,用户信息模块的添加用户照片功能,直接网上提交借书信息功能等。相信通过今后的学习,我会把信息管理系统做得更好更完善。改进意见:一、 开发系统首先做好需求分析,画出详细ER图,熟悉步骤;二、 充分利用各种系统开发工具,以创新为理念,开发各种新的功能以达到满
40、足用户需求;三、 功能的强大、完善,界面的布局,美观,种种手段都是为了把系统做到最好;四、 管理书籍的每一个环节尽可能系统、科学化,让效率大大提高,以最小的投入达到最大收益;五、 今后的系统要想达到完善,就需要实现了流通书籍的自助式借还,这是一个做起来繁琐,但却很强大的功能;六、 时间允许的话,可以考虑建设一个可靠的图书管理防御系统。8. 心得体会经过三个月的开发,图书管理系统基本开发完毕。其功能基本符合用户的需求,能够完成用户的图书信息管理,图书借阅管理,读者信息管理,系统用户管理等方面的功能,以及各种相关功能的扩展。但是由于毕业设计时间较短加上知识的有限,该系统还有许多不足的地方,这些问题
41、有待今后进一步的改善。设计中使用和ADO.NET设计软件的经验,由于对ASP.NET的了解不是很深,所以在这次设计的过程中,遇到专业知识方面的困难非常多,主要集中在对ADO.NET中数据操作的灵活运用等方面。不过,通过这段时间的接触,基本学习了解了图书管理系统的开发原理和应用,基本掌握了开发工具VS2010和SQL2005的使用,为今后的学习和开发打下了坚实的基础。 在本次毕业设计中,我得到指导老师的悉心帮助,老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅。而且在毕业论文的写作过程中吴老师给予了很大的帮助,帮助解决了很多难题,使得论文逐步完善。感谢指导老师耐心的辅导,能够顺利完成此次毕业设计我们还要感谢计算机系,给我们提供了良好实习和设计环境。本人在此对所有向我提供帮助的老师和同学致以最诚挚的敬意。