计算机科学与技术(本科)《软件工程》实验报告1班级:13春计算机科学与技术姓名:史俊杰学号:1333101200206结构化需求分析—大学图书馆图书信息管理系统一.编写目的根据需求调研分析报告,定义系统功能和系统数据流图,通过编写需求分析规格说明书,让开发人员能够根据需求规格说明书来开发项目。通过本实验熟悉和掌握一种软件开发工具,能够设计一个简单的软件系统,并综合运用过去学习到的编程知识实现一个软件的局部功能,为毕业设计打下基础。二.项目背景根据学校希望能够充分利用现代科技来提高图书管理的效率,在原有的办公系统基础上进行扩展,将一些可以用计算机来管理的都进行计算机化,使得图书馆管理人员工作更加方便,工作效率也更加的高。三.系统需求说明1.系统范围其中,圆角的长方形表示我们要开发的图书馆管理系统,该系统与如下4个外部产生联系。首先,学生数据库:由于现在学校已经开通了一卡通,为此需要导入教务处里面的学生信息,将一卡通作为借书的标记,图书馆管理系统应该有这样的一个接口来识别一卡通的信息。其次,图书等业五方面的数据库,这方面的数据库主要是对图书等方面的管理,比如说是图书的购入,图书的借出,图书的归还等等。再者,图书馆的管理员,可以通过图书馆管理系统来通知给休息在家或者在外的工作人员。最后,图书馆工作人员:他们可以通过图书馆管理系统来接受通知没可以随时查询信息。2.系统功能需求2.1总体需求分析学生图书等业务方面数据库数据库导入信息信息更新业务通知通知业务查询图书馆管理系统图书馆工作人员图书馆管理人员面对大量繁杂的图书馆管理,分类,查询与借还工作,迫切的需要通过计算机来帮助解决,介绍图书馆管理人员的工作量。信捷图书馆管理系统采用符合有关国际标准,具有良好的开放性和兼容性的计算机,外部设备,操作系统及应用软件,达到和办公自动化网络的连接,实现远程管理,异地续借等功能。“图书借阅管理系统”需要具有界面友好,功能强大,使用方便,安全可靠等优点。通过图书馆管理工作人员对图书馆管理系统的理解:1,图书馆管理系统需要有能够及时地查询书库中图书的库存量,以便及时准确地为学生服务,提供借阅信息,但是不能更改数据,无信息处理权,即可以打印清单,浏览数据等,管理权限由系统管理员掌握分配。这个也是图书馆的总体需求。2,图书馆各项数据信息必须保证安全性和完整性,网络系统设有通信,程序,网络三级权限和口令管理,确保系统的安全。这个是对数据的安全考虑的。3,系统管理员根据市场图书行情定时的整理系统数据库,对图书的借阅情况,学生的管理情况,书库的增减等均可由计算机执行,并将运行结果归档。这个是从数据的整理角度考虑。详细调查后,可以对系统管理业务的流程进行详细的描述,如下图:图书馆管理系统的管理流程图注:在这个图中应该还需要学生信息查询,而这个查询系统可以作为外系统使用,即作为图书馆管理系统的子系统:图书信息查询和学生信息查询共同组成一个信息查询子系统2.2详细需求分析对于图书馆管理系统,由于基于现在硬件的限制,学校设施的限制,图书馆还没有达到全部自动化的程度,因而针对于现在学校的基本情况,对图书馆管理系统的模块可分成:两大类和7模块:一,管理系统:1.1基础信息设置;1.2购入新书;1.3学生借书;1.4学生还书;1.5图书注销;二,查询系统:2.1学生信息查询;2.2图书信息查询;这些模块可由下图看出:⑴.基础信息维护子系统该模块主要是用于对图书馆信息,书籍信息,常用词库等项目进行初始化设置,这些设置一般不会轻易的更改,所包含的功能模块如下图:基础信息维护子系统图书馆信息系统参数设置书架设置管理员设置图书词库设置图书馆管理系统学生还书管理系统图书注销学生借书学生信息查询查询系统购入新书图书信息查询基础信息设置图书馆信息;主要勇于设置本图书馆的基础信息,包括图书馆的名称,馆长,负责人,电话,说明等等;系统参数设置:主要用于设置系统运行所需的参数,包括办证费用,证件有效期,图书超期罚款金额,期刊超期罚款金额等等;书架设置:主要用于设置书架的基础信息,内容包括书架编号,书架名称等等;管理员设置:主要勇于设置使用的人员及权限;图书期刊词库设置:主要用于设置系统常用的词库,内容包括供应商,分级,附件,尺寸,语系,印刷等等信息的预先设定数值;⑵.登陆图书馆管理系统需要安全性的保证,需要管理员才能对系统进行管理⑶.入库管理购入新书时候需要为该书编制入库单。入库单内容应该包括图书分类目录号,书号,作者,价格,数量,和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到现在为止,购入此种图书的数量);⑷.学生借书学生借书需要使用一卡通,系统首先要检查一卡通是否有效,若无效,则拒绝借书;若有效,则进一步检查概学生已经借阅的图书是否超过最大的限制数,若已经超了,则拒绝借书,否则接受借书,同时要将图书分类目录号,学生号,和借阅日期等自动写入学生借书文件。⑸.学生还书对于学生还书,系统会自动根据学生号和图书分类号,从借书文件中读出与该图书相关的借阅记录,表明还书日期,再写回结束文件中,若逾期,那么处以相应的罚款。⑹.图书注销通过工作人员填写的注销单,系统来修改图书目录文件中的库存总量。⑺.图书查询直接通过系统即可查询信息,不需要进行身份验证,面向所有的用户。⑻.学生信息查询直接通过系统即可查询信息,不需要进行身份验证,面向所有的用户。3.系统数据需求3.1图书馆管理系统的数据流程图如下图:顶层流程图:用户图书馆管理系统输入数据显示器输出数据系统时钟当前日期第0层图:图书馆管理人员1登陆信息验证用户名和密码密码错误信息管理员表2处理管理请求数据输入管理请求数据显示器显示系统时钟当前日期用户3处理查询请求数据输入查询信息查询结果当前日期第一层图:(1):登陆子系统图书馆管理人员1.1密码验证用户名和密码登陆错误信息管理员表1.2验证权限用户名1.3显示可用的控件和界面权限显示器显示(2)管理子系统图书馆管理人员2.1入库管理输入购入新书数据显示器非法信息退货单2.2处理学生借书输入图书字段和学生字段罚款单非法信息接受借书2.3处理学生还书输入图书字段非法信息欠款金额信息还书成功2.4图书注销输入注销图书字段非法信息注销成功系统时钟当前日期罚款单图书目录文件学生文件借书文件罚款单入库单图书目录文件当前日期当前日期当前日期(3)查询子系统图书馆管理人员|学生3.1学生信息查询输入学生查询关键字显示器学生信息学生文件借书文件3.2图书信息查询输入图书查询关键字图书信息图书目录文件注:图书馆管理系统总体上分两大模块:管理和查询。管理模块:对象是图书馆的馆内人员。学生只能作为查询子系统的对象。由于现在都实行了一卡通系统,所以需要从教务处将学生的数据导入学生文件中。查询系统:有两个对象:图书馆管理人员和学生;两个实体查询的信息可以是一样的3.2图书馆管理系统E-R图3.3数据词典1,数据流项目1:数据流名:管理工作请求单说明:管理请求单是系统根据工作人员或者管理人员的输入情况自动形成的,通过这个单子,来决定系统的行为:进行一些管理工作。数据流来源:图书馆管理工作人员。数据流去向:图书馆管理系统数据流定义:管理工作请求单=[购入新书|学生借书|学生还书|图书注销]2:数据流名:查询信息请求单图6图书馆管理系统E-R图学生文件PK学生编号条形码姓名性别FK1类型出生日期有效证件证件号码联系方法登记日期有限期至操作员备注图书借阅次数是否挂失学生类型类型图书册数续借次数限制图书图书目录文件PK图书编号条形码书名FK1类型编号作者译者ISBN出版社价格书架名称现存量库存总量入库时间操作员简介借出次数是否注销图书类型PK类型编号类型名称可借天数借书文件PK借阅编号FK2图书编号FK1学生编号借阅时间应还时间续借次数操作员状态罚款单PK借阅编号FK2图书编号FK1学生编号学生条形码罚款日前应罚金额实收金额是否交款备注说明:查询信息请求单是系统根据工作人员或者管理人员或者学生的输入情况自动形成的,通过这个单子,来决定系统的行为:进行一些查询工作。数据流来源:图书馆管理工作人员,学生。数据流去向:图书馆管理系统数据流定义:查询信息请求单=[查询学生请求信息|查询图书请求信息]3:数据流名:图书信息说明:图书信息是系统经过图书信息查询之后产生的一组信息;数据流来源:图书馆管理系统。数据流去向:图书馆管理人员数据流定义:图书信息=图书编号+ISBN+作者+出版社+价格+书架号+{借阅情况}4:数据流名:学生信息说明:学生信息是系统经过学生信息查询之后产生的一组信息;数据流来源:图书馆管理系统。数据流去向:图书馆管理人员和学生数据流定义:学生信息=学生编号+姓名+性别+有效证件号码+联系方式+{借书情况}5:数据流名:提示信息说明:提示信息是系统根据一些非法操作,非法请求信息,或者合理操作,合理信息的来提示操作者对系统的操作情况;数据流来源:图书馆管理系统。数据流去向:图书馆管理人员和学生6:数据流名:当前日期说明:当前日期是因为系统对人员操作某信息的跟踪的需要。以便查询或维护。数据流来源:系统时钟。数据流去向:图书馆管理系统数据流定义:当前日期=年/月/日/小时/分/秒;7:数据流名:罚款单说明:罚款单是系统经过根据学生的违规情况而产生的信息;数据流来源:图书馆管理系统。数据流去向:学生数据流定义:罚款单=罚款编号+图书编号+学生编号+罚款金额+罚款日期+备注;2,文件条目1:数据文件名:学生文件简述:存放的是学生基础信息数据。数据文件组成:表单形式存储文件内容:学生文件=学号+姓名+性别+出生日期+有效证件号码+联系方式+登记日期+有效期至;存储方式:以学生学号为记录关键字升序排列2:数据文件名:借书文件简述:存放的是借书信息数据。数据文件组成:表单形式存储文件内容:借书文件=图书编号+学生编号+借阅日期+应还日期+状态存储方式:以图书编号和学生编号为记录关键字升序排列3:数据文件名:入库单简述:存放的是入库新书的信息数据。数据文件组成:表单形式存储文件内容:入库单=新书编号+书名+ISBN+数量+入库时间;存储方式:以新书编号为记录关键字升序排列4:数据文件名:图书目录文件简述:存放的是图书档案的信息数据。数据文件组成:表单形式存储文件内容:图书目录文件=图书编号+条形码+书名+类型+作者+译者+ISBN+出版社+价格+页码+书架名称+现存量+库存总量+入库时间+操作员+简介+借出次数+是否注销;存储方式:以图书编号为记录关键字升序排列5:数据文件名:图书馆信息文件简述:存放的是图书馆的基础信息数据。数据文件组成:文档形式存储文件内容:图书馆信息文件=图书馆名称+图书馆馆长+负责人+电话+说明;6:数据文件名:书架设置信息文件简述:存放的是设置书架的基础信息数据。数据文件组成:文档形式存储文件内容:书架设置信息文件=书架编号+书架名称;7:数据文件名:图书词库设置文件简述:存放的是系统常有的词库数据。数据文件组成:文档形式存储文件内容:图书词库设置文件=供应商+分级+附件+尺寸+语系+印刷;8:数据文件名:系统参数设置信息文件简述:存放的是系统参数设置信息数据。数据文件组成:文档形式存储文件内容:系统参数设置信息文件=办证费用+证件有效期+图书超期罚款金额;3,加工说明1:加工1.2:处理学生借书加工逻辑:BEGIN读取学生借书请求信息和当前日期以及学生文件,图书目录文件IF在学生文件中找不到该学生或者图书目录文件中显示该图书属于注销图书或者该图书属于已借THEN输出非法借书请求(相当于拒绝借书)ELSE输出借书成功并将借书信息写入借书文件END2:加工1.3:处理学生还书加工逻辑:BEGIN读取学生还书请求信息,当前日期,学生文件,图书目录文件和借书文件IF(在图书目录文找到该图书是未借出或者该图书是挂失)THEN输出非法还书请求ELSEIF在借书文件中找到到当日为止,该书超期THEN罚款ELSE输出还书成功并且更新借书文件END3:加工1.4:处理图书