您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 图书管理系统的设计与实现
图书管理系统的设计与实现1引言1.1选题背景图书馆管理系统,能进行图书馆管理系统能实测国民经济和企业的各种运行情况;利用过去的数据预测未来;从企业全局出发辅助企业进行管理决策;利用信息控制企业的行为;帮助企业实现其规划目标。图书馆管理系统合运用了管理科学,系统科学,运筹学,统计学,计算机科学等学科的知识。可以通俗的简化的描述图书馆管理系统的三要素:系统的观点、数学的方法以及计算机的应用。图书馆管理系统概念结构主要由四大部分组成即信息源、信息处理器、信息用户、信息管理者组成。1.2目的和意义本项目的设计目标旨在方便图书管理员的操作,减少图书管理员的工作量并使其能更有效的管理书库中的图书,实现了传统的图书管理工作的信息化建设。本系统的服务对象为图书馆流通部门的工作人员,用户界面友好,不需计算机专业的专门训练即可使用本系统。1.3设计原则图书管理处理的信息量比较大。因此对于本系统的设计,需要采取以下一些原则:删除不必要的管理冗余,实现管理规范化、科学化。程序代码标准化,软件统一化,确保软件的可维护性和实用性。能够连接各个关联的数据库,获取数据库中的信息。保证各个数据库表格相关的项目之间有相同的属性。图书管理系统第2页(共25页)22方案论证2.1WEB建站思想2.1.1WEB设计的方法虽然Web工程包含了程序设计和软件开发,且采用了一些软件工程的原理,但是,基于Web的系统开发与软件开发是不同的,同样,Web工程也不同于软件工程[3]。(1)大部分基于Web的系统强调的是信息的含量,是面向文档的,包含静态或动态网页。传统软件工程强调的是系统功能的完善,除了系统帮助是一些文档以外,其他的几乎就是一些数据交互功能,是面向功能的。(2)基于Web的系统关注视觉和感觉,强调感官舒服。虽然软件界面设计也逐渐纳入了软件工程的研究领域,但与基于Web的应用系统相比,传统的软件界面是以简单为美的原则,而基于Web的应用系统则在多种程度上与多媒体结合,强调颜色搭配、动画飞扬。(3)大多数基于Web的系统是内容驱动的,通常,基于Web的系统开发还包括内容提交的开发。而传统的软件开发是功能驱动的或过程驱动的。(4)用户形式的多样性。大多数基于Web的系统必须迎合具有不同技术和能力的用户,复杂化人机接口、用户界面和信息递交。而传统的软件系统的用户群体是可以圈定在某个范围之内的,可以根据这个群体定制用户界面和人机接口。(5)大多数基于Web的系统必须在短期内开发完成。所以,Web工程很难应用传统软件工程中使用的形式化方法和测试技术。(6)Web比通常意义上的软件开发使艺术、技术和科学在更大范围内结合。开发基于Web的系统的人员在技能、知识方面比传统的软件开发所需要的更加广泛,人员类型更多。2.1.2Web工程过程Web工程过程活动贯穿Web生命周期,从应用概念的生成到开发、发布、不断的精化和升级系统。为了降低开发基于Web的应用系统的复杂性,需要一个描述开发基于Web的应用系统阶段的过程模型[4]。(1)Web分析基于Web的应用系统的需求分析是很重要的活动,需要一个系统而严密的方法。根据Web特性和Web应用的特定需求,需要采用更为开放、灵活的需求分析方法。(2)Web设计Web设计不但包括功能设计和性能设计,还要包括页面风格设计,包括页面的主色调、页面框架结构、文字颜色搭配、动画和图片的放置等。有效的Web站点设计需要注意可用性,要把基于Web的系统设计成易于导航,吸引人和有用。现在,比较流行的Web设计方法是以用户为中心的设计。(3)Web开发Web开发过程包括后台数据库程序的开发、页面程序的编写和所有网页的制作。在设计阶段决定的Web框架基础上,进行具体的页面设计和制作。把内容提供人员的内容连接到具体的页面。(4)Web测试基于Web的应用系统的测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。(5)Web发布Web发布阶段主要是把开发完成,经过初步测试的Web应用系统传送到Web站点上,供用户浏览和使用。2.1.3WEB设计的系统结构在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数数据库设计第4页(共25页)4据请求、加工、结果返回以及动态网页生成等工作全部由WebServer完成。实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷分配给了Web服务器。这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。2.2WEB系统实现技术2.2.1WEB服务实现技术目前比较成熟的技术主要有ASP、PHP和JSP。现对它们做一些说明:PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。JSP是Sun公司推出的新一代网站开发语言JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。PHP的特性包括1、开放的源代码:所有的PHP源代码事实上都可以得到。2、PHP是免费的:和其它技术相比,PHP本身免费。3、php的快捷性:程序开发快,运行快,技术本身学习快。嵌入HTML:因为PHP可以嵌入HTML语言,它相对于其他语言,编辑简单,实用性强,更适合初学者。4、跨平台性强:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。5、效率高:PHP消耗相当少的系统资源。6、图像处理:用PHP动态创建图像7、面向对象:在php4,php5中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序。8、专业专注:PHP支持脚本语言为主,同为类C语言。2.2.2MYSQL数据库特性数据库设计第5页(共25页)1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性2.支持AIX、FreeBSD、HP-UX、LINUX、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统3.为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、perl、PHP、Eiffel、Ruby和Tcl等。4.支持多线程,充分利用CPU资源5.优化的SQL查询算法,有效地提高查询速度6.既能够作为一个单独的应用程序在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径8.提供用于管理、检查、优化数据库操作的管理工具9.可以处理拥有上千万条记录的大型数据库2.3运行环境和开发工具的选择通过以上各种技术的介绍和比较,结合我自己的实际情况,我主要采用PHP技术实现动态页面设计,MysqL实现数据库应用和数据管理的设计方案。2.3.1运行环境WindowsServer2000系统运行平台,IIS5.0WEB服务器和脚本解释器,IE6.0浏览器,DirecX9.0系统插件和SQLServer2000企业版[9]。数据库设计第6页(共25页)62.3.2开发工具DreamweaverMX2004是建立Web站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。FlashMX提供了创建和传递丰富的Web内容和强大的应用程序所需要的各种功能。不论是设计动态图形还是建立数据驱动的应用程序,FlashMX所具有的工具都能跨越多种平台及设备创造精彩效果并获得最佳的用户体验。AdobePhotoShop为建站提供原始的素材,它的强大的功能可以完成大部分图片处理和特殊效果。附言:Apache/2.2.17(Win32)PHP/5.3.3MySQL客户端版本:mysqlnd5.0.7-dev-091210-$Revision:300533$PHP扩展:mysqli3系统需求分析3.1用户调查1.图书馆工作人员对功能的需求工作人员对功能的需求细分如下:1、职工信息的输入,查询,修改;2、书籍信息的输入,查询,修改;3、借书信息的输入。4、还书信息的输入。5、读者信息的查询。2.读者对功能的需求1、图书信息检索:范围可按书名,作者,出版社,类别等检索款目进行任意条件组合精确或模糊检索,最快时间查找目标书籍;数据库设计第7页(共25页)2、读者人个信息的输入、修改。查询。建立读者个人信息档案,获取当前读者的个人信息。并根据学号查询当前读者当前的借书情况,历史借书情况等。3.2图书管理系统数据流图图3-1功能总览数据输出数据来源数据存储数据处理数据流数据流检查有效性根据权限处理数据用户登录要求图3-3第1层数据流图无效输入图3-2第0层数据流图数据库设计第8页(共25页)8输出查询信息查询请求接受查询数据查询图书信息编目请求录入图书信息图书信息表数据文件输出修改信息修改请求修改图书信息图3-4书库数据流数据库设计第9页(共25页)图书借阅信息表输出借阅信息借阅请求判断读者借阅权限记录借阅信息接受读者信息图书归还信息表输出信息归还请求添加归还记录接受图书信息输出查询信息图书查询请求接受查询数据查询图书信息图书信息表输出查询信息读者信息查询请求接受查询数据查询读者信息读者信息表图3-5借阅数据流图数据库设计第10页(共25页)10输出查询信息查询请求接受查询数据查询职工信息职工信息录入请求录入职工信息职工信息表数据文件输出修改信息修改请求修改职工信息图3-6管理员数据流图输出查询信息查询请求接受查询数据查询读者信息职工信息录入请求录入读者信息读者信息表数据文件输出修改信息修改请求修改读者信息图3-7读者系统数据流图输出查询信息图书查询请求接受查询数据查询图书信息图书信息表2.3数据字典1.主要数据项的定义1.图书信息表数据库设计第11页(共25页)属性名数据类型长度允许空备注流水号char10N唯一分类号char10N索取号char10N书名char50N作者char30N价格moneyY出版社char50Y出版日期char10Y是否借出char5N2.读者信息表属性名数据类型长度允许空备注学号char10N唯一密码char10N姓名char30N性别char2N所属系char50Y电子邮件char50Y备注char100Y3.职工信息表属性名数据类型长度允许空备注职工编号char5N唯一密码char10N姓名char30N性别char2N联系电话char11Y所属部门char3N4.部门信息表属性名数据类型长度允许空备注部门编号char3N唯一部门名称char30N5.借阅图书信息表属性名数据类型长度允许空备注流水号char10N学号char10N书名char50N数据库设计第12页(共25页)12借书日期datetimeN应还日期datetimeN归还标记char5N6.归还图书信息表属性名数据类型长度允许空备注流水号char10N学号char10N书名char50N还书日期datetimeN2.主要数据存储的定义(1)存储名称:图书记录输入:流水号输出:图书所有信息及是否借出数据结构:流水号+分类号+索取号+书名+作者+价格+出版社+出版日期+是否借出(2)存储名称:读者记录输入:学号输出:读者信息及借书记录(所借书的流水号)数据结构:学号+姓名
本文标题:图书管理系统的设计与实现
链接地址:https://www.777doc.com/doc-4222641 .html