1、本科毕业设计论文届论文题目基于UML的图书馆管理系统的设计与实现所在学院专业班级信息管理与信息系统学生姓名学号指导教师职称完成日期年月日诚信申明我申明,所呈交的论文设计是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文设计中不包含其他人已经发表或撰写过的研究成果,也不包含为获得或其他教育机构的学位或证书而使用过的材料。我承诺,论文设计中的所有内容均真实、可信。论文设计作者签名签名日期年月日授权申明学校有权保留送交论文(设计)的原件,允许论文(设计)被查阅和借阅,学校可以公布论文(设计)的全部或部分内容,可以影印、缩印或其他复制手段保存论文(设计
2、),学校必须严格按照授权对论文设计进行处理,不得超越授权对论文(设计)进行任意处置。论文设计作者签名签名日期年月日基于UML的图书馆管理系统的设计与实现摘要图书馆是搜集、整理、保管、传播和利用文献信息、为社会提供服务的文化事业机构,它承担着保存人类文化遗产、进行社会教育、传递文献信息和开发智力资源的职能。随着信息资源的不断增长,就需要图书馆管理系统的来更加简单、效率地支持图书馆的职能。本系统采用MYECLIPSE作为开发工具,JSP作为开发语言,MYSQL为后台数据库管理系统。能够实现对图书的查询,添加,浏览,删除等功能。文中主要描述了系统的背景和开发技术方案,分析了系统的需求分析和设计,并且
3、对每个模块的设计与实施做出了详细的描述,系统基本能满足用户查询和阅览图书信息资源的功能。关键字图书馆;管理;数据库;模块BASEDONUMLLIBRARYMANAGEMENTSYSTEMDESIGNANDIMPLEMENTATIONABSTRACTTHELIBRARYISCOLLECTING,SORTINGOUT,KEEPING,DISSEMINATIONANDUSINGLITERATUREINFORMATION,PROVIDESERVICESOFCULTURALINSTITUTIONSFORSOCIAL,ITUNDERTAKESTHEFUNCTIONSOFCONSERVEDHUMANCULT
4、URALHERITAGE,CARRYOUTSOCIALEDUCATION,TRANSFERLITERATUREINFORMATIONANDDEVELOPINGINTELLIGENCERESOURCESTHESYSTEMUSESTHEMYECLIPSEASARECEPTIONISTFORDEVELOPMENTTOOL,JSPASADEVELOPMENTLANGUAGE,MYSQLBACKENDDATABASEMANAGEMENTSYSTEMCANREALIZEFORLIBRARIANSQUERY,ADD,BROWSE,DELETEETCFUNCTIONTHISPAPERMAINLYDESCRIB
5、ESTHEBACKGROUNDANDDEVELOPMENTOFTECHNOLOGYSYSTEMSCHEME,ANDTHEANALYSISOFSYSTEMANALYSISANDDESIGN,ANDNEEDSOFEACHMODULEDESIGNANDIMPLEMENTATION,ANDMAKESADETAILEDDESCRIPTIONOFTHEBASICSYSTEMCANSATISFYUSERQUERYANDREADINGBOOKSINFORMATIONRESOURCEFUNCTIONKEYWORDSTHELIBRARYMANAGEMENTDATABASEMODULE目录1系统概述111项目背景简
6、介112国内外发展现状113项目目标22开发技术方案选择321JSP技术简介322STRUTS的概述423MYSQL简介53系统分析731需求调查732用例图设计833实体类图设计104系统设计1341系统功能介绍1342用例设计1343数据库设计17431数据库概念结构设计17432数据库数据表设计215系统实现2551数据库的连接2552系统登陆模块的实现2753图书信息管理模块的实现29531图书类别信息添加功能实现29532图书类别信息维护功能实现31533图书信息添加功能实现3254读者信息管理模块的实现36541读者类别信息添加功能实现36542读者信息添加功能实现38543读者信
7、息管理功能实现4155图书借阅管理模块的实现42551图书借阅功能实现43552图书续借功能实现46553图书归还功能实现4956系统管理模块的实现51561管理员权限设置功能的实现51562个人口令修改功能实现536系统测试5561测试方案5562系统评价567总结57致谢58参考文献59本科生毕业论文(设计)11系统概述11项目背景简介图书馆管理信息系统LIBRARYMANAGEMENTINFORMATIONSYSTEM,LMIS就是将传统图书馆业务的手工操作转变成由计算机管理,即对图书馆的图书、期刊、音像资料等各种载体文献,实现采访、编目、典藏、流通、检索以及相关业务工作的计算机化、信息
8、化管理1。自从人类步入信息时代后,创造的信息爆炸式增长,再加上信息数字化技术,通讯技术,多媒体技术的迅速发展和网络的普及,图书馆作为信息资源的集散地,需要不断更新繁多的各类图书信息,电子信息以及借阅信息,再加上图书馆工作人员数量有限,传统的基于文本和表格的纸质介质的手工统计和操作已经无法满足图书馆日益增长的各类业务需求。再者,需要处理的数据量十分庞大,人工统计过程非常容易出错,对出错信息的重新检查和查找也十分得繁琐,这些都将为广大读者带来不必要的麻烦。因此传统手工操作随着时代的发展,效率越来越低,造成大量的人力,物力的浪费。为了使读者在图书馆的借书还书等业务更加方便,有效地简化读者借还书手续,
9、提高图书借阅率,避免因为手工操作出错导致的读者与管理人员之间不必要的争执等不该出现的问题,因此亟待需要有一套能够有效处理图书馆日常各项业务和具备各个相关功能的图书馆管理系统,使图书馆管理工作规范化,程序化,系统化,提高图书馆信息处理的效率和准确度2。12国内外发展现状图书馆管理系统的发展阶段按关键特征划分为三个阶段第一阶段从手工操作到计算机操作,第二阶段是从只有单个模块系统到两个或者多个模块系统以及从单一功能到多功能的转变,第三阶段是从图书馆提供的服务来划分的,从直接提供面对面的单个图书馆资源的服务到可以提供在线服务的、多个图书馆的资源的服务,第四阶段从只能提供图书馆纸质资源到能提供多种网络资
10、源和在线多媒体资源,从主要是功能的集成到对不同类型资源的转变。可见,图书馆管理业务中计算机进行自动化管理的比重不断增加,但是目前在研究过程中,主要存在如下问题一是人们对图书馆信息管理系统这一概念的理解过于狭隘,再加上很多图书馆缺乏图书馆管理信息系统建设的指导,因此在很大程度上限制了计算机管理系统在图书馆工作中的深入使用。二是目前很少有图书馆管理系统能够可以实现办公自动化管理和知识管理能力,决策支持能力。具体主要体现在如下几个方面。首先,系统不易维护。图书馆管理系统大多数采用C/S结构,这种模式是一种两层结构的分布模式,开发的应用程序装在客户端中,因此当需要改动客户端程序的时候,需要将客户端程序
11、重新安装。另外,由于软件发开过于依靠高校,缺乏公司的经营理念,因此系统的补丁和升级不够,维护也不及时,对用户的意见不重视,甚至完全本科生毕业论文(设计)2忽视。其次,系统难移植和集成。大多数系统都为了商业利益而采取技术保护,因此用户很难按照自己的需求对现有的系统采取嵌入新程序的方式。而且现在图书馆管理系统的趋势是系统接口和数据的共享,但是由于图书馆管理系统的提供是多个厂商和平台来完成导致这个趋势无法达成或者很难达成。再者,系统缺乏双向交流互动。这是由2个原因导致的一方面开发商,用户之间缺乏交流和交流的平台,因此缺乏经验的客户对操作复杂的系统很难掌握,严重影响了系统的工作效率的效果3。另一方面用
12、户在使用系统的过程中会遇到很多程序开发的建议和问题,而系统开发者很难做出快速的响应,导致系统的维护和更新周期也很长,这严重阻碍了系统的开发使用。13项目目标本次毕业设计就是开发一个图书馆管理系统,并通过该系统处理常见的图书馆相关业务。本系统的目标是(1)借阅者可以通过系统查询书籍信息。(2)借阅者能够借阅书籍和归还书籍。(3)图书管理员能够处理借阅者的借阅和还书。(4)系统管理员可以对系统的数据进行维护,如增加、删除、更新书目,增加、删除和更新借阅者帐户。本科生毕业论文(设计)32开发技术方案选择本系统选择的开发技术语言为JSP,系统在MICROSOFTWINDOWSXP下开发,所采用的开发工
13、具主要是MYECLIPSE65,选择的数据库为MYSQL。发布平台为TOMCAT60服务器端运行,客户端的IE版本需要在60以上。下面分别对编程环境以及数据库MYSQL做介绍分析。21JSP技术简介WEB服务从由简单网页构成的静态服务网站,发展到可以交互执行一些复杂步骤的动态服务网站,这就需要和其他服务整合,需要多个服务能够一起无缝地协同工作,需要能够创建出与设备无关的应用程序,需要能够容易地协调网络上的各个服务的操作步骤,容易地创建新的用户化的服务4。JAVA是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向INTERNET的开发工具。JSPJAVASERVERPAGE技术让J
14、AVA成为了基于WEB的应用程序的首选开发工具,目前的JAVA技术已成为所有大型电子商务项目的必然选择。JSP技术可以以一种简捷而快速的方法生成WEB页面。使用JSP技术的WEB页面可以很容易地显示动态内容。JSP技术的设计目的是使得构造基于WEB的应用程序更加容易和快捷,而这些应用程序能够与各种WEB服务器、应用服务器、浏览器和开发工具共同工作。JSP技术不是惟一的动态网页技术,也不是第一个,在JSP技术出现之前就已经存在几种优秀的动态网页技术,如CGI、ASP等。基于JAVA语言的JSP技术具有很多其他动态网页技术所没有的特点,具体表现在如下方面(1)简便性和有效性JSP动态网页的编写与一
15、般的静态HTML的网页编写是十分相似的。只是在原来的HTML网页中加入一些JSP专有的标签,或是一些脚本程序(此项不是必需的)。这样,一个熟悉HTML网页编写的设计人员可以很容易进行JSP网页的开发。而且开发人员完全可以不自己编写脚本程序,而只是通过JSP独有的标签使用别人已写好的部件来实现动态网页的编写。这样,一个不熟悉脚本语言的网页开发者,完全可以利用JSP做出漂亮的动态网页。而这在其他的动态网页开发中是不可实现的。(2)程序的独立性JSP是JAVAAPI家族的一部分,它拥有一般的JAVA程序的跨平台的特性。换句话说,就是拥有程序的对平台的独立性,即WRITEONCE,RUNANYWHER
16、E。(3)程序的兼容性JSP中的动态内容可以各种形式进行显示,所以它可以为各种客户提供服务,即从使用HTML/DHTML的浏览器,到使用WML的各种手提无线设备(例如,移动电话和个人数字设备本科生毕业论文(设计)4PDA),再到使用XML的B2B应用,都可以使用JSP的动态页面。(4)程序的可重用性在JSP页面中可以不直接将脚本程序嵌入,而只是将动态的交互部分作为一个部件加以引用。这样,一旦这样的一个部件写好,它可以为多个程序重复引用,实现了程序的可重用性。现在,大量的标准JAVABEANS程序库就是一个很好的例证5。22STRUTS的概述STRUTS是一种开源软件,采用STRUTS可以简化W
17、EB应用的开发工作,实现代码重用,具有使得WEB应用具有强可扩展性。STRUTS的出现使得WEB应用的开发过程大大简化,从而能够缩短开发周期、提高开发效率。STRUTS的优点主要集中体现在两个方面TAGLIB和页面导航。TAGLIB是STRUTS的标记库,灵活动用,能大大提高开发效率。STRUTS的标记库使得程序开发者使用JSP自带的常用标记。页面导航使系统的流程更加清晰。通过一个配置文件可以清楚的看到整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批程序开发者接手这个项目时,这种优势体现得更加明显。下图是STRUTS的工作流程,所有的请求都提交给ACTIONSERVLE
18、T来处理。如图21STRUTS的工作流程图。ACTIONSERVLET是一个FRONTCONTROLLER,它是一个标准的SERVLET,它将REQUEST转发给REQUESTPROCESSOR来处理,ACTIONMAPPING是ACTIONCONFIG的子类,实质上是对STRUTSCONFIGXML的一个映射,从中可以取得所有的配置信息,REQUESTPROCESSOR根据提交过来的URL,如DO,从ACTIONMAPPING中得到相应的ACTIONFORN和ACTION。然后将REQUEST的参数对应到ACTIONFORM中,进行FORM验证。如果验证通过则调用ACTION的EXECUTE
19、方法来执行ACTION,最终返回ACTIONFOWARD,ACTIONFOWARD是对MAPPING中一个FOWARD的包装,对应于一个URL。ACTIONFORM使用了VIEWHELPER模式,是对HTML中FORM的一个封装。其中包含有VALIDATE方法,用于验证FORM数据的有效性。ACTIONFORM是一个符合JAVABEAN规范的类,所有的属性都应满足GET和SET对应。对于一些复杂的系统,还可以采用DYNAACTIONFORM来构造动态的FORM,即通过预制参数来生成FORM。这样可以更灵活的扩展程序。ACTIONERRORS是对错误信息的包装,一旦在执行ACTION或者FORM
20、VALIDATE中出现异常,即可产生一个ACTIONERROR并最终加入到ACTIONERRORS。在FORM验证的过程中,如果有ERROR发生,则会将页面重新导向至输入页,并提示错误。ACTION是用于执行业务逻辑的REQUSESTHANDLER。每个ACTION都只建立一个INSTANCE。ACTION本科生毕业论文(设计)5不是线程安全的,所以不应该在ACTION中访问特定资源。一般来说,应改使用BUSINESSDELEGATE模式来对BUSINESSTIER进行访问以解除耦合。STRUTS提供了多种ACTION供选择使用。普通的ACTION只能通过调用EXECUTE执行一项任务,而DI
21、SPATCHACTION可以根据配置参数执行,而不是仅进入EXECUTE函数,这样可以执行多种任务。如INSERT,UPDATE等。LOOKUPDISPATCHACTION可以根据提交表单按钮的名称来执行函数。图21STRUTS的工作流程图23MYSQL简介本系统的开发选择的数据库为MYSQL,MYSQL是最受欢迎的开源SQL数据库管理系统,它由MYSQLAB开发、发布和支持,相比较其它系统而言,MYSQL数据库可以称得上是目前运行速度最快的SQL语言数据库。MYSQL的特性包括以下几点(1)MYSQL是一个数据库管理系统一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆
22、、或者一个社团网络的庞大的信息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MYSQL这样的数据库管理系统。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。(2)MYSQL是一个关系数据库管理系统关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。“MYSQL”中的SQL代表“STRUCTUREDQUERYLANGUAGE”(结构化查询语言)。SQL是用于访问数据库的最通用的标准语言,它是由ANSI/ISO定义的SQL标准。本科生毕业
23、论文(设计)6SQL标准发展自1986年以来,已经存在多个版本SQL86,SQL92,SQL1999,SQL2003,其中SQL2003是该标准的当前版本。(3)MYSQL是开源的数据库管理系统开源意味着任何人都可以使用和修改该软件,任何人都可以从INTERNET上下载和使用MYSQL而不需要支付任何费用。如果你愿意,你可以研究其源代码,并根据你的需要修改它。(4)MYSQL适合访问在INTERNET上的数据库MYSQL服务器原本就是开发比已存在的数据库更快的用于处理大的数据库的解决方案,并且已经成功用于高苛刻生产环境多年。尽管MYSQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。它的
24、连接性、速度和安全性使MYSQL非常适合访问在INTERNET上的数据库。(5)MYSQL服务器工作在客户/服务器或嵌入系统中MYSQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端、多个不同的客户程序和库、管理工具和广泛的应用程序接口APIS。MYSQL也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品6。本科生毕业论文(设计)73系统分析31需求调查需求调查是调查用户的需求,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。现在我们应该明确问题定义阶段的主要任务我们要
25、建立一个图书信息管理系统,以解决学校图书馆各类业务的基本情况,比便有效的摆脱传统繁琐的手工记账,实现管理自动化,从而提高工作效率。所开发的图书馆管理系统要求具有界面友好,功能完备,易使用等特点。而后台数据库的数据要具有一致性、完整性、安全性、易维护性。系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。因此一个完善的图书馆管理系统应该包括如下一些要求读者信息管理管理员能够对读者进行注册登记,包括记录读者的姓名、编号、职业、性别、地址、邮箱等信息。并且在之后可以对读者信息进行修改和删除等更新操作。而且在登记读者的时候可以登记读者的类型,以便之后提供不同类型的服务。图书馆信息维护管理员
26、登陆系统后可以对图书馆相关信息进行设置,比如设置地址,邮箱,馆名,简介信息等。图书馆信息查询任何注册登记的用户都可以浏览该图书馆的相关信息,比如图书馆的馆名字,馆长,地址,邮箱,简介等相关信息。图书借还管理管理员可以处理读者借书,还书的请求,每个读者属于不同的读者类型,不同的读者类型可以借阅图书的数目也是不一样的。读者将实体书目拿给管理员的时候,管理员就可以针对该书目进行借还管理,并在系统中更新相关信息,如借还日期,借还者,应还日期等。图书查询该系统可以为任何注册登记的用户提供方便的查询方法,可以以条形码、书名、作者、出版社、等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信
27、息进行检索;以出版社名称查询出版社联系方式信息。图书续借管理员可以处理读者续借的请求,读者将实体书目拿给管理员的时候,管理员就可以针对该书目进行续借管理,并在系统中更新相关信息,如续借期,借还者,应还日期等。图书信息维护管理员能够对图书进行收录登记,就是将图书的一些必要的基本信息(毕如书的条形码、书名、作者、出版社等)预先存入图书馆数据库中,供以后查询和为各项业务作支持。并且能够设置图书的类别,使得不同的图书更容易被查询。管理员权限设置该系统能够对使用该管理系统的用户进行管理,按照不同的身份提供不同的功能授权。比如读者只能在系统上进行查询图书信息和查询自己的信息,管理员可以根据自己的权限不同获
28、得不同程度的系统操作权。比如设置某一个管理员只有处理借书的权限。本科生毕业论文(设计)8系统查询管理员或者读者可以按条件查询图书档案信息,图书借阅信息,图书借阅超期信息列表。并且可以根据这些信息进行相关操作,比如读者发现自己的某一个图书要到期了,那么就会去图书馆进行续借或者还书。口令更改管理员或一般的操作员登陆系统后可以更改自己的登陆密码。32用例图设计该图书馆管理系统的开发是一个比较复杂的软件工程,基于软件工程思想,采用了UML表达图书馆管理系统的设计方式,提取类以及描述它们之间的协作关系,实现系统模型构建。UML的用例图(USECASE)较详细和确切地描述了用户的功能需求,使系统责任更为明
29、确,是其他UML视图的核心和基础,其他视图的构造和发展依赖于用例图中所描述的内容,系统的最终目标就是提供用例视图中描述的功能7。首先通过之前的需求分析建立该系统用例图,从管理员和读者登录系统后所具体的权限和操作来描述了图书馆管理系统的管理员,读者和各个子系统之间的关系,如图31图书馆管理系统用例图所示。本科生毕业论文(设计)9系统管理员图书馆管理系统用例图读者口令更改读者信息维护图书馆信息维护图书馆信息查看图书借阅处理图书归还处理图书查询图书续借处理图书信息维护图书馆信息维护图书管理员权限设置图书借阅信息查看图书馆管理员增删改图书增删改图书归还图书借阅读者增删改图书续借读者查询图书馆管理员信息
30、维护图31图书馆管理系统用例图本科生毕业论文(设计)10从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。管理员所包含的用例有口令管理管理员可以通过登录该系统进行更改密码的操作。读者信息维护包括对读者的增删改和读者信息的查询。图书馆信息维护能够对图书馆信息进行维护更新操作。图书查询可以对所有图书的详细信息进行查询。图书借阅可以处理读者的借阅请求。图书归还可以处理读者的归还请求。图书续借可以处理读者的续借请求。图书信息维护可以实现书目的增删改。管理员信息维护可以增删改管理员账户,并且可以设置管理员对系统的操作权限。图书借阅信息查看可以查看现有已经出借的书目信息。读者所包含的用例有读者信
31、息查询读者在登录系统后可以查询自己的相关信息。图书借阅通过管理员进行借书业务。图书归还通过管理员进行还书业务。图书续借通过管理员进行图书续借业务。图书借阅信息查看可以查看自己所借书目的相关信息。33实体类图设计基于UML的系统分析阶段另一个重要的工作就是特定域类的分析,即作出系统中的关键类,确定与该领域相关的概念,建立类图。类图是UML的核心技术,表示该系统中类和类之间的关系,是对系统静态结构的描述。图书馆管理系统的域类主要包括图书借阅(BORROW),图书信息(BOOK),图书类型(BOOKTYPE),读者(READ),读者信息(READTYPE),管理员(MANGER),图书馆信息(LIB
32、RARY)。可以在类图中将这些域类和他们之间的关系表示出来。如图32系统实体类设计图。本科生毕业论文(设计)11SETIDENTIFYGETIDSETIDSETPWDSETNAMEGETNAMEGETPWDSETREADERSETNAMESTRINGPWDSTRINGMANGERSETTYPENAMESETIDSETDAYSGETDAYSGETIDGETTYPENAMEIDSTRINGTYPENAMEINTBOOKTYPEGETIDSETIDGETNAMESETNAMESETNUMBERGETNUMBERIDINTNAMESTRINGNUMBERSTRINGREADERTYPESETBOOKB
33、ARCODESETBOOKIDSETBACKTIMESETREADERIDSETREADERBARCODESETPUBNAMESETPRICESETOPERATORSETIFBACKSETIDBACKTIMESTRINGBOOKBARCODESTRINGBOOKNAMESTRINGBOOKNAMESTRINGBORROWSETVOCATIONSETTELSETSEXSETREMARKSETIDSETEMAILGETNAMEGETIDGETTYPEIDBARCODESTRINGIDINTREADERSETCREATEDATESETTELSETLIBRARYNAMESETCURATORGETEMA
34、ILGETIDGETINTRODUCEGETLIBRARYNAMEGETTELGETCREATEDATEGETURLADDRESSSTRINGCURATORSTRINGIDINTLIBRARYGETAUTHORSETAUTHORSETTRANSLATORSETPUBLISHINGSETISBNSETISBNSETISBNSETDELAUTHORBARCODEBOOKNAMEBOOK111图32系统实体类设计图类图说明UML类图中包括三个部分,类名称,类属性和类操作。上述几个类中BORROW类用于图书的借阅、归还、续借功能,并且在实现这三个功能的时候更新相应的借阅信息,图书信息和读者信息,如更新
35、借书日期,对应的借阅人。BOOK类用于实现图书的添加、删除、更新,查询功能,在实现添加、删除、更新功能的时候都会更新相关图书信息。BOOKTYPE类用于设置图书种类,不同类型的图书可以借阅的最长天数是不同的。READ类用于实现读者的添加、删除、更新,主要用于管理读者信息。READTYPE类用于设置读者类型,读者类型的不同,所获得的权限也不同,比如可借书目的数量。LIBRARY类用于保存图书馆相关信息,任何登录的用户都可以从中看到图书本科生毕业论文(设计)12馆的简介。MANGER类用于处理上述几个类的业务请求,比如图书的借阅、归还、续借都要通过MANGER类才能得以完成。本科生毕业论文(设计)
36、134系统设计系统设计内容主要包括确定设计方针和方法,将系统分解为若干子系统,确定各子系统的目标、功能及其相互关系,决定对子系统的管理体制和控制方式,对各子系统进行技术设计和评价。通过上述系统分析,可以了解到该图书馆管理系统需要实现的主要功能模块以及实现各个模块的功能,下面就对整个系统的的功能做一个基于UML的系统设计。41系统功能介绍下面介绍下该系统的功能图书员进行借书业务处理,读者需要还书的时候,可以让管理员进行还书业务处理8。读者信息管理管理员可以添加和删除读者,并且可以对读者的相关信息进行修改保存。此外,还可以设置不同类型读者的可借书目数量。系统设置管理员可以在登陆系统后修改并保存图书
37、馆简介,此外还可以修改管理的操作权限。口令更改管理员可以在自己登录系统后,选择口令更改,更改自己的密码。图41系统功能介绍图42用例设计设计的最后阶段是设计UML模型,也就是将前面设计的模型进行扩展和细化,这里的设计目的是产生一个可以使用的解决方案,并且可以方便的将方案转换成程序代码。时序图就可以很好的满足这个目的。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作或状查看借阅信息系统首页用户登录页面功能选择管理员登录管理用户账户功能选择管理图书信息查询借阅信息处理借还请求查看借阅信息图书查询本科生
38、毕业论文(设计)14态机中引起转换的触发事件。时序图主要用于描述对象是如何交互的,并且将重点放在消息序列上9。根据需求分析阶段的用例分析以及系统功能介绍,我们可以画出流通子系统中主要用例的时序图(1)首先我们来做用户登录时序图,用户在图书馆管理系统的登录界面输入用户名和密码,通过系统验证后就进入了主界面。在主界面中,不同类型的用户可以进入不同的流通子系统。如管理员可以进行图书和读者的管理等业务,读者可以进行书面的查询等业务。其时序图如图42登录时序图。用户登录界面1用户登录4进入到流通主界面2验证用户3用户通过验证进入流通主界面用户验证图42登录时序图(2)管理员通过身份验证后进入主界面后,在
39、流通子系统中可以进行读者信息的维护,图书信息的维护,图书的借阅、归还、续借等活动。读者的信息维护包括读者的添加、删除、更改以及读者类型的设置;图书信息维护包括图书的添加、删除、更改。其时序图如图43读者信息管理时序图。本科生毕业论文(设计)15管理员流通主界面增加新读者修改读者文档删除读者文档查询读者文档增加读者增加新读者修改读者修改读者记录删除读者删除读者记录查询读者记录查询读者图43读者信息管理时序图(3)本系统的图书借阅管理包括图书的借阅、归还以及续借三个功能,当管理员进行读者的借还书业务时,不但要同时修改借阅记录从而显示现在的借阅状态,还有同时修改读者信息中的借阅图书的信息,包括图书的
40、数量及图书的名称和库存等相关信息。其时序图如图44图书借阅管理时序图。本科生毕业论文(设计)16管理员流通主界面借书界面还书界面续借界面借阅信息1登陆主界面2进入借书界面8修改读者信息3进入还书界面9修改图书信息4进入续借界面7修改借阅信息读者信息图书信息图44图书借阅管理时序图(4)图书添加是图书馆系统的另一项重要功能,管理员在进入主界面后,在主界面的流通子系统中可以选择图书信息管理,选择添加图书,输入书目的图书类型,出版社,设置条形码等信息后,这些信息都会存储到图书记录中。其时序图如图45图书添加时序图。本科生毕业论文(设计)17管理员图书信息界面书目图书记录1进入图书信息界面7存储记录3
41、查找书名2单击添加书目按钮4查找出版社5添加书目6添加一本书8记录此书目9保存图45图书添加时序图43数据库设计数据库(DATABASE)是按照数据结构来组织、存储和管理数据的仓库,它使得数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库设计DATABASEDESIGN是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求10。431数据库概念结构设计针对该图书管理信息系统的内容和数据流程分析,设计成如下数据项以及数据结构111图书类别信息包括图书类别编号,名称,该图书类别可以外借的天数。2图书信息
42、包括条形玛,图书名称,图书类型,作者,译者,出版社,价格,页码,书架,添加时间,操作员,是否删除,系统记录编号。3读者类别信息包括读者类别编号,读者类别名称,可借图书数。4读者信息包括读者姓名,读者性别,读者条形码,读者类型,职业,出生日期,有效证本科生毕业论文(设计)18件,证件号码,电话,EMAIL,备注,读者加入时间,操作员。5图书借阅信息包括记录编号,图书编号,读者编号,借阅时间,归还时间,是否已经归还,操作员。6图书归还信息包括记录编号,图书编号,读者编号,归还时间,操作员。7图书馆信息包括图书馆名称,馆长,联系电话,联系地址,图书馆网址,建馆时间,图书馆简介。8管理员信息包括管理员
43、ID编号,管理员帐号和管理员密码。9管理员权限信息包括管理员ID编号,系统设置权限,读者管理权限,图书馆管理权限,图书借还权限,系统查询权限。根据对数据项与数据结构的分析,设计出能够满足系统需求的各种实体及它们之间的关系,以便之后设置逻辑结构。根据设计规划得出的实体有图书类别信息实体,图书信息实体,读者类别信息实体,读者信息实体,各个实体的属性通过实体属性图表示如下面这些图所示12。下列各图中矩形代表该实体对象,它对应数据库中的一张数据表,而椭圆形里的信息代表该数据对象的属性,它对应数据表中的字段信息。图46图书类别实体属性图图47图书信息实体属性图图书信息实体条形码图书类别作者出版社译者价格
44、页码添加时间操作员加入时间图书名称图书类别实体图书类别编号图书可借天数图书类别名称本科生毕业论文(设计)19图48读者类别信息实体属性图图49读者信息实体属性图图410图书借阅信息实体属性图图411图书归还信息实体属性图读者类别信息实体读者类别编号类别名称可借图书数目读者信息实体读者条形码读者姓名读者类型读者性别职业出生日期有效证件证件号码电话EMAIL备注信息备注加入时间图书借阅信息记录编号读者编号图书编号借阅时间应归还时间是否已归还图书归还信息记录编号读者编号图书编号归还时间操作员本科生毕业论文(设计)20图412操作员帐号信息实体属性图图413管理员信息实体属性图图414管理员权限信息属
45、性图图书馆信息实体图书馆名称联系电话馆长联系地址图书馆网址图书馆简介绍建馆时间管理员信息实体管理员帐号管理员编号管理员密码管理员权限信息管理员编号读者管理权限系统设置权限图书管理权限图书借还权限系统查询权限图书馆系统图书馆信息图书信息实体图书类别读者类别信息读者信息图书归还信息图书借阅信息管理员信息管理员权限信息本科生毕业论文(设计)21图415图书馆系统属性图432数据库数据表设计表41图书类别信息表字段名描述类型长度是否允许空是否主键ID图书编号INT10否是TYPENAME类别名称VARCHAR30是否DAYS可借天数INT10是否表42图书信息表字段名描述类型长度是否允许空是否主键BA
46、RCODE条形码VARCHAR30是否BOOKNAME书名VARCHAR70是否TYPEID类别编号INT10是否AUTHOR作者VARCHAR30是否TRANSLATOR译者VARCHAR30是否ISBN出版社VARCHAR20是否PRICE价格FLOAT8,2是否PAGE页码INT10是否BOOKCASE图书类型INT10是否INTIME进馆时间DATE是否OPERATOR操作员VARCHAR30是否ID图书编号INT11否是表43读者类别信息表字段名描述类型长度是否允许空是否主键ID读者编号INT10否是NAME读者类别VARCHAR50是否本科生毕业论文(设计)22NUMBER可借数量INT4是否表44读者信息表字段名描述类型长度是否允许空是否主键ID
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。