大连理工大学城市学院《软件工程导论》大作业图书馆管理系统分析与设计课题名称:图书馆管理系统任课教师:张应博班级:软件1102班组长:董云琪(2011******)组员:张贵荣(2011******)齐培文(2011******)冯博(2011******)陈朋(2011******)李奎(2011******)完成日期:2012年6月20日)摘要图书馆管理信息系统是每个学校必不可少的管理系统,该系统主要解决了人工手动管理图书信息在实践中的问题。本文论述了图书馆管理系统开发的目标和要求,并重点介绍了系统分析,系统设计,系统实现和系统测试的全过程。在描述系统分析和系统设计的过程中,为了使该系统的开发过程更具有规范化,为此,本文确定了开发系统的指导思想:一、运用规范化的设计思想,二、从实际出发,三、以标准数据库应用程序的设计和开发为主,开发一个适应与大、中、小学校的图书馆管理系统。本酒店管理系统是用PowerBuilder和Microsoftaccess制作而成,主要包括图书基本情况的录入,修改,删除等基本操作、办理借书卡、实现借书、实现还书、能方便的对图书进行查询,对超期的情况能自动给出提示信息等功能。根据需要,系统建立了5个表,分别用来记录读者类别信息、读者信息、书籍类别信息、书籍类别数据字典信息、借阅信息结论主要介绍了图书馆管理在日常运作中的作用,以及图书馆管理系统的必要性。整个系统的开发过程包括:可行性分析、需求分析、总体设计、详细设计、系统实现以及测试计划。其中关键的技术包括数据库的建立,数据库的连接,数据的添加、删除和更新。为了系统的顺利完成。开发人员将要密切合作和详细的分工。关键词:图书管理数据库PowerBuilder;Microsoftaccess;SQL-server第一章前言1.1背景现在我国的绝大多数农村中小学校中图书馆理水平还滞留在纸介质的基础上,这样的机制不能适应时代的发展,因为这种管理存在很多缺点:效率低下、保密性差、另外时间一长、将产生大量的文件和数据、这对于数据的查找、更新和维护都带来了不少的困难、并且浪费了许多的人力、物力。因此为了给管理者和读者提供足够的信息和快捷查询手段,因此建立一个适合的图书管理系统是必须的。1.2编写目的目的是实现文档集中存储,分布管理,便于资料的便捷查询和安全控制,提高设备使用效率,减少维护成本,该系统建立统一的在线实时更新的文档库,可对多种形式的信息内容进行存储,从声音,图行,图像等多媒体信息到高度结构化的文档,从e-mail到讨论数据库,提供层次化的文档存储模式,实现对文档的生命管理。1.3定义图书馆管理系统是一个有人、机算机等组成的能进行管理信息的收集、传递、加工、保存、维护和使用的系统。利用信息控制企业的行为帮助企业实现其规划目标,在现代大中型企业纷纷利用的系统。二、可行性分析2.1.引言图书馆为了方便管理和读者、图书供应商更好的联系特提出开发系统。2.1.1编辑目的:从现应用的技术方面和用户的操作方式方面研究图书馆管理系统的可行性和必要性。2.1.2项目背景:项目的任务提出者:软导导师。用户:图书馆管理人员及读者。2.1.3参考资料《软件工程初级教程》清华大学出版社《数据结构(C语言版)》清华大学出版社2.2技术的可行性技术上的可行性主要分析现有的技术条件能否顺利完成开发工作,软硬件能否满足开发者的需要等,这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势。现代计算机硬件与软件技术的飞速发展,为系统的建设提供了技术条件。由于图书馆管理系统这一类的管理系统进行开发已有一定的时期,有很多成功的实例上,技术基础也已经非常雄厚,因而技术上的是可行的。2.3经济的可行性2.31支出方面设备的购置费、软件开发费、管理和维护费、人员工资和培训费等.2.32收入方面借阅的费用、节约员工的费用、基于图书馆的现有计算机及配套设备,建设MIS系统,大大降低了办公费用,提高管理效率,而且能检测数据效用,为管理提供方便。由于本图书馆管理系统是由我及几个同学开发的,投入相对较少,但却能获得较大的收益,所以经济上是可行的。2.4管理上的可行性主要是管理人员对开发信息系统是否支持,现有管理制度是否科学,规章制度是否齐全,原始数据是正确等。图书馆管理系统比较完善的规章制度和管理方法为系统的建设提供了保障,一个软件设计的好坏,关键在于产品的可靠,稳定,便于维护,系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员进行补充、维护。2.5结论由于缺乏专业人士的帮助,并且缺少实际经验,该管理系统可能做的不太健全,远不是真正意义上的软件、工业产品,只能算作坊生产的产物。可能还存在缺陷,不足之处有待改进。前景根据以上分析,我们认为开发此系统的条件已经具备,可以开始进行开发。并且我们相信此软件经济实惠,肯定具有良好的前景。我们将会逐步完善该软件,尽可能地让满足客户的需求。让客人在他下榻的房间内感受到方便,快捷,温馨。同时保证投资者资金的安全性,资金稳步的回笼期,资金的合理回报率。因此我们开发的图书馆管理系统可行!第三章:需求分析1功能需求1.1读者管理(1)学生管理简述:学生信息管理,包括信息存入,信息查询,信息修改,信息删除。输入:学生信息处理过程描述:读者信息存数据库。输出:操作成功或失败的提示信息。(2)老师管理简述:老师信息管理,包括信息存入,信息查询,信息修改,信息删除。输入:老师信息处理过程描述:读者信息存数据库。输出:操作成功或失败的提示信息。1.2借阅管理(1)学生借阅简述:学生信息,包括学生姓名,学号,年级专业,借阅时间。所借书籍。输入:学生姓名,年级,学号,专业,书籍,借阅时间。输出:学生姓名,年级,学号,专业,书籍,借阅时间以及归还时间。确认提示信息。(2)老师管理简述:老师信息,包括学老师编号,办公室门号,所借书籍输入:老师姓名,编号,办公室门号,所借书籍,借阅时间。输出:老师姓名,编号,办公室门号,所借书籍,借阅时间以及归还时间。确认提示信息。1.3还书管理(1)学生还书简述:学生信息,包括学生姓名,学号,年级专业,借阅时间,归还时间。所借书籍。输入:书籍名,学生姓名,归还时间、输出:归还确认信息提示。(2)老师还书简述:老师姓名,编号,办公室门号,所借书籍,借阅时间,归还时间。输入:书籍名,老师姓名,归还时间。输出:归还确认信息提示。1.4预约管理(1)学生预约简述:学生信息,包括学生姓名,学号,年级专业。预约书籍,预约时间,借阅时间。输入:学生姓名,年级,学号,专业,预约时间预约书籍。输出:学生姓名,年级,学号,专业,预约时间预约书籍,借阅时间,确认提示信息。(2)老师预约简述:老师信息,包括学老师编号,办公室门号,预约书籍,预约时间,借阅时间。输入:老师姓名,编号,办公室门号,预约书籍,预约时间。输出:老师姓名,编号,办公室门号,预约时间预约书籍,借阅时间,确认提示信息。1.5书籍管理(1)书籍分类简述:书籍信息包括书名,作者,出版社,入库时间。输入:书名,作者,出版社,入库时间,本数。输出:入库确认信息提示以及分类表。(2)书籍统计管理简述:书籍信息,库存量。输入:书名。输出:书名,作者,出版社,库存量3.2数据流图绘制数据流图的目的是为了方便开发人员与用户的交流,以及为系统的设计提供依据。数据流图的绘制过程通常是采用自顶向下,逐层分解,直到功能细化为止,形成若干层次的数据流图。酒店管理系统的数据流图如下所示:图3-1基本系统模型管理员管理员读者图书馆理系统管理员导入读者信息1读者管理信息2生成报表3管理员管理员管理员导入书籍信息1读者管理信息2生成报表3管理员管理员管理员读者还书信息1读者管理信息2生成报表3管理员管理员图3-2顶层数据流图图3-3第一层数据流图3.3数据字典名称:读者档案别名:描述:读者基本基本信息定义:老师档案=姓名+性别+编号学生档案=姓名+性别+年级+专业位置:读者借阅信息档案名称:读者借阅记录别名:描述:读者所借过的书籍,事件,归还时间定义:读者借阅档案=借阅时间+书籍+归还时间位置:读者借阅信息档案名称:读者预约记录别名:描述:读者所预约书籍,时间,借还时间定义:读者预约档案=预约时间+归还+借阅时间位置:读者借阅信息档案名称:书籍管理别名:描述:书籍入放时间,书籍名,作者,出版社,存量,兑量定义:书籍档案=书籍名+作者+出版社+存量+兑量位置:书籍信息档案3.4实体关系模型图根据系统的功能需求画出实体联系图(E-R)图:3.4.1总体E-R图图3-1实体关系(E-R)图3.5性能需求1数据精确度该系统中,数据除日期之外,其余都是整型数据。涉及的计算只有过期的罚款计算。对数据的精确度要求低。2时间特征该系统不是很大,响应时间,更新时间,数据处理时间,传输时间,运行时间等基本可以近似0处理。3适应性该程序主要是与SQLsever的连接,只要是装了windows操作系统的,都应该能够比较简单的连接上。另外操作比较简单,很容易上手。3.6运行需求.1用户界面对话框。2硬件接口支持各种x86系列PC机。3软件接口运行于Windows95/98及更高版本具有WIN32API的操作系统之上。4故障处理正常使用时不应出错,对于用户的输入错误应给出适当的改正提示。若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。3.7需求注释对于本软件,它的功能需求、新能需求、接口需求,从稳定性、可行性上都是可以的。四、总体设计4.1系统分析根据用户的要求以及对需求分析阶段对功能的分析,要实现客户的基本情况管理、书籍管理、借阅管理、员工管理。(1)客户的基本情况管理:图书馆的客户主要是学生,因此主要是与学校的学生信息库联系,需要学生的姓名、学号、性别、班级。(2)书籍管理:主要是对书的分类以及对书籍的具体信息的介绍。书籍的分类:计算机、建筑、外语、管理、文学。书籍的基本信息:书名、作者、出版社、书籍的存放的位置。书籍的存放位置:按照书籍的类别划分位置。(3)借阅管理:借阅者的信息、借阅的书籍的基本信息、借期、还期、预阅期(4)书籍的统计:书籍的总体数量、书籍的基本信息。4.2系统设计由问题分析我们确定了本系统需要哪些确切的功能模块和组织结构。4.2.1软件组成结构图书馆管理系统客户信息管理书籍管理借阅管理员工管理书籍的基本信息被借书籍的信息员工的基本信息书籍的ID员工的工作分配客户借阅记录客户基本信息书籍分类员工工资发放书籍总数量书籍的借期、还期书籍的预借期4.3功能说明系统分为四个模块来对实现其功能需求,即:客户信息管理模块、书籍管理模块、借阅管理模块、员工管理1、客户信息管理模块客户信息登记:对客户的信息进行登记、以及查找。2、书籍管理模块:书籍分类管理:书籍的存放位置书籍的基本信息管理:书名、作者、出版社。书籍的储存量:书籍的总量。3、借阅管理书籍的信息管理:书籍的基本信息、书籍的位置。书籍的借阅情况:书籍的借期、还期、预借期。5、员工管理员工的信息:员工的基本信息、员工信息的添加、查询和删除。员工工作分配:员工的工作类型、工作内容、工作时间。员工工资:工资数额、奖金数额、扣罚数额。4.4重要数据的数据结构设计4.4.1变量设计在系统的代码实现的时候,必须用到一些变量,一般我们所用到的变量为两种:一是全局变量、二是局部变量。全局变量:以“library_”加字母作为变量名,如:library_book_name。局部变量:不限制。4.5函数设计为了简化程序,并且提高代码的重要性,在编写代码时,对多次用到代码段,定义成函数,在用到的地方直接调用函数。全局函数以“tsg_”加函数名,如:tsg_Add();局部函数以“tsg_”加函数名,如:tsg_Add();五、详细设计在此阶段将对系统进行更详细的分析和设计,目的是确定如何具体地实现所要求的系统。5.1数据库的详细设计在设计和实现代码之前必须设计好数据库,根据系统的总体E-R图装得到数据库的概念模式:1读者类别信息表Type-infor(