信息系统分析与设计——图书管理系统(李秋男)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河北建筑工程学院
《信息系统分析与设计》课程设计报告
题目:图书管理信息系统设计
姓名:李秋男
学院:理学院
班级:信112班
学号:2011314216
图书管理系统
一、概述 (4)
1.系统开发背景和意义 (4)
2.现有图书管理系统的概述 (4)
二、系统规划 (4)
1.任务概述 (4)
2.功能结构图 (5)
3.需求分析 (5)
4.可行性分析 (6)
5.开发的目的与效果 (6)
三、系统分析 (7)
1.业务流程图 (7)
2.数据流程图 (8)
3.数据字典 (8)
(1)数据项 (8)
(2)数据流 (9)
(3)处理过程 (9)
(4)数据存储 (10)
(5)数据结构 (10)
(6)外部实体 (10)
四、系统设计 (10)
1.系统总体设计 (10)
2.系统总体结构设计 (12)
3现行系统存在问题的分析………………………………………^13
4. 解决方案 (13)
5.系统详细设计 (14)
五、开发心得 (16)
一、概述
1.系统开发背景和意义
图书管理是高校内每一个系部或院部都必须切实面对的工作,但目前仍有少部分院系仍在使用传统的人工方式管理图书资料。
这种方法存在很多缺点,如效率低、保密性差且较为繁琐。
另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。
经过详细的调查,目前我国各类高等学校中仍有一小部分单位图书资料管理还停留在人工管理的基础上。
这样的管理机制已经不能适应时代的发展,其管理方法将浪费许多人力物力。
随着科学技术的发展,这种传统手工管理方法必然被以计算机为基础的信息管理方法所取代。
图书管理作为计算机应用的一个分支,有着手工管理方法无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大的提高图书管理系统的效率。
因此,我们需要一个好的图书管理系统来帮住人们提高工作效率。
2.现有图书管理系统的概述
再试用一些图书管理系统和查阅了大量相关资料文献的基础上,发现那些系统在几个方面已经不符合时代的要求,由于设计人员以及所用工具的不同,再加上这些图书管理系统设计的时间也不一样,所用的具体场合也有区别,因此在功能上除了图书资料管理所需的基本功能外也有所不同。
经过比较总结他们都实现了以下图书管理的基本功能:1图书检索模块:是图书管理系统的重要模块之一,是读者快速查询图书的途径
2、图书管理模块:是图书管理员操作模块,读者无权进入。
本模块由借出图书登记、归还图书登记和续借图书登记子模块构成
3、数据维护模块:是有图书管理员控制的模块它由增加、修改和删除读者,增加、修改和删除图书,浏览修改读者、浏览修改图书等程序组成
4、数据统计模块:由读者统计、图书统计、接触图书分类统计、到期未归还图书读者统计几部分组成。
这些系统解决了以前那种管理方式所存在着的诸如手续繁琐、工作量大、效率低下、出错率高等缺点,设计出的系统能使读者快速检索到自己喜爱的书,图书管理员能减轻工作量。
但是鉴于开发工具和开发当时的科技发展水平所限,再加上历史发展到今天,人们的生活环境已经发生了变化,大家对于图书查询这发面的要求也更高。
二、系统规划
1.任务概述
图书管理的业务流程抽象表述如下:
(1)新的图书购进后,分门别类地进行归并并汇总,加以编号;
(2)新书编号后,上到书架以备学生借阅;
(3)如果学生需要借阅图书,则在其本人的借阅登记表上进行登记,记录相关借阅信息
与借阅日期;
(4)学会借阅后,应及时归还图书,并在本人的借阅登记表上注明归还日期和时间。
2.系统功能结构图
3.需求分析
(1)功能需求
①新进图书的登记功能:对于购进的新书,系统必须具备图书信息资料的录入功;
②图书的查询修改功能:当图书资料发生变化,如图书丢失或有错误信息输入时,
贼应能够及时对数据进行修改和补;。
③借阅的登记,归还的登记功能:系统的主要功能之一,供本校学生借阅图书、归
还图书,并进行登记;
④学会信息的增加、删除和修改功能:系统主要功能之一,建立学生信息,并对其
进行维护;
⑤超期归还图书功能:对于超过图书馆借阅期限未归还的图书,对读者进行提醒。
(2)非功能需求
①系统处理的准确性和及时性:系统处理的准确性和及时性是系统的必要性能。
在
系统设计和开发的过程中,要充分考虑系统当前和将来可能承受的工作量,使系
统的处理能力和响应时间能够满足学校对信息处理的需求。
②系统的易用性和易维护性:系统是直接面对使用人员的,而使用人员往往对计算
机并不是非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交换界
面。
要实现这一点,就要求系统应当尽量使用用户熟悉的术语和中文信息的界
面;针对用户可能出现的使用问题,要提供足够的帮助,缩短用户对系统熟悉的
过程。
③系统的标准型:计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些
都要符合主流国际、国家和行业的标准。
④系统的先进性:发展相当快,作为图书管理系统工程,在系统的生命周期尽量做
到系统的先进,充分完成企业信息处理的要求而不至于落后。
⑤系统的响应速度:系统在日常处理中的响应速度为秒级,达到实时要求,以及时
反馈信息。
4.可行性分析
(1)技术可行性分析
开发工具支持:目前我们所使用的网络开发环境大都支持SQL语言的开发,有不少专用的开发工具和插件还提交了可视化设计,这也是非常方便的。
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。
本系统便于用户理解和操作。
数据库系统采用MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。
因此本系统的开发平台已成熟可行。
硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。
本系统采用的技术均属当前流行的开发技术,具有技术成
熟、效率高、稳定、安全等优点。
(2)经济可行性分析
根据成本、效益分析法,本系统所需硬件资源都已具备,该系统简单易懂,本系统具有成本相对较低,利益相对较高的特点。
鉴于计算机技术发展异常迅猛在硬件软件配置以及开发技术均已可行的情况下开发这样一个管理系统成本必然不会很高,但其可以大大提高图书馆的工作效率,也是图书管理发展的必然趋势,其必将有较宽阔的市场,因此该系统在经济可行性上是可行的。
(3)操作可行性
本系统开发的宗旨是以敏捷为中心。
该系统应该具有美观、大方、简单、易操作等优点,及时是不懂计算机的人员也可以根据系统提示使用和管理本系统,它的操作简单等特点使该系统在操作上可行。
5. 系统开发的目的与效果
1)成本问题
开发一个好的图书管理系统,需要大量的人力,物力,财力,因此我们开发一个系统时,我们应该根据所在高校或单位的经济承受能力,来选择自己所需要的设备和安排人员,尽可能的把图书管理系统开发的比较完善,以满足广大老师和同学借还图书。
同时在开发系统前,我们应该对自己开发的每一个模块都要有一个很好的估计,把成本问题控制到最低限度,以免给高校或单位造成不必要的开支。
最后在开发的阶段,做好成本记录,管理好资金的充分利用,以保证系统的顺利开发成功。
2)系统开发的标准问题
系统的前台开发应考虑在完成功能的同时,还应该考虑界面友好型。
让广大老师和同学登陆到图书管理系统界面后有一种轻快的感觉,因此前台开发所运用的工具主要是开发工具。
系统的后台开发主要是数据库的设计,在数据库设计的时候应该考虑图书信息的容量和图书管理的快捷问题,同时还应该根据所在高校或单位的经济承受能力,尽可能的开发出比较适合本高校或单位的系统。
因此综合考虑各个方面的因素,我们选择SQL Server 2005。
3)风险与机遇并存
由于技术的不断发展变化以及SQL Server 2005的发展方向和模式都正在形成之中,图书馆方向上的盲目多方出击、规模上的贪大求全、进度上希望一步到位都将带来很大风险。
建设初期,宜先选择那些需求明显、目标明确、条件成熟的馆室入手,积累成功经验,逐步向其他馆室进行推广。
其它图书馆则积极做好跟踪准备,一旦条件成熟即可迅速开展推广。
软硬件投资宜先投入一些基本平台所需的设备,随着图书馆应用的发展陆续增加设备。
三、系统分析
整个软件生命周期中,开发所占的费用和时间都很小。
后期维护工作一般要占整个软件生命周期的80% 以上。
所以系统分析很重要,一个好的系统分析可以减少很多后期维护工作。
1.业务流程分析及业务流程图
图例说明:
表示处理过程的说明
表示信息的传输过程,线段上的文字是对传递信息的说明
根据需求分析,我们分析出图书管理系统的一般流程:
登记后的
图书
图2 业务流程图 针对业务流程,具体描述其功能如下:
1.用户登录:系统对用户合法性进行检查;
2.图书入库:对新购进的图书分类进行编号,并把图书基本信息录入计算机;
3.图书借阅:对已入库的图书学生可以借阅,并进行登记; 4.图书归还:对学生已归还的图书进行登记归还;
5.信息查询:即对所有图书的借阅情况或学生的基本情况和借阅情况进行查询。
2.数据流程图
(1)总数据流程图
图3 总数据流程图
管理员管理系统数据流程图
(2)
3.数据字典
(1)数据项
数据项名:管理员编号
别名:id
数据类型:字符型
长度:10
描述:管理员编号
数据项名:管理员姓名
别名:admin
数据类型:字符型
长度:10
描述:管理员姓名
数据项名称:管理员密码
别名:userpassword
数据类型:字符型
长度:50
数据项名:负责书库
别名:无
数据类型:字符型
长度:10
取值含义:管理员所负责书库名称
数据项名称:管理员权限
别名:rank
数据类型:字符型长度:2
(2)数据流
数据流名:入库新书清单
说明:入库新书信息
数据流来源:管理员
数据流去向:新书入库处理
组成:图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库,入库日期,出库日期
数据流名:销书计划
说明:销毁图书信息
数据流来源:管理员
数据流去向:销书处理
组成:图书编号,图书名称,日期,数量
(3)处理过程
处理名称:图书编目系统
输入的数据流:图书编目信息(D01)
处理逻辑:编目数据录入,要求录入数据正确
输出的数据流:图书编目
处理名称:编目管理
输入的数据流:图书编目信息(D01)
处理逻辑:编目数据录入,要求录入数据正确
输出的数据流:D01
处理名称: 维护系统
输入的数据流: 管理员登陆信息(D010)
处理逻辑:读者登陆信息录入
输出的数据流:系统信息(D011)
(4)数据存储
数据存储名称:管理员信息
描述:管理员管理权限和现状信息
组成:管理员编号+管理员权限
关键字:管理员编号
相关处理:查询,修改,录入
(5)数据结构
数据结构名:管理员
含义说明:管理员信息
组成:管理员编号,管理员姓名,负责书库
数据结构名:借书清单
含义说明:借书信息
组成:借书卡号,借书编码,借出日期,到期日期,拖欠日期
数据结构名:罚款清单
含义说明:罚款信息
组成:管理员编号,借书卡号,借书编号,罚款数目
(6)外部实体描述
外部实体名称:用后
简述:学生,教师等
输入的数据流:读者登录信息
输出的数据流:借阅信息
外部实体名称:图书馆管理人员
简述:图书馆管理员
输入的数据流:图书编目信息图书借阅填写借阅记录填写归还记录输出的数据流:借阅修改在库数量填写借阅信息归还修改在库数量
四、系统设计
1.系统总体规划
(1)系统总体规划
图5 系统总体规划
①图书管理模块
实现对图书信息的修改,包括定义、查询、更新、删除等操作
图书信息包括图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库。
入库日期,出库日期等。
②图书借阅归还模块
借书信息的输入,包括借书卡号,图书编号,借出日期,到期日期,拖欠日期,罚款数目等。
还书信息的输入,包括图书编号,借书卡号,借阅者姓名,图书名称,借出日期等。
③读者信息模块
实现对借阅者信息的修改,包括定义、查询、更新、删除等操作。
借阅者信息包括借书卡号,姓名,班级,院系等。
④管理员管理模块
实现对管理员信息的修改,包括定义、查询、更新、删除等操作。
管理员信息包括编号,姓名,负责书库等。
2.系统总体结构设计
如果要完成一个完整的图书管理系统,需要的相关信息很多。
由于种种条件的限制,同时考虑到开发成本,所以本系统仅实现基本的管理功能。
并不能完全满足上面例子所描述的图书馆,使用前应进行二次开发。
(1) 系统目标设计
系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息[3]。
提供统计分析功能。
可以展现出图书类型比例、库存与借出比例。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
(2) 系统功能分析
根据以上功能,将图书管理系统的数据分为:
数据输入部分:主要包括图书基本信息的录入、借阅人基本信息的录入、用户基本信息的录入。
数据输出部分:主要是各种统计查询,包括:根据图书信息(如书名、作者、出版社等)查阅图书及其借阅信息、统计输出图书类型比例等。
数据处理部分:主要涉及借阅和归还的处理,如一本书借出后,必须在数据库中将该书标记为已借出,以防出现数据库中有书但图书馆无书的情况;一本书归还后,同样必须在数据库中将其标记为已经归还,以便再次借出。
3.现行系统存在问题的分析
该图书馆工作大部分还是进行着手工管理,工作起来效率很低,由于不可避免的人为因素,经常造成数据的遗漏、误报。
计算机信息化管理有着储存信息量大、速度快等许多优点,提供给我们的处理信息及时快捷,同时也提高了我们工作人员的自身素质[1]。
4. 解决方案
基于以上的对问题的分析,利用计算机给我们提供信息,及时地调整学校图书馆图书结构,并且对学生们的借阅过程形成一整套动态的管理就十分必要了。
图书馆信息系统的建立,需要进行用户的需求调查与分析,以确定系统目标,提出解决问题的详细方案,这是系统建设的重要环节。
学校图书馆规模相对于商业图书馆小,但要有着完善的图书信息,对每一册书要有详细的记录信息,功能上对系统的需求是全面的。
因此对用户的需求可分为四个方面:
一、方面是图书馆工作人员通过计算机来管理各类图书,分类编号,调整图书结构,增加图书库存,适应学生的需求;
二、方面是学生们能通过计算机来查询浏览图书馆中的图书,来确定自己需要的书籍,为借阅做好准备;
三、方面是工作人员对学生们的借书证发放;
四、方面也是图书馆的核心工作,对图书的借阅管理。
这四个方面形成了学校图书馆一个工作整体,采用计算机自动化信息处理,可方便快捷地共享信息、交流信息,高效地协同工作。
在软、硬件方面对系统的需求,软件要求易学,界面友好,容易掌握,可以很简单方便的管理各种图书信息。
硬件的配置要求不能太高,这样可以很好的适应当前的学校图书馆。
在开发方式上对系统的需求,由于学校图书馆是一种无商业利益的,所以系统设计开发的周期要短,在短时间内完成,减少开发成本,提高开发效率,方便、简单、实用作为系统开发的指导思想。
5.系统详细设计
(1)代码设计
1.“图书编号”设计。
“图书编号”结构如下图所示:
自由码
小管理目类编码
大管理目录编码
图6 代码设计
(2)数据库设计
考虑到图书馆管理系统作为一个为广大师生服务的系统,同时为方便管理员进行管理,结合西安财经学院先阶段的实际需要和设备先进程度,系统采用SQL Server建立和维护数据库。
SQL Server是一个功能强大的关系型数据库管理系统,它所具有的安全性、可靠性、灵活伸缩性,使之可以有效的用于开发本数据库,为Web方式的数据处理提供了理想的数据库平合。
表 1 管理员表
(3)输入输出设计
①输入设计
输入设计的原则:
最小量原则,输入量越小,出错机会越少,花费时间越少,数据一致行越好;
简单性原则,输入的准备、输入过程应尽量容易以减少错误的发生。
早检验原则,对输入数据的检验尽量接近原数据发生点,使错误能即使得到改正。
少转换原则,输入数据尽量用去处理所需形式记录,以免数据转换介质时发生错误。
(其中部分输入界面十分相似,故省略,样板样式如下所示。
)
输入界面的设计我们不仅考虑到数据输入窗口的屏幕格式,而且考虑到如何使输入数据的错误率尽可能的减小,为此,在程序中加入了对输入数据的校验和判断等功能,如输入数据的范围,数据间的关联等
图 6 用户登陆界面
该页面用于用户登陆,包括游客,用户和管理员。
成功登陆则取得用户的session用于以后的操作权限认定。
程序执行时首先判断用户类型,如果是游客则对session赋值为游客类型,然后直接进入主页;如果不是游客则执行查询语句,看数据库中是否存在这样的用户名和密码,根据选择用户类型的不同在不同的表中进行操作,成功则进入主页,否则提示输入错误。
图 7 添加图书
实现图书添加功能。
当管理员需要添加图书时,通过管理菜单点击“添加图书”就进入这个页面,考虑到输入的方便性图书分类和出版时间都可以进行选择,无须手工输入。
图书添加操作要求全部数据都必须输入,否则报错。
添加操作实际上是将数据写入数据库,写
入新图书信息之前首先检查图书名是否重复,重复则报错返回上个页面,输入正确而且数据库中原本没有这样的数据则执行写入操作。
图 8 用户管理
实现用户管理全部功能,包括查看全部用户,添加,修改,删除,锁定,查看其借书记录。
其中锁定针对于借书超期用户,管理员可以在超期统计页面知道哪些用户借书超期。
添加用户时程序首先判断是否已经存在这个用户名,存在则终止操作,返回上个页面;删除用户时如果该用户存在借书记录则不允许删除,程序跳转到该用户的借书记录页面。
更改操作同样考虑到了用户名重复的问题,避免混淆。
截图如下:
②输出设计
输出设计主要包括以下几方面的内容:确定输出内容;选择输出设备与介质;确定输出格式。
在输出界面的设计上,可以通过多种方式来实现,我们主要将数据以日常通用的格式呈现在屏幕上,方便用户的查阅,以及管理员进行修改。
五、开发心得
经过本段时间对信息系统开发的学习和实际操作。
不仅重温了信息系统分析与设计的整体流程,同时也让我对教室信息管理系统这一实用性较强的系统有了一定程度的了解和掌握。
正所谓,实验出真知。
以往在学习过程中容易忽略的问题,在实际操作中都演变成了不经过刻苦努力便难以逾越的关卡。
由于在设计初期,没有管理信息系统进行准确地需求分析,同时所掌握的资料不足,对现实社会中图书馆信息管理的具体操作流程十分生疏,导致之后绘制流程图和后期设计过程中的数据库的概念设计过程中遇到了很大困难,下了很大的功夫。
因此,通过此次数据库课程设计使我认识到了需求分析和前期实地调研对于管理信息系统的开发和设计的重要性。
也认识到规范化的设计流程对于后期的设计来说,是十分必要的。
前面的设计是后面的铺垫,前者与后者息息相关。
只有对前面的设计过程进行准确地分析,才能节省整个系统的开发时间。
同时,只有之前的分析与设计规范准确,才能避免在之后的设计中牵一发而动全身,致使管理系统整体崩盘的局面。
最后,通过此次数据库课程设计使我初步理解了简单数据库的一般开发流程,同时也在一定程度上掌握了数据流图等专业图形的绘制方法。