软件工程--图书管理系统分析.docx
实验项目名称:图书管理系统系统分析 实验学时: 4 同组学生姓名: 实验地点: 1514 实验日期: 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、确定项目的可实施性,在此基础上完成系统的逻辑功能模型的建立;2、采用不同的软件开发技术,完成对项目的分析过程,给出系统的逻辑功能模型,数据字典以及规格说明书;3、理解项目的业务流程图,要求绘制出系统的DFD,功能分析图等。4、完成系统的需求规格说明书。二、实验仪器和设备 环境要求:计算机及配备Windows操作系统和Office应用程序。三、实验过程1:引言随着现代科学技术的进步,人类社会正逐渐走向信息化。图书拥有丰富的文献信息资源,是社会信息系统的重要组成部分,在信息社会中的作用愈来愈重要。1.1 立项目的(1) 为了图书管理系统更完善; (2) 为了图书馆对图书的管理更方便; (3) 为了减轻图书管理人员的工作负担。 1.2 项目背景本项目的名称:图书管理系统开发软件。本项目的任务提出者及开发者是图书管理系统软件开发小组,用户是学校图书馆。本系统是针对电脑管理图书的需求设计的,可以完成读者登记、购入新书、读者借还书、图书注销等主要功能。人工管理图书的手续繁索、效率低下给具有强烈时间观念的管理人员带来了诸多不便,图书馆缺少一套完善的图书管理软件,为了对图书的管理方便,满足图书管理的要求,因此设计了能对图书管理系统的需求进行分析、功能模块划分的应用软件程序。1.3 术语说明(1)系统:图书馆管理软件(2)图书信息:图书的基本信息,包括书名、图书编号、作者、出版社、索书号、库存数量以及库存位置等,以供于读者查阅。(3)借书记录:包括借阅者的姓名、班级、借书卡ID号以及所借图书的书名、借书日期等(4)借阅规则:对不同的借阅者有不同的规定借阅图书数量和借阅时间,对不同的违章情况有不同的罚款措施。1.4 参考文献软件工程导论张海藩 编著 清华大学出版社软件工程 张权范 编著 清华大学出版社软件工程理论与实践张燕 洪蕾 钟睿 李慧等编著软件工程王慧芳 毕建权 编著 实验一系统分析参考文档。2:项目概述2.1 待开发软件的一般描述(1) 读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注。(2) 书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。(3) 借书信息制定、输入、修改、查询,包括书籍编号、读者编号、借书日期、借书期限、备注。(4) 还书信息制定、输入、修改、查询,包括书籍编号、读者编号、还书日期、还书期限、备注。(5) 有条件、多条件查询各种信息.2.2待开发软件的功能(用分层数据流图描述)2.3用户特征本系统的最终用户有三种:一是管理员(图书管理员和其它管理人员),他们可以删除图书信息、删除或增加学生信息等;二是读者,可以查看他们的借阅信息。三是系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工作。管理员和读者都是经常性用户,维护人员为间隔性用户。2.4运行环境(硬件环境、软件环境)1)硬件环境服务器 (1) 处理器(CPU):Pentium 900M (推荐Pentium 4 1.2G) (2) 内存容量(RAM):至少256M(推荐 512M)客户端 (1) 处理器(CPU):Pentium 133M 或更高 (2) 内存容量(RAM):64M或更高2)软件环境数据库服务器端(1) 操作系统:Microsoft Windows 2000(2) 数据库管理系统:Oracle,配置TCP/IP协议Web服务器端(1) 操作系统:Microsoft Windows 2000(2) Internet 信息服务(IIS)6.0管理器(3) Visual Studio.NET 2003,配置TCP/IP协议 客户端(1) 操作系统:Windows 98/2000/2003/XP(2) Web浏览器:Internet Explorer 5.0以上或Netscape 4.0以上,配置TCP/IP协议3:功能需求3.1功能点列表系统维护:(1) 用户管理(2) 读者类别设置(3) 图书类别设置3.2功能点描述1.用户管理 根据在校学生的信息统计,将已经毕业离开学校的用户删除,添加刚刚入学的学生信息,将数据库做相应的变动。流程图如下:2. 读者类别设置根据数据库中已有的读者信息和读者借书权限,在读者借阅书籍时,根据读者的权限,判断读者的行为是否在本人权限以内。3.图书类别设置根据数据库中已有的图书信息,将图书分类:A-综合性著作,B-哲学,宗教,C-自然科学类,应用科学类,社会科学类等科学类用书,D-文学,艺术类。流程图如下:4:外部接口需求4.1用户界面界面的设计应本着简洁,漂亮,通俗易懂,操作简捷,并具有一定的灵活性;尽可能采用开发工具构造界面,使需求定义和设计,编码相衔接;参考,比较已经成熟的软件界面的风格,提取有用的设计方法。4.2硬件接口采用标准的键盘,鼠标控制接口;能够提供与多种打印机之间的接口,这一部分主要由操作系统决定。系统采用客户机/服务器模式,支持各种X86系列的PC机。4.3软件接口这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。例如microsoft的office系列。另外用户还有用户所需要的软件接口,这些应在用户需求定义时说明了。4.4通信接口本系统的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。用户对程序的维护过程,可以参考软件分析报告。每一次维护,都要对软件分析报告进行更新。 4.5故障处理a. 内部故障处理:在开发阶段可以随即修改数据库里的相应内容。 b. 外部故障处理:对编辑的程序进行重装载时,第一次装载认为错,修改。第二次运行,在需求调用时出错,有错误提示,重试。 c.系统会对自动保存更新的数据,同时还会自动备份。正常使用时不出错,一旦发生意外,对于用户的输入错误给出适当的改正提示信息,遇不可恢复的系统错误时,比如掉电、网络不通,电脑突然死机或者是受到外部的恶意攻击破坏的情况下,保证系统数据不会丢失,确保在下数据信息的安全。5:软件非功能属性如性能需求、正确性、可靠性、效率、完整性、易使用性、可维护性、可预测性、复用性、安全保密性、可理解性、可移植性性能需求:1) 系统最小寿命:系统应该能在无重大改动的条件下正常运行5年以上。2) 对设备的要求:要求计算机稳定性良好,整套系统经济实惠。3) 可以利用的信息和资源:图书馆已经配置了所有的计算机,以及网络设备,操作人员将使用win2000及以上系统。4) 图书管员工受过较好的计算机方面的培训。5)系统对大部分操作的相应时间应在12秒内。可靠性:此系统是面向图书馆管理员的系统,所以对系统的可靠性要求为中级。具体的要求:1) 月正常运行时间:8×5×222) 月停机维护时间:不超过6小时3) 最大缺陷数量:10以内完整安全性需求:对于图书管理系统的图书量非常大,所以在对这些图书导入和查询时要保证速度。在图书借阅过程中又要保证事务的完整性。对于整个系统,需要完整的权限控制,防止某些人恶意攻击系统,修改原始记录,同时对于数据库中的数据需要定时备份,防止系统数据丢失。此外,系统要求用户在登陆时需要身份验证。可使用性:在装载总程序时,正常就运行,异常就停止;汉语编程系统出现错误,将会产生不可遇见的问题,热启,整个终端程序就会再启动;程序出现错误, 重新装载,若仍有错,按照提示逐渐装载。可维护性:本软件的组成程序为汉语成语设计语言,组构均较简单,直观意义上的较独立。因此,给予电子化的所构成的硬件的简单可维护的特点,决定了该软件的简单可维护性。 可转移、可转换性:可转移的环境是奔腾133、16 兆内存以上;不可修改任何部分;可用向上兼容的高版本的汉语编程系统。约束性:对图书编号和借书人编号输入规范性的要求,编号一律为数字组成数据精确度:保证查询的查全率和查准率为100%,所有在相应域中包含查询关键字的记录都能查到,所有在相应域中不包含查询关键字的记录都不能查到。适应性:满足运行环境在允许操作系统之间的安全转换和与其他应用软件的独立运行要求。保密性:本软件作为图书管理辅助设备,它的规模比较小,不需要保密技术;限定一个程序中某些区域的规约,给不同的模块分配不同的功能。 6:数据描述6.1静态数据(数据字典)编号类名称类说明1Admin对图书管理系统进行系统管理和借还管理的管理员2Administrator对图书管理系统进行系统管理的管理员3Librarian对图书管理系统进行借还管理的管理员4Book图书基本信息5BookType图书类别信息6Borrow记录读者借还图书信息7Reader读者基本信息8ReadType读者类别信息9Store图书在图书馆内的存放位置信息10Reserve读者预订图书信息图书管理员:权限、帐号、用户名、密码、性别、出生日期、照片、借书数量读者:借书卡号、姓名、性别、读者类别、出生日期、照片借阅信息:借书证号、ISBN、索书号、借书时间借阅历史:借书证号、ISBN、索书号、借书时间、还书时间(存放读者借阅历史)数据字典(1) 数据接口描述接口传递信息维护图书资料添加图书图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护图书资料修改图书信息图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护图书资料删除图书信息图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护用户资料添加新用户用户信息:(ID,姓名,年龄,性别,开户时间,余额,阅读权限)维护用户资料修改用户资料用户信息:(ID,姓名,年龄,性别,开户时间,余额,阅读权限)维护用户资料删除用户资料用户信息:(ID,姓名,年龄,性别,开户时间,余额,阅读权限) (2)词条描述录入新读者简要描述:将新的读者信息登记到读者信息表中输入数据流:新读者数据,读者类别输出数据流:有效读者信息读者信息修改简要描述:修改指定的读者信息(卡号、已借书本数不可修改)输入数据流:待修改的读者信息输出数据流:修改后的读者信息读者信息删除简要描述:将已归还全部图书的指定读者信息从读者信息表中删除输入数据流:待删除的读者信息,借书状况信息输出数据流:待删除的读者信息6.2数据库描述数据库采用SQL Server数据库。6.3数据采集数据采集采用键盘输入四、实验结果与分析1、 需求分析的基本任务是什么?需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。需求分析虽处于软件开发过程的开始阶段,但它对于整个软件开发过程及软件产品质量是至关重要的。需求分析是基本任务是要准确地定义新系统的目标,回答系统必须“做什么”的问题。2、 需求分析的基本步骤是什么?1)了解当前系统的工作流程,或得当前系统的物理模型。当前系统是指目前正在运行的系统,可能是需要改进的正在计算机上运行的软件系统,也可能是人工处理系统。2)抽象出当前系统的逻辑模型。物理模型反映了系统“怎样做”的具体实现,去掉物理模型中非本质的因素,抽象出本质的因素。本质因素是指系统固有的,随环境不同而不同,随实现不同而不同。3)建立目标系统的逻辑模型。目标系统指带开发的系统。分析、比较目标系统与当前系统逻辑当的差别,然后对“变化的部分”重新分解,分析人员根据自己的经验,采用自顶向下逐步求精的分析策略,逐步确定变化部分的内部结构,从而建立目标系统的逻辑模型。4)作进一步补充和优化。为了完整描述目标系统,还要做一些补充:说明目标系统的人机界面;说明至今尚未详细考虑的细节