图书管理系统需求分析.docx
《图书管理系统需求分析.docx》由会员分享,可在线阅读,更多相关《图书管理系统需求分析.docx(22页珍藏版)》请在冰豆网上搜索。
图书管理系统需求分析
可行性分析报告
1 引言
1.1 编写目的:
从现在应用的技术方面和用户的操作方式方面研究图书馆管理管理系统的可行性和必要性。
1. 2 项目背景:
项目需求者:
学校相关管理人员
开发者:
***项目组
用户:
图书馆工作人员及读者
2 可行性研究的前提
2.1 要求:
功能:
能够准确快速的记录图书的状态,以便能轻易的查出图书是否被借、是否归还、是否借出超期等信息;读者和管理人员可进行一些需要的操作.
安全与保密要求:
保证信息不外漏,不能让管理人员以外的人删改图书信息,保证读者及图书信息的安全。
2. 2 可行性研究方法:
通过调查分析开发图书馆管理所具备的能力及实现的方法,充分了解用户的需求,构思确定总体结构,利用数据库开发工具所具有的能力,以最简易的方法,使其成为一个初级的系统软件。
2. 3 决定可行性的主要因素:
图书馆规模、图书种类数、图书馆硬件及软件设备条件、操作人员技术
3.系统技术可行性分析
3.1 对系统的简要描述
系统使用了先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善,不仅提高了管理员工作效率,还提升了工作质量,使整个流程清晰明了。
。
3.2 系统的优越性
系统克服了原来人工操作工作量大、耗时长,处理系统的资金投入大,人员设备技处理过程容易出错等困难,而且加入了对数据的安全性保护的功能,使系统在可用性与稳健性方面有了很大的进步。
3.3 技术可行性评价
就目前使用的开发技术来说该系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成。
4 系统经济可行性分析
4.1 该系统对客户的影响:
该系统是为了改善人工处理的工作负荷重等缺点,引进了计算机新技术,在系统初期投入可能会比较大,但从长远看该系统既节省了人工,有提高了工作效率,一样是节省了开支,所以后期投入不大,反而会节省许多支出。
4.2收益
(1)提高工作效率
(2)减少工作人员
5 社会因素分析
该项目为独立开发,在技术上没有使用任何现有的软件与方法。
所以在法律方面不会存在侵犯专利权、侵犯版权等问题,完全按照合同规定的责任履行。
6 结论意见
经过一段时间对各个不同方面的可行性分析,分析员和用户及使用部门的负责人对需要解决的问题取得基本的一致看法,认为开发小组的开发方案的是可行的,使用部门负责人同意开发工程继续进行下去。
项目开发计划
1.项目名称:
高校图书管理系统
2.项目概述
2.1项目开发计划
要为图书馆建立一个图书管理系统,完成软件的开发、测试及试运行,并且完成图书借阅内计算机网络建设,使图书管理系统正式投入使用。
该系统能为用户提供图书分类管理、图书管理、读者管理、借阅管理、信息查询、系统管理。
2.2运行环境
服务器端:
Windows XP 或Windows7操作系统、数据库
客户端:
Windows XP或Windows7 操作系统及浏览器
2.3服务
培训安装、维护和运行支持从使用该系统开始,维护期限为一年。
2.6验收标准
各个功能均能正常使用。
3.实施计划
3.1任务分解
(1) 需求分析 任务:
a.可行性研究报告 b.项目开发计划书 c.需求规格说明书
(2) 设计 任务:
a.设计说明书
(3) 实现 任务:
a.编码实现 b.测试计划书 全体小组成员 c.用户操作手册
3.2进度
五天完成:
(1) 可行性研究报告
(2) 项目开发计划书 (3) 需求规格说明书 设计
四天完成 :
设计说明书的
十天完成:
(1) 测试计划书
(2) 一个能正确运行的可执行程序 (3) 用户操作手册
3.3 质量保证计划
严格按照项目开发过程中的各项步骤,从项目立项,可行性研究报告、需求分析报告、项目开发计划等,具体实施;
3.4 客户培训计划
在软件实际应用后的前一个月,对用户进行软件操作方法的具体培训;
3.5 安全保密计划
在从项目开发阶段到最后软件的正式发布期间,做好项目的保密工作,小组成员对所有项目所有相关文档进行加密,做好备份工作;
3.6 合同计划
和客户协商签订软件使用合同。
高校图书管理系统需求规格说明书
1.引言
1.1编写目的
编写本报告的目的是明确本系统的详细需求,将计算机技术运用于图书信息管理,供用户确认系统的功能和性能,为用户提供最舒适最人性化的服务,并作为软件设计人员的设计依据和使用单位的验收标准。
1.2项目风险
评估不准确、管理人员拒绝开发人员的准确评估、质量风险、人员流动风险系统运行环境风险、对项目使用技术缺乏了解所引起的风险,此外还有一些不可预料的风险。
1.3文档约定
暂无
1.4预期读者和阅读建议
预期读者是高校的图书馆管理员、与图书管理系统软件开发有联系的决策人,开发组
1.5产品范围
应用于各高校的图书馆管理以及其他图书馆的管理。
1.6参考文献
KarlE.Wiegers著刘伟琴、刘洪涛译《软件需求》清华大学出版社;
图书管理系统需求分析.doc;
《软件工程导论》——张海藩编著清华大学出版社;
2.综合描述
2.1产品的状况
图书馆在正常管理中面对大量书籍、读者信息、借书信息以及还书信息等,由于信息量庞大,使用人工记录方法效率低下而且容易出错,大大影响了图书馆的正常管理工作。
因此要对各信息进行有效的管理,并提高管理效率。
引进了图书管理软件系统给图书管理人员和读者借、还书带来便利。
本系统除了图书馆管理的一般功能外,还包括网上在线查询图书信息、查询本人的借阅情况和续借等功能。
2.2产品的功能
(1)用户管理:
读者信息的制定(包括创建新用户、输入用户名和密码、修改密码等)、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注。
(2)图书管理
书籍基本信息制定、输入、修改、查询、统计,包括书籍编号、类别、关键词、备注。
(3)人员管理
操作员的权限管理、读者的权限管理
(4)图书的流通管理
借阅管理(包括借书信息制定、输入、修改、查询,包括书籍编号、读者编号、借书日期、借书期限、备注等。
)、还书管理(还书信息制定、输入、修改、查询,包括书籍编号、读者编号、还书日期、还书期限、备注等。
)、丢书管理、超期罚款管理、淘汰图书管理
(5)打印报表
生成超期读者名单、查出超期罚款人的姓名和超期金额
(6)统计功能
统计读者人数、图书册数
(7)查询功能
有条件、多条件查询各种信息。
2.3用户类和特性
用户类特性
图书管理员学校员工属于经常性用户需要进行用户的创建、修改和删除等工作,要求具备计算机知识,如权限管理等
读者老师和同学等属于经常性用户,可以查看他们的借阅信息。
他们都具有一定的计算机应用基础,可以比较熟练操作计算机
系统维护人员计算机专业人员属于间隔性用户熟悉数据库、操作系统、网络维护工作。
2.4运行环境
操作系统为WindowsXP或Windows7。
2.5设计和实现上的限制
开发时间有限,开发人员的经验少,是开发系统中主要的问题。
开发经费不到位,管理不完善,设计时构思不全面,人员流动等都会影响本项目的开发进程
2.6假设和约束(依赖)
管理员要严格按照使用说明运行系统并合理的使用,同时不对系统进行人为性的破坏,在正常的系统维护范围内,开发商需提供必需的修理、维护。
3.外部接口需求
3.1用户界面
采用对话框方式,多功能窗口运行。
3.2硬件接口
考虑到大量数据的备份等要求,需要保持与磁带机和光盘刻录机的接口,这较易实现。
3.23软件接口
主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。
考虑到文档处理时有可能需要较常用的办公软件。
例如Microsoft的Office系列,所以应尽量实现它们之间的数据格式的自动转换。
3.4通讯接口
尽可能实现各个管理员之间的联系,以达到信息统一、准确。
4.系统功能需求
4.1说明和优先级
图书管理员身份得到验证后,他们就可以对图书信息进行相关的管理;
读者用户信息得到验证后,他们就可以进行借阅、归还图书等操作;
4.2激励/响应序列
1)系统的查询速度应该不超过10秒;
2)其它所有交互功能反应速度应该不超过3秒;
3)系统要具有可靠性可靠性,平均故障间隔时间不低于200小时。
4.3输入/输出数据
输入数据:
图书管理员查询图书信息时的查询方式,查询关键字,新建图书项,新建读者项、读者各项记录的修改,图书借还以及注销操作时的输入信息,受限制操作所需的密码等。
输出数据:
查询关键字所确定的数据库子集,统计结果,操作成功或失败的消息,图书借还以及注销操作时的结果信息。
5.其他非功能需求
5.1性能需求
1)精度需求
在精度需求上,根据使用需求,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。
2)时间需求
在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。
3)灵活性
当用户需求,如操作方式,运行环境,结果精度,数据结构与其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
4)故障处理
内部故障处理:
在开发阶段可以随即修改数据库里的相应内容。
外部故障:
对编辑的程序进行重装载时,第一次装载认为错,修改。
第二次运行,在需求调用时出错,有错误提示,重试。
5.2安全措施需求
管理员及读者登录时设置相应的登陆密码,并要求用户在登陆时需要身份验证,保密用户信息,为用户提供安全保障。
5.3安全性需求
由于图书馆管理,使用频度较高,使用性要求比较高。
为防止对信息资料和管理程序的恶意破坏,要求有较为可靠的安全性能,系统要求用户在登陆时需要身份验证。
5.4软件质量属性
可使用性:
简单,方便
保密性:
学生需输入密码才可查询本人借阅情况并续借
可维护性:
随时监控,发现问题马上解决
5.5业务规则
图书管理员定期对图书信息进行入库、修改、删除等图书信息管理,包括图书类别和出版社管理。
系统管理员主要进行图书管理员权限的设置、读者类别信息的设置、图书类别的设置以及罚款和赔偿标准的设置、数据备份和数据恢复等处理。
学校图书馆要通过校方给每位读者发放借阅卡(借阅卡包括卡号、读者姓名、照片、学院、班级以及学号等信息)或直接利用学生校园卡,管理员要为每位读者建立借阅账户,账户内存储读者的个人信息和借阅记录信息。
持有借阅卡的读者可以通过管理员操作系统进行借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。
借阅图书时,读者刷卡将读者的借阅卡号输入系统,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。
然后扫描图书上的磁条将要借阅的书号输入系统,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。
最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。
归还图书时,扫描图书磁条将读者借阅卡号和图书号输入系统,系统验证是否有此借阅纪录以及是否超期借阅,无则显示可以还书,有则显示读者和图书的基本信息供管理员人工审核。
如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理,相应处理完成后提交还书请求,系统接受后删除借阅纪录,并登记修改可借阅图书的数量。
5.6用户文档
1)功能层次图
6.词汇表
词汇名称
词汇含义
数据存储名
图书信息表
简单描述
存放已登记入库的图书的详细信息
输入数据
图书状态
输出数据
图书信息
数据存储名
读者信息表
简单描述
存放读者的详细信息
输入数据
已借数量,操作员姓名
输出数据
读者信息
7.数据定义
(1)主要数据描述
图书:
图书编号,书名,图书类别,作者,出版社,出版时间,单价
管理员:
用户名,密码,权限,姓名
读者:
借书卡号,姓名,学号,性别,读者类别,所属学院,班级
(2)各数据相应信息表
1.图书信息表,其字段列表如表所示。
图书信息表的结构
序号
字段名称
类型
位数
属性
备注
1
图书编号
文本
7
必填项
2
图书名称
文本
20
必填项
3
图书ISBN号
文本
15
选填项
4
图书作者
文本
10
选填项
5
图书出版社
文本
20
选填项
6
图书类型
文本
16
选填项
7
图书价格
货币
选填项
8
图书库存量
整数
选填项
9
图书副本数量
整数
选填项
10
图书总数
整数
选填项
2.图书借阅登记表,其字段列表如表所示。
图书借阅登记表的结构
序号
字段名称
类型
位数
属性
备注
1
借书编号
文本
6
必填项
2
学生编号
文本
6
必填项
3
图书编号
文本
7
必填项
4
借书时间
时间日期
选填项
5
还书时间
时间日期
选填项
6
是否归还
文本
1
选填项
3.图书归还登记表,其字段列表如表所示。
图书归还登记表的结构
序号
字段名称
类型
位数
属性
备注
1
借书编号
文本
6
必填项
2
学生编号
文本
6
必填项
3
图书编号
文本
7
必填项
4
借书时间
时间日期
选填项
5
还书时间
时间日期
必填项
6
是否归还
文本
1
必填项
7
归还异常
文本
8
选填项
4.学生信息表,其字段列表如表所示。
学生信息表的结构
序号
字段名称
类型
位数
属性
备注
1
学生编号
文本
6
必填项
2
学生姓名
文本
10
必填项
4
学生性别
文本
1
必填项
5
学生入学时间
时间日期
必填项
6
学生毕业时间
时间日期
必填项
5.管理员信息表,其字段列表如表所示。
管理员信息表的结构
序号
字段名称
类型
位数
属性
备注
1
管理员编号
文本
5
必填项
2
管理员姓名
文本
10
必填项
3
密码
文本
6
必填项
4
管理员加入时间
时间日期
10
必填项
(3)数据关系E-R图
(4)数据采集
数据采集采用扫描借阅卡以及键盘手动输入。
(5)数据流图
顶层图
0层图
1层图
借书处理
还书处理
(6)数据字典
数据项名
数据类型
长度
取值范围
图书编码
char
10
6-10{字符}
书名
char
30
2-30{字符}
书号
char
20
11-20{字符}
图书类别
char
3
2-3{字符}
作者
char
10
4-10{字符}
出版社
char
20
6-20{字符}
出版时间
日期型
默认日期格式
单价
float
4
一位小数
入库时间
日期型
默认日期格式
操作员姓名
char
10
4-10{字符}
书架编号
char
4
2-4{字符}
图书状态
int
1
[0|1]
借书卡号
char
8
0-9{字符}
读者姓名
char
10
4-10{字符}
读者类别
char
10
4-10{字符}
所属学院
char
16
4{字符}16
班级
char
16
4{字符}16
联系电话
char
13
11{字符}13
登记日期
日期型
默认日期格式
已借数
int
1
[2|3|4|5]
用户名
char
12
6-12{字符}
用户密码
char
12
6-12{字符}
用户权限
char
1
[0|1|2]
借书日期
日期型
默认日期格式
限还日期
日期型
默认日期格式
借阅状态
int
1
[0|1]
过期罚金
float
5
一位小数
损坏或丢失罚金
float
5
一位小数
图书类别名
char
16
4-16{字符}
借书限额
int
1
2..5
还书期限
int
2
2为整数
罚金类别名
char
2
2-20{字符}
罚金倍数
int
2
10倍
类别说明
char
20
8—20{字符}
8.分析模型
附录
根据管理系统运行流程绘出用户用例图,根据图书管理员、读者、图书等的属性和他们之间的关系画出E-R图,然后用截图工具截图并粘贴到文档中,还有其他的图也是如此。
软件需求工程过程的重要性
随着科技的不断进步,计算机逐渐在我们的日常生活中普及,软件开发行业作为其必不可少的组成部分,被人们所认可。
如今,软件行业在我国日渐成熟,对于软件开发的需求量也在日益加大,小作坊式的开发形式,已经不能满足我国对于软件规范化、实用性的要求。
因此如何高效率的完成软件的开发就成为了开发商不得不考虑的问题,由此产生量需求分析。
软件需求分析是软件开发的出发点,为设计起到指导性作用,所以需求分析在软件行业及开发流程中起着非常重要的作用。
它能够准确的理解用户的需求将其转换成需求定义,然后将需求定义转换成形式化的功能规约。
开发商在做需求时要通过与客户全面的沟通与交流,了解客户对系统的综合需求,然后分析系统的数据需求、导出系统的逻辑模型、修正开发计划,进而开发出原型系统。
如果说软件开发过程中,开发人员需要了解自己做什么,顾客需要告诉开发人员自己需要什么,而需求分析就是连接开发人员和顾客之间的重要纽带。
只有真正理解顾客的需求,才能设计出顾客所需要的软件。
一段时间内需求分析并没有赢得开发人员的重视,他们认为需求分析是整个开发过程中最简单的一个环节,不久后越来越多的开发人员认识到它才是整个开发过程中的核心部分。
正所谓“磨刀不误砍柴工”。
只有真正理解了顾客的需求,才能顺利开发出顾客真正需要的软件。
如果一味追求进度,而忽略需求分析,很可能南辕北辙,甚至开发成功后不符合用户需求,而进行大量返工,开发变得毫无意义。
所以说软件需求工程的过程对于软件开发来说是必不可少的。
实现有效的需求工程可以让组织受益匪浅,减少开发后期以及整个维护过程中不必要的返工并可带来极大的回报,在对项目开发质量成本的评估时就显示出了重视早期质量工作的意义。
此外把选定的系统需求分配到各个不同的软件、硬件和人员子系统这种方式突出了产品的系统设计方法,有效的变更控制过程可以把需求变更的负面影响降至最低。
无歧义的需求文档为系统测试带来极大便利,使交付让各方都满意的优质产品的可能性大大提高。
虽然没有人能够保证需求过程所做的投入一定能产生回报,但可以通过分析来思考及推测需求能够提供的帮助做一下对比。
首先看改进过程所需的投入,其中包括用于评估现状、开发新的过程和文档模板、人员培训、购买参考书籍与工具,以及可能要聘请顾问等所需的成本,其中最大的投入则是开发团队收集、编写、检查和管理需求的时间。
然后再看开发商可以得到的好处和因此而节约了多少时间和金钱。
各种好处罗列如下:
减少需求缺陷;
减少开发过程中的返工;
减少不必要的特性;
降低改进成本;
加快开发进度;
提高沟通效率;
控制需求范围的改变;
项目更有序;
对系统测试的评估更准确;
提高客户和开发人员的满意度;
由此可见需求工程过程对于软件开发过程的意义重大。
只有通过软件需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,从而奠定软件开发的基础。
许多大型应用系统的失败,最后均归结到需求分析的失败:
要么获取需求的方法不当,使得需求分析不到位或不彻底,导致开发者反复多次地进行需求分析,致使设计、编码、测试无法顺利进行;要么客户配合不好,导致客户对需求不确认,或客户需求不断变化,同样致使设计、编码、测试无法顺利进行需求分析的重点任务,也是最基本的任务。
只有正确了解、理解顾客的要求,才能顺利完成需求分析。
需求分析通过四个过程:
问题识别,分析与综合,制订规格说明,评审.给出了系统的功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标,要开发的系统的详细逻辑模型;并完成了系统的需求规格说明书以及对系统的评审。
。
需求分析为软件的开发起到了决策的作用,提供了开发的方向,并指明了开发的策略,使整个开发过程有条不紊、井然有序,减少了不明确任务的浪费,可以说是对整个开发流程的一个提升,在软件开发及维护中均起到了举足轻重的作用。
所以综合考虑软件工程的过程对于开发人员来说是利大于弊的,相信它已经逐渐成为软件开发不可或缺的一个过程了,既然可以节省资源、又提高质量何乐而不为呢!