图书管理系统的设计与实现-凌磊-指导老师方巍.doc_第1页
图书管理系统的设计与实现-凌磊-指导老师方巍.doc_第2页
图书管理系统的设计与实现-凌磊-指导老师方巍.doc_第3页
图书管理系统的设计与实现-凌磊-指导老师方巍.doc_第4页
图书管理系统的设计与实现-凌磊-指导老师方巍.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

滨江学院毕业论文题 目 图书管理系统的设计与实现 院 系 滨江学院 专 业 计算机科学与技术 学生姓名 凌 磊 学 号 20062308930 指导教师 方 巍 职 称 讲师 二一年 五 月 二十五 日目 录1.系统概述11.1 研究课题的背景11.2 开发环境12.基础知识概述22.1 Visual Basic语言简介22.2 ADO对象32.3 SQL Server 2000简介42.3 MIS系统开发方法52.4 MIS系统开发过程53.系统需求分析63.1 任务概述63.2 数据描述(数据流图+数据字典)73.3 功能需求113.4 性能需求114.系统总体设计124.1 系统的业务流程124.2 系统功能模块图134.3 系统数据流程图164.4 系统的流程图165.系统详细设计175.1 程序流程图175.2 程序输入输出描述195.2.1 主模块195.2.2 用户管理模块205.2.3 图书管理模块205.2.4 借阅管理模块205.2.5 归还管理模块205.2.6 管理措施设置模块205.3 程序接口描述205.3.1 外部接口205.3.2 内部接口205.4 数据库表结构设计215.4.1 数据库的逻辑设计215.4.2 数据库的物理设计226 系统实现266.1 登录模块的开发266.2 系统管理276.3 用户密码修改286.4 信息输入296.5 查询306.6 图书与借书管理307 系统的运行与维护327.1 系统的配置327.2 系统的运行327.3 系统的维护338 开发总结与对管理信息系统的展望348.1 开发总结348.2 对管理信息系统的展望35致 谢36参考文献37III图书管理系统的设计与实现凌磊南京信息工程大学计算机科学与技术,南京 210044 摘要:随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,企业要生存要发展,要高效率地把企业活动有机地组织起来,就必须加强企业管理,即加强对企业内部的各种资源(人、财、物等)的有效管理,建立与自身特点相适应的管理信息系统。本文介绍了在Visual Basic环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。 本系统界面友好,操作简单,比较实用。关键字: 管理信息系统、图书管理、Visual Basic应用。 1.系统概述1.1 研究课题的背景借助现代信息技术和管理理论,建立管理信息系统是当今社会的重要趋势。党和政府根据知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。对人民生活而言,全面开发和应用计算机管理信息系统就是近期不能回避的问题11。在这个大的指导方针下,我的毕业论文选择了计算机管理信息系统,我选择了一个较为贴近我生活的,和我比较了解的图书管理系统。时代的进步,计算机越来越广泛的运用,使很多原本由手工操作的管理,慢慢由计算机代替,而且日加完善。图书管理系统就是其中一个典型的例子,由早先的手工操作管理,提升为计算机管理,大大的节约了人力物力资源。实行电子化的图书管理,让人力资源管理人员从繁重琐碎的案头工作解脱出来,完成更重要的工作。图书管理系统就是为了解决和减轻繁琐的手工管理,使图书馆可以上升到一个完善的电子化,信息化管理12。在经过长时间的调研和资料累积2,并参考了相关的图书管理软件和查阅了大量的资料以后,我基本上搞清楚了图书馆对系统的需求,以及其图书管理系统,需要的功能、模块和借阅者与管理人员的需要之后设计了这个软件。在和指导老师多次交流后,确定实现方案的要点和工作计划。本系统实现的主要功能有:读者信息管理、书籍信息管理、相关报表打印,以及读者和书籍的查询和修改等功能,是一个可以满足图书馆工作人员日常办公需要的图书管理系统。1.2 开发环境开发环境的选择会影响到数据库的设计,所以在这里给出图书管理系统开发与运行环境的选择如下3:开发环境:Windows XP开发工具:Visual Basic 6.0数据库管理系统:SQL Server 2000数据库服务器:SQL Server 2000 桌面引擎2.基础知识概述本管理系统采用的数据库是SQL Server 2000数据库,开发语言为Microsoft Visual Basic 6.0(简称VB 6.0)。Visual Basic 6.0作为前台的开发工具,用SQL Server 2000作为后台支持数据库,通过Visual Basic 6.0的数据库控件来连接SQL Server 2000中并对其编程来实现各种功能。因为SQL Server与Visual Basic用的同为Microsoft Jet数据库引擎,有着最好的兼容性。2.1 Visual Basic语言简介Visual Basic的前身是QBASIC,语言基础是BASIC。自从微软推出VB后,便成为了程序开发人员的首选工具。据统计,仅在数据库系统开发领域,Visual Basic就占了90的份额。Visual Basic是基于对象的可视化程序开发工具,它的优点在于能够快捷、简易地建立Windows应用程序。1998年8月,微软推出了Visual Basic 6.0的版本,进一步加强了部件开发的功能。以适用人员来分,可有以下三个版本1:1. 标准版 针对一般程序设计人员,适合普通应用系统的开发。2. 专业版 针对专业程序开发人员,它在标准版的基础上提供了对数据库和Internet的支持。3. 企业版 适用于专为企业设计应用软件的程序开发人员。使用Visual Basic不需要追求完美的算法和精密的逻辑,而只要充分发挥你的想象力和创造力,就能利用Visual Basic开发出各种实用的软件了,不论是小游戏还是大型的客户端/服务器端应用程序,都变得非常简单。可视化编程的一个突出特点就是其开发环境就像一个百宝箱,许多功能都集成在其中,这就是IDE(Integrated Development Environment),即集成开发环境。IDE是指在相应的开发平台中集成了编辑器、编译连接工具、控件器箱辅助工具。例如在Visual Basic的集成开发环境中就包括了以下一些主要元素:工具栏、工具箱、工程管理器窗口、属性窗口、窗体设计器、代码编辑器窗口等;和Visual Basic类似,Delphi的IDE中具有主控制窗体、对象查看窗口和窗体设计器。同时IDE的设置是很灵活的,开发人员可以按照自己的编程习惯来配置IDE20。从简单的文本文件到复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。Visual basic 6.0提供ADO(Active Data Objects)作为应用程序和OLE-DB连接的桥梁ADO,即Active数据对象(Active Data Objects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。本系统就是用ADO对象来连接数据库的21。下一节将专门介绍ADO。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它与以前Visual Basic的DAO、RDO相比有了很大的提高。DAO(Data Access Objects)即数据访问对象,是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBC Direct功能可以实现远程RDO功能。RDO(Remote Data Objects)即远程数据对象,为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。RDO是ODBC API的一个浅层界面接口,是专为访问远程ODBC关系数据源而设计的。2.2 ADO对象5ADO是Microsoft公司关于各种类型数据的高等界面,后来逐渐演变成为满足所有数据访问需要的完整解决办法。ADO的对象模型是所有数据访问接口对象模型中最简单的一种。Microsoft公司用来访问ADO数据的应用程序界面技术是OLE DB。OLE DB是一种底层编程接口,用来访问许多不同类型的数据源,其中包括消息、文件系统以及其他一些非传统的数据源。OLE DB是一个由Component Object Model(COM)接口组成的集合,用来隐藏创建数据访问服务过程中的细节。OLE DB提供了访问任何数据资源的方法,包括相互关联的数据库和相互不关联的数据库、Email和文件系统、文本和图形以及用户定义的数据对象。以下是本程序中用到的对象:Connection对象:通过“连接”可从应用程序访问数据源,连接是交换数据所必需的环境。对象模型使用Connection对象使连接概念得以具体。Recordset对象:表示的是来自基本表或命令执行结果的记录全集。Recordset 对象可支持两类更新:立即更新和批更新。使用立即更新,一旦调用Update方法,对数据的所有更改将被立即写入基本数据源。也可以使用AddNew和Update方法将值的数组作为参数传递,同时更新记录的若干字段。Field对象:代表使用普通数据类型的数据的列。Recordset对象含有由Field对象组成的Fields集合。每个Field对象对应于Recordset中的一列。使用Field对象的Value属性可设置或返回当前记录的数据。以下是本程序中用到的方法:AddNew方法:创建可更新Recordset对象的新记录。MoveFirst、MoveLast、MoveNext 和MovePrevious方法:在指定 Recordset 对象中移动到第一个、最后一个、下一个或前一个记录并使该记录成为当前记录。Open方法(ADO Connection):打开到数据源的连接。Open方法(ADO Recordset):打开记录集。Close方法:关闭打开的对象及任何相关对象。Execute方法:执行指定的查询、SQL语句、存储过程或特定提供者的文本等内容。2.3 SQL Server 2000简介6SQL Server 是一个关系数据库管理系统它最初是由Microsoft Sybase和Ashton-Tate三家公司共同开发的于1988年推出了第一个OS/2版本在Windows NT推出后Microsoft与Sybase在SQL Server的开发上就分道扬镳了Microsoft将SQL Server移植到Windows NT系统上专注于开发推广SQL Server的Windows NT版本Sybase则较专注于SQL Server在UNIX 操作系统上的应用在本书中介绍的是Microsoft SQL Server以后简称为SQL Server或MS SQL Server。 SQL Server 2000是Microsoft公司推出的SQL Server数据库管理系统的最新版本该版本继承了SQL Server 7.0版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2000的大型多处理器的服务器等多种平台使用16。SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、Sybase、 Microsoft SQL Server、Access等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如Select、 Insert、Update、Delete、Create和Drop常常被用于完成绝大多数数据库的操作17。MS SQL Server就是用的Transact-SQL。SQL语言有着非常突出的优点,SQL语言是非过程化的语言、统一的语言、是所有关系数据库的公共语言13。非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的22。SQL为许多任务提供了命令,包括:查询数据、在表中插入、修改和删除记录、建立、修改和删除数据对象、控制对数据和数据对象的存取,保证数据库一致性和完整性等14。美国Microsoft公司推出的一种关系型数据库系统。SQL Server 2000是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。其主要特点如下8:(1)高性能设计,可充分利用Windows NT的优势。(2)系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置7。(3)强壮的事务处理功能,采用各种方法保证数据的完整性。(4)支持对称多处理器结构、存储过程,ODBC,并具有自主的SQL语言。SQL Server以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台8。2.3 MIS系统开发方法4管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法等。生命周期法(Life Cycle Method)是20世纪60年代发展起来的一种应用广泛且比较成熟的管理系统开发方法,它的基本思想是将系统的开发工作从开始到结束划分为若干个阶段,每个阶段都有明确的任务,而系统开发出来后,并不意味着生命周期的结束,而意味着根据组织的需要对系统的修改和重建的开始。原型法(Prototyping Method)是20世纪80年代发展起来的,旨在改变生命周期法的缺点的一种系统开发方法,该法的开发思路是首先根据用户的要求,由用户和开发者共同确定系统的基本要求和主要功能,利用系统快速生成工具,建立一个系统模型,再在此基础上与用户交流,将模型不断补充、修改、完善,如此反复,最终直至用户和开发者都比较满意为止,从而形成一个相对稳定、较为理想的管理信息系统。面向对象(Object Oriented)的开发方法于20世纪80年代开始兴起的,是一种基于问题对象的自底向上的一种系统开发方法,这种方法的特点是以对象为基础,对象是分析问题和解决问题的核心。2.4 MIS系统开发过程一个MIS系统的开发过程一般包括如下几个步骤:(1)需求分析:需求分析主要是了解用户的需求。需求了解得越详细,程序的后期开发与维护费用就会越少。一般的开发团队中,需求分析都是由资历较深的系统分析员或项目经理担当,可见它的重要性。需求分析制订好后,需要反复修改。将最后的结果交给用户审定,确认无误后,由系统分析员完成需求分析文档,再开始下一步工作。(2)概要设计:概要设计紧跟在需求分析之后。用户需求明确后,将得到的数据分析后,开始构建数据库的逻辑结构。此时,数据库中的表格还未成形,通过各种分析工具(如PowerDesigner等)画出数据流图,最后就可抽象出数据库的具体表结构。这时由系统分析人员反复审核。确认所有的需求都考虑在内,没有遗漏后,就可以开始制订概要设计文档。概要设计文档形成后,整个程序的逻辑框架也就形成了。(3)详细设计:概要设计完成后,根据设计中制订的业务模块。就可以进行详细分析设计了。详细设计就是将各个业务模块的窗口全部建好,各个窗口控件的处理代码全部用语言表达出。所以详细设计是整个系统中最繁琐的环节。详细设计完成后,整个程序就确定了,再由编程人员根据详细设计文档将代码完成。整个开发工作就宣告结束。(4)程序编码:程序编码相对于其他环节来说比较简单,程序员只需要根据详细分析文档写程序编码,保证代码没有错误即可。程序编码需要注意的是整个程序书写中命名的规范化与编程风格的规范化,这需要较长时间的培养来形成。需要在不断的实践中形成自己独特的风格。总的来说,不要过分地追求复杂的算法,因为那可能会导致后期维护人员无法读懂你的代码而造成维护的困难。(5)测试:程序编码完成后,就需要测试。测试有几种类型,主要是测试代码有无逻辑错误以及在加载数据环境下程序的稳定性问题。测试工作中发现的错误应及时改正,然后将它记录到测试文档中。(6)打包:测试完成,确认无误后。程序就可以打包发行了。打包一般使用工具如PWISE等。以上是一个完整的MIS系统开发过程,其实不仅MIS系统,其他类型的程序开发也基本相同。3.系统需求分析3.1 任务概述经过我对图书馆的详细调查,并多次与负责图书管理的管理员进行研讨后,加深了对现行图书管理业务的深刻了解,与此同时,将整个图书管理的业务流程抽象描述如下:1.新的图书购进后,分门别类地进行归并和汇总,加以编号。2.新书编号后,上到书架以备用户借阅。3.如某用户需要借阅图书,则在其本人的借阅登记表上进行登记,记录相关借阅信息与借阅日期。4.借阅图书后,应及时归还图书,并在本人的借阅登记表上注明还书日期和时间。根据以上调查分析,可以给出其现行业务流程图,如图3.1所示。图3.1 现行图书管理业务流程图3.2 数据描述(数据流图+数据字典)经过详细的调查,我们已经清楚了解了现行的业务流程,接下来给出系统的逻辑模型。构造系统逻辑模型的工具是数据流图和数据字典。根据现行图书管理的业务流程,首先把数据流图中的源点和终点都选定为用户,因此可以得到图书管理系统的基本系统模型18。如图3.2所示。图3.2 图书管理系统的基本系统模型根据基本系统模型,对其逐步细化,得到描述逻辑系统细化后的数据流图,如图3.3所示。图3.3 图书管理系统数据流图(顶层DFD图)对顶层DFD图中的一个加工“用户管理”进行展开,如图3.4。图3.4 用户管理的展开数据流图对顶层DFD图中的一个加工“图书管理”进行展开,如图3.5。图3.5 图书管理的展开数据流图对第1层DFD图中的加工进一步进行展开,如图3.6。图3.6 细化后数据流图图3.7 进一步细化数据流图有了系统的数据流图后,还有相当多的数据信息如图书、借阅、归还等信息需要进一步描述,这就是需要定义数据字典,才能把现有的系统描述清楚19。系统的主要数据字典如下:1)图书信息:图书表结构描述:记录所有图书的基本情况定义: 图书信息表=图书编号+图书名称+图书ISBN号+图书作者+图书出版社+图书类型+图书价格+图书库存量+图书副本数量+图书总数位置:Librarydat.Mdf数据库2)用户信息:用户信息表结构描述:记录所有用户信息情况定义:用户信息表=用户编号+用户姓名+性别位置:Librarydat.mdf数据库3)管理员信息:管理员表结构描述:记录管理员信息情况定义:管理员信息=管理员ID+管理员姓名+管理员密码+管理员级别位置:Librarydat.mdf数据库4)借书登记:借书登记表结构描述:记录所有图书的借阅情况定义:借阅登记表=借书ID+用户编号+图书ID+借书时间+归还时间位置:Librarydat.mdf数据库5)名称:借阅请求描述:用户借阅图书请求信息定义:借阅请求=借阅ID+用户编号+图书ID+借阅日期位置:Librarydat.mdf数据库6)名称:借阅结果描述:是否借阅成功的返回结果定义:借阅结果=借阅ID+图书ID+用户编号+是否借阅+提示借阅成功位置:Librarydat.mdf数据库7)名称:归还请求描述:用户归还图书请求信息定义:归还请求=借阅ID+用户编号+图书ID+归还日期位置:Librarydat.mdf数据库8)归还登记:归还登记表结构描述:记录所有已归还图书的借阅情况定义:归还登记表=借阅ID+用户编号+图书ID+借书时间+归还时间位置:Librarydat.mdf数据库9)名称:归还结果描述:归还图书操作完后的返回结果定义:归还结果=借阅ID+图书ID+用户编号+是否提示惩罚位置:Librarydat.mdf数据库10)名称:提示惩罚信息描述:未归还图书的用户需要提示的信息,比如相应赔偿或超期罚款定义:提示罚款信息=借阅ID+用户编号+图书ID+应归还日期+处罚提示位置:Librarydat.mdf数据库11)名称:管理条例1描述:对正常归还的处理办法定义:管理条例1=借阅ID+未过规定归还时间位置:Librarydat.mdf数据库12)名称:管理条例2描述:对丢失或超期归还图书的处理办法定义:管理条例2=借阅ID+相关处罚办法位置:Librarydat.mdf数据库3.3 功能需求经过以上详细的用户调查,在现行业务流程和数据分析的基础上,基本可以确定系统设计必须达到的目标。以下是图书管理系统必须具备的功能:1.新进图书的登记功能:对于购进的新书,系统必须具备图书信息资料的录入功能。2.图书的查询修改功能:当图书资料发生变化,如图书丢失或有错误信息输入时,则应能够及时对数据进行修改和补充。3.借阅的登记,归还的登记功能:系统的主要功能之一,供用户借阅图书、归还图书,并进行登记。4.用户信息的增加、删除和修改功能:系统主要功能之一,建立用户信息,并对其进行维护。3.4 性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,图书管理系统应该满足以下的性能需求:1、系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。2、系统的开放性和系统的可扩充性图书管理系统在开发过程中,应该充分考虑以后的可扩充性。例如用户查询的需求也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。3、系统的易用性和易维护性图书管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。4、系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、国家和行业标准。5、系统的先进性目前计算系统的技术发展相当快,作为图书管理系统工程,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。6、系统的响应速度图书管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。4.系统总体设计104.1 系统的业务流程根据需求分析的得到的现行业务处理流程,在反复研究后,首先确定目标系统的业务流程,其处理流程如图4.1。图4.1 图书管理系统的业务流程针对新的业务流程,现具体描述其功能如下:1.用户登录:系统对用户合法性进行检查。2.图书入库:对新购进的图书分类进行编号,并把图书基本信息录入计算机。3.图书借阅:对已入库的图书,用户可以借阅,并进行登记。4.图书归还:对用户已归还的图书进行归还登记。 5.信息查询:即对所有图书的借阅情况,或用户的基本情况和借阅情况进行查询。6.管理措施:定义系统规定的借阅图书超期时间、超期处罚办法和丢失赔偿办法。4.2 系统功能模块图依据需求分析阶段得到的数据流图,采用软件工程中软件设计的概念和原理,与用户成分协商后,在保证系统基本功能要求的前提下,结合系统新的业务流程确定系统必须具备的所有功能,由此给出图书管理系统的系统功能模块图。1)、登录模块结构流程图,如图4-2:图4-2 登录系统模块结构2)、基本设置模块结构流程图,如图4-3:图4-3 基本设置模块结构图3)、图书管理模块结构流程图,如图4-4:图4-4 图书管理模块结构图4)借书管理模块结构流程图,如图4-5:图4-5 借书管理模块结构图5)信息查询模块结构流程图,如图4-6:图4-6 信息查询模块结构图4.3 系统数据流程图图4-7 系统的数据流程图4.4 系统的流程图依据软件工程的基本原理,综合以上分析给出系统流程图如图4-8所示。图4-8 系统流程图5.系统详细设计5.1 程序流程图依据软件工程的基本原理,详细设计阶段的根本任务是确定应该怎样具体实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在系统实现阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。具体来说就是把经过总体设计得到的各个模块详细的加以描述。由于本系统采用支持面向对象的Visual Basic 6.0作为开发工具,而Visual Basic 6.0采用事件驱动的编程机制,所以在此给出软件系统的主程序流程图,如图5-1所示。图5-1 主程序流程图根据以上主程序的流程图,我们可以得出下面的关于各个模块的程序流程图,如图5.2所示。图5.2 程序流程图5.2 程序输入输出描述5.2.1 主模块1.输入项目:操作系统传递至的各种消息以及用户的输入数据。2.输出项目:用户界面显示。5.2.2 用户管理模块1.输入项目:与用户管理操作子对话框有关的用户输入及系统消息。2.输出项目:操作结果显示。5.2.3 图书管理模块1.输入项目:用户口令。2.输出项目:相应的界面。5.2.4 借阅管理模块1.输入项目:用户编号、图书编号。2.输出项目:用户信息、相关借书信息。5.2.5 归还管理模块1.输入项目:图书编号。2.输出项目:相关用户信息。5.2.6 管理措施设置模块1.输入项目:用户的输入。2.输出项目:根据用户的输入显示相应的对话框。5.3 程序接口描述5.3.1 外部接口按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。5.3.2 内部接口模块间接口采用数据耦合方式,通过参数表传送数据,交换信息。5.4 数据库表结构设计数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型7。数据库设计的步骤是:1、数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有联机分析处理CLAP(指为支持决策的制定对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的、有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。2、数据表定义:数据表定义指定义数据库中数据表的结构,数据表的逻辑结构包括:属性名称、类型、表示形式、缺省值、校验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为使效率高,规范化程度应根据应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。3、存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。4、数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。5、数据字典设计:用数据字典描述数据库的设计,便于维护和修改。为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:关系数据结构的建立:在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。5.4.1 数据库的逻辑设计23在需求分析阶段已完成该系统所有的数据分析。根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库9。下面给出概念结构设计得E-R图,如图5.3所示。图5.3 概念结构设计E-R图5.4.2 数据库的物理设计15依据数据库的原理,并结合以上E-R图,经过转化,即可进行数据库的物理设计。基于以上数据库的逻辑设计,考虑程序设计的简易性,同时考虑题目的时间,该系统的数据库采用Microsoft SQL Server 2000。本系统决定采用一个数据库,在其下创建多个数据表,其中重要的7个表结构分别如下:1.借书信息表,其字段列表如表5-1所示。表5-1 借书信息表的结构序号字段名称类型位数属性备注1借书证号字符类型20必须非空2图书编号字符类型20必须非空3借书日期时间日期10可为空4还书日期时间日期10可为空2.借书证信息表,其字段列表如表5-2所示。表5-2借书证信息表的结构序号字段说明类型位数属性备注1借书证号字符类型20必须非空2用户姓名文本6必须非空3用户性别文本6可以为空4用户地址文本50可以为空5用户电话字符类型50可以为空6发证日期时间日期10必须非空7到期日期时间日期10必须非空8类别文本50可以为空9状态文本50可以为空10备注文本50可以为空3.借书证挂失表,其字段列表如表5-3所示。表5-3借书证挂失表的结构序号字段说明类型位数属性备注1借书证号字符类型20必须非空2挂失日期时间日期10必须非空3备注文本50可以为空4.图书注销表,其字段列表如表5-4所示。表5-4图书注销表的结构序号字段说明类型位数属性备注1注销编号字符类型20必须非空2注销原因文本50可以为空3注销日期时间日期10可以为空5. 采购经费表,其字段列表如表5-7所示。表5-5采购经费表的结构序号字段说明类型位数属性备注1征定编号字符类型20必须非空2征订日期时间日期10可以为空3发票编号字符类型20可以为空4用户地址文本50可以为空5购书地址文本50可以为空6购书册数整型10必须非空7购买金额浮点型10可以为空8采购方式文本50可以为空9付款方式文本50可以为空10备注文本50可以为空6.图书征定表,其字段列表如表5-6所示。表5-6图书征定表的结构序号字段说明类型位数属性备注1图书名称文本50必须非空2第一作者文本6可以为空4ISBN字符类型50可以为空5其他作者文本6可以为空6版本版次字符类型20可以为空7文献类型文本10可以为空8图书语种文本10可以为空9开本字符类型20可以为空10出版社文本50可以为空11出版地文本50可以为空12出版日期时间日期10可以为空13页数整型10可以为空14价格浮点型10必须非空15订购册数整型10必须非空16征订书号字符类型20必须非空7.图书信息表,其字段列表如表5-7所示。表5-7图书信息表的结构序号字段说明类型位数属性备注1图书分类号字符类型20必须非空2排架号字符类型10可以为空4入馆日期时间日期10可以为空5图书名称文本50必须非空6第一作者文本6可以为空7ISBN字符类型50可以为空8其他作者文本6可以为空9版本版次字符类型20可以为空10文献类型文本10可以为空11图书语种文本10可以为空12开本字符类型20可以为空13出版社文本50可以为空14出版地文本50可以为空15出版日期时间日期10可以为空16页数整型10可以为空17价格浮点型10必须非空18装订字符类型20可以为空19册数整型10可以为空20图书编号字符类型20可以为空6 系统实现应用程序是用VB开发的,界面设计的简单明了。根据需求分析和功能设计,系统应用程序分为五大模块:登录模块、信息输入、检索打印、信息管理、系统帮助五个模块。6.1 登录模块的开发登录界面是用户最先看到的系统的界面,所以直观上给用户的感觉很重要,所以做一个好的界面,提高软件的亲和力。本管理系统登录界面如图6-1。图6-1 登录界面根据登录模块的功能,管理员和普通用户界面统一在一起。系统自动判断用户的要权限。管理员有所有的权限,普通用户只有检索和改本人的密码权。如果三次登录都出错,系统自动退出。数据库的连接采用的是ADO对象。连接代码如下:If CN.State Then CN.CloseCN.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & wmdatabase.mdb;Persist Security Info=FalseCN.Open引擎采用SQLOLEDB.1来连接SQL Server 2000数据库。6.2 系统管理登录系统后进入主界面如图6-2。在系统功能设计中,系统管理功能主要有添加用户,删除用户,和管理员密码修改,如图6-3所示。只有管理员用户才有权限进入本界面。添加、删除用户是在数据表用户信息表中添加和删除用户及权限。初始管理员用户和密码都为admin。管理员密码数据库的用户信息表项里。代码实现请参考附录程序源代码。添加用户:在用户名称中输入要添加用户的名,原始密码为12345,可以修改,之后点添加。完毕。如果系统已经添加的该用户,系统自动提示,重新添加。删除用户:选中要删除的用户,直接点删除、系统有提示是否真的删除,点是,就删除了此用户。图 6-2 管理系统图6-3 系统管理6.3 用户密码修改用户密码修改是指普通和管理员用户的密码修改。如图6-4。图6-4 用户密码修改修改密码:在旧密码输入你的登录密码,在新密码中输入新密码,在新密码核实中再输入一次新密码。之后点修改。系统提示。操作已成功!。这样下一次再进入本系统时本用户的密码就改为新密码。其中密码数据用户信息表中姓名和密码字段对应的记录。代码实现请参考附录程序源代码。6.4 信息输入信息输入中主要是对所有数据信息的添加、修改、删除的功能。也是本次开发的重点。以图书征订表管理为例介绍,界面如图6-5。各按钮的功能:(所有管理界面):移动到第一条记录。:移动到下一条记录。:移动最后一条记录。添加:是添加一新的记录。浏览:是查看全的记录。删除:是删除当前的记录。保存:是在添加和修改记录后,保存记录。修改:移动到要修改的记录,点修改,修改完后,点保存后就修改完毕。图6-5 信息输入界面所有的信息表中的序号及各种编号一定要统一、规范。这样有利于信息检索。代码实现请参考附录程序源代码。6.5 查询查询打印模块包括借书证信息、图书信息等,图书报表的打印,查询以图书信息表为例,如图6-6所示。在菜单中可以选择图书信息查询,在检索名称中输入要检索的字段。如图6-7所示。在后面下拉框中选择条件如图6-8。再输入关键字,点检索按钮。在查询完后,可以在如图6-6中输出Excel报表。图6-6图书信息查询 图6-7 检索名称 图6-8检索条件在选择条件包括=,,=,like,其中like是用于模糊检索。检索完之后,点Excel报表输出,系统自动输出成报表。编辑格式以后就可以打印。代码实现请参考附录程序源代码。6.6 图书与借书管理1) 图书管理在图书管理,管理人员先在征书管理中进行征书。征来书之后,再进行新书入库登记和账目管理。这时可以在征书表中找没到的书进行催书。新书入库之后,管理人员要对其进行编目处理。这样的书就可以进行流通了。在图书管理菜单中,来实现这些功能。2) 借书管理 在借书管理中,包括借书证管理和挂失、借书和还书管理,这也是图书馆管理的基本模块。如图6-9所示。图 6-9 图书证挂失 在借书管理中,输入借书证号(在以后可以加上扫描器,扫描号码),回车,系统就判断是不是这个证号存在、正常。在书号中输入要借的书号,回车,列表里就出现书号。如果多借,可以多少输入书号,回车或点+号按钮。如图6-10所示。图6-10 借书管理在还书管理中,操作和借书基本一样,如图6-11。输入借书证号,回车,下列表就出所有这个证号上所借的书。选要还的书号双击或点还书,这个号就没有了,说明还书成功。图6-11 还书管理7 系统的运行与维护管理信息系统在完成系统实施、投入正常运行之后,就进入了系统运行与维护阶段。7.1 系统的配置 1)、硬件配置要求: CPU:Pentium 4以上。 内存:1GB以上。 硬盘:160GB以上(可用空间最好在4GB以上)。 2)、软件配置要求: WINDOWS 2000/XP 中文版操作系统。7.2 系统的运行 本系统运行:首先启动Windows2000/XP,将本系统拷贝到硬盘相应地目录下,运行“图书馆管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论