




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程课程设计软件工程课程设计 图书图书管理系管理系统统 任任务务 人人员员 1 软软件定件定义阶义阶段段 ( (1) )问题问题定定义义 ( (2)可行性分析)可行性分析 ( (3)需求分析)需求分析 2 软软件开件开发阶发阶段段 ( (4)概要)概要设计设计 ( (5) )详细设计详细设计 ( (6) )编码编码和和单单元元测试测试 3 软软件件维护阶维护阶段段 ( (7) )软软件件维护维护 1 软软件定件定义阶义阶段段 (1)问题定义 基本任务:理解问题 阶段成果:系统目标与范围说明书 问题问题理解理解: 图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产 生的借书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信 息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。管理图 书采用传统的管理方法:图书管理员在办理借书登记、查询读者借书记录时,管 理人员必须在借书记录上一个个去查找,而要找到借书记录并删除该记录是件 很麻烦的事情。每当新书入库时,图书管理员既要填写新书入库卡片,又要填 写新书入库帐目,不仅工作量大,而且,在新书入库后要经历较长的时间方能 借出。 所以,为提高图书馆管理的效率,减少图书管理员的工作负担,有必要开发一 个小型图书馆管理软件来对图书实施有效管理 现代图书馆的图书管理早就 进化信息化阶段了,但是从软件市场购买的一些信息管理软件通常是通用版的, 不可能适应所有图书馆管理中的情况,功能不能扩充,这样不仅工作效率低下, 浪费人力,财力,而且在一些中间环节还造成信息丢失,出错。以下是针对某某 图书馆的图书管理现状,在调研基础上开发出来的图书馆信息管理系统。在下 面的各章中将以开发图书馆管理系统为例,谈谈其开发过程和所涉及到的问题 及解决方法。 系系统统目目标标(基本功能如下): (1) 以自动化、系统化、高效管理代替分散、重复操作。 (2) 开发图书馆管理系统,提供更好服务效益和提高现代化管理水平。 (3) 建立图书馆管理系统,提高读者的自律性,促进读者保管并及时归还 图书。 (4) 减轻图书馆管理员的负担,节省人力物力开支。 范范围说围说明明: (1)能够及时了解学校图书室的藏书情况和师生的借书情况 (2)能够快捷地添加,将有关资料信息录入数据库,修改,查询图书分类信 息和图书信息,包括单条件查询和多条件查询 (3)能及时掌握图书室的藏书数量及种类,各个学科的图书数量,迅速盘点 图书库存。 (4)图书的借出,归还,续借,挂失,催还手续简便,效率高。 (5)功能齐全,安全稳定,可靠性高,操作简便,使用灵活,实用性强, 准 确率高,具有海量存储能力和快速交换速度,自动及时进行数据备份。 (6) 用户的权限设置:不同用户的使用权限不同。 ( (2)可行性分析(研究)可行性分析(研究) 基本任务:理解工作范围 阶段成果:项目计划说明书 2.1 可靠性和安全性需求:可靠性和安全性需求: 由于图书管理系统的图书量会非常大,所有在对这些图书导入和查询时要 保证速度。在图书借阅过程中又要保证事务的完整性。对于整个系统,需要完 整的权限控制,防止某些人恶意的攻击系统,修改原始记录。同时对于数据库 中的数据需要定时备份,防止系统数据丢失。 所建议的系统的开发目标应考虑以下几个方面: (1)系统需要操作方便,方便管理员对整个系统的管理和读者借阅。 (2)系统需要提供综合查询系统,方便图书的查询。 (3)系统需要良好的扩展性,方便功能扩展和性能扩展。 (4)系统需要较好的安全性和灾难恢复机制。 2.2 硬件、硬件、软软件、运行件、运行环环境和开境和开发环发环境方面的条件和限制境方面的条件和限制 (1)硬件资源 服务器:工作站或小型机 网络设备:网络交换机,网卡,网线 图书条码打印和扫描机 打印机 2 软件资源 服务器端软件选择的具体说明: 操作系统:Windows 2007 Server 或 Windows XP。 数据库管理系统:SQL Server。 软件平台:VC+ 客户端软件选择的具体说明:web 浏览器。 通过对该图书馆的各个方面进行了具体的了解之后,现对该单位开发图书 管理系统的可行性进行分析。 技术上可行:该系统所需硬件设备,市场上销售且价格较低,甚至可以使用 原有的设备,软件上,操作系统采用 Windows 系列操作系统,数据库管理系统 采用 VC,这些软件在 MIS(管理信息系统)管理信息系统)开发中已被大量应用,技术上都比较 成熟。因此在技术上是可行的。 经济上可行:由于学校急需采用计算机来进行图书馆的管理,因此对开发 图书管理系统大力支持,开发经费没有问题。 操作上可行:该学校的图书馆有很多的管理体制,每位借书人均有借书证, 同时图书馆还为每位借书人建立了档案。因此操作上可行。另外,图书馆管理 人员对开发该系统也是大力支持的,同时制定了培训计划,并进行了实施 MIS 的物质准备和工作准备。 社会可行性:首先是合法的,其次既方便于学校管理员的管理,又有利于学 生的借阅和查找 综上所述,开发图书管理系统在技术上、经济上、操作上都是可行的。 2.3 处处理流程和数据流程(流理流程和数据流程(流图图) ) 基基本本信信息息 读读者者管管理理 图图书书管管理理 图图书书管管理理 员员 读读者者信信息息存存 储储 借借阅阅图图书书信信 息息 图图书书信信息息图图书书报报废废图图书书条条形形 处处理理 图图书书统统计计 图图书书借借阅阅 图图书书归归还还 借借阅阅信信息息 查查阅阅 逾逾期期未未还还 登登记记 数据字典卡片数据字典卡片 管理管理员员信息信息 图书图书信息信息 读读者信息者信息 借借书书数量数量 名字:* 别名:* 作者:* 描述:唯一的标示书籍所处状态 定义:图书=图书条形+图书报废信息+是否被 借阅+价格+出版社 位置:图书管理 名字:* 别名:* 密码:* 描述:处理图书条形,图书报废等信息,并 用计算机管理用户借书的日期,数量,以及 是否罚款 定义:管理员的基本信息 位置:图书管理员 ( (3)需求分析)需求分析 基本任基本任务务:定:定义义用用户户需求需求 阶阶段成果:需求段成果:需求规规格格说说明明书书 3.1 定定义义用用户户需求需求 3.1.1 系系统统的性能需求的性能需求 图书管理系统要求系统需要具备以下几个主要特性: (1)多样性: 图书管理系统在设计时必须遵循的一个重要原则,就是以用 户为系统设计的中心。网络的发展大大降低了信息咨询的成本,用户面临更多 的选择,所以,图书管理系统除了降低成本以外,还必须在皮肤,功能的多样性 上下工夫,才能够得到用户的认可。具体来说,应用系统应能实现用户特定的 需求,操作界面友好、方便,功能设置符合用户的习惯和要求。 (2)易维护:管理员能够简单方便地管理系统,定义新的应用,并对系统进 行日常维护;随着图书馆信息的变更或增加、数据规模的增大,系统升级、维护 应易于操作;各子系统、功能模块的设计应具有良好的灵活性,保证在图书管理 系统建设过程中后期系统功能的实现不影响前期已投入使用的系统功能。 (3)安全性:系统应充分考虑信息、设备、运行和管理的安全性,建立完善 的多层次的安全保障体系,保证用户的个人信息等资料的数据安全。 (4)可扩展: 该系统的用户从事着各种行业,他们的需求各不相同,系统在 设计时应充分考虑到用户需求不断变化的需要,降低系统在扩展新的业务功能 名字:* 别名:* 描述:某人借书的数量 定义:读者借书数量=0数字8 位置:读者管理 名字:* 别名:* 密码:* 描述:记录用户借书的日期,数量,以及 是否罚款,书评等信息 定义:读者的基本信息 位置:读者管理 时的复杂度。 3.1.2 系系统统的数据需求的数据需求 (1)数据录入和处理的准确性和实时性 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不 正确和不可用,从而使系统的工作失去意义。数据的输入来源是用户的手工输 入。手工输入要通过系统界面上的安排系统具有容错性,并且对用户操作进行 实时的跟踪和错误提示。 在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以 保证迅速的处理数据。 (2)数据的一致性与完整性 由于图书的数据是共享的,所以如何保证这些数据的一致性,是系统必须 解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录 入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。 对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系 统应该拒绝该数据。 (3)数据的共享与独立性 整个系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计 和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而 通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。 3.1.3 普通用普通用户户功能需求功能需求 要设计一个良好的资料借阅管理系统,就必须首先明确该应用环境对系统 的要求。资料借阅管理系统的应用背景为:方便用户查询借阅图书。普通用户 是系统的服务对象,也是系统的主要参与者。一个资料借阅管理系统的好坏主 要是由普通用户来评判的。因此,该系统需满足以下几方面需求: 1. 图书管理:包括对图书的增加,注销,修改,查询。 2. 读者管理:包括对读者的增加,注销,修改,查询,续接。 读者 借阅 收费及 咨询 管理图书管理员 密码 1 1 1 1 N N N NM M N N 姓姓名名 密密码码 管管理理书书馆馆 名名 性性别别 性别 姓名 借书证号 借书量 书书名名 价价格格 是是否否被被借借 出出 条条形形号号 出出版版社社 3.1.4 管理管理员员功能需求功能需求 总总体功能体功能设计设计 系统要能实现如下功能: 登录系统:注销用户、系统退出。 管理:用户管理、图书管理、读者管理、借阅管理。 查询:图书查询、读者查询、借阅查询。 报表打印:所有图书、借出图书、库存图书、所有读者。 帮助:使用说明、关于。 (1) 可添加、注销、和更新图书信息 (2) 能处理借阅、续借和还书。 (3) 可以对过期未还书的读者进行罚款处理。 (4) 可以按图书编号精确查询,也可以按图书类别、图书名称及索书号进 行组合模糊查询。 (5) 可以按读者编号精确查询,也可以按读者姓名、所在系及所在专业信 息进行组合模糊查询。 (6) 可以统计图书借阅历史记录以及目前图书的借阅状况。 (7) 可以统计读者借阅历史记录以及目前读者的借阅情况。 (8) 可以进行软件登陆身份验证。 3.2 需求需求规规格格说说明明书书 根据范式理论和 E-R 图转换成关系模型的规则,上面的 E-R 图可转换为 3 个关系模式:图书(条形号、书名、出版社、借阅与否、价格);读者(借书证 号、姓名、性别、单位编号);借阅(借书证号、馆藏号、借阅时间),其中打下 划线的为码,这样就解决了插入、删除和数据冗余等问题。图 3.1 是整个的 ER 图 图 3.1 1. 图书实体的 E-R 图,如图 3.2 所示: 图 3.2 2.读者出版社实体关系的 E-R 图,如图 3.3 所示: 图 3.3 出版社 出版社号 出版社名 出版图书 图书编号 出版社号 书名 ISBN 号 图书编号 图书类别 出版社 借出次数 单价 借出数 作者 馆藏数量 图书 出版日期 3.图书、图书类别实体关系的 E-R 图,如图 3.4 所示: 图 3.4 4.读者实体的 E-R 的图,如图 3.5 所示: 图 3.5 5.读者、系别、专业实体关系的 E-R 图,如图 3.6 所示: 图 3.6 6.借书关系 E-R 的图,如图 3.7 所示: 读者 读者编号 总罚款数 现借阅数 可借阅数 专业 读者姓名 系别 性别 年龄 总借阅数 借书 读者图书 读者编号图书编号 借书日期还书日期 mn 还书否 图书类别 类别名 索书号 属于图书 图书编号 索书号 nm m 11n 属于读者 读者编号 系别号 系别 系名 系别号 包含 系别号 专业号 专业 专业号 专业名 属于 m n 读者编号专业号 图 3.7 7.还书关系的 E-R 图,如图 3.8 所示: 图 3.8 8.续借关系 E-R 图,如图 3.9 所示: 图 3.9 续借 读者图书 读者编号图书编号 借书日期还书日期 mn 还书否 还书 读者图书 读者编号图书编号 借书日期还书日期 mn 还书否 9.罚款实体的 E-R 图,如图 3.10 所示: 图 3.10 10. 管理员实体的 E-R 图,如图 3.11 所示: 图 3.11 2 软软件开件开发阶发阶段段 ( (4)概要)概要设计设计( (总总体体设计设计) ) 基本任基本任务务:建立:建立软软件件结结构构 阶阶段成果:段成果:总总体体设计说设计说明明书书 4.1 系系统统功能模功能模块块划分划分 4.1.1系统功能主要包含模块: 表 4.21 功能序号功能名称功能说明 罚款 读者图书 读者编号图书编号 罚款 mn 归还日期 管理员 用户名密码 1借阅管理包含用户的借书,还书,续借,借阅信息的查询 及修改 2图书管理包含对图书的增加,删除,修改,查询。 3当前借阅信息查询包含对用户借阅信息的查询 4图书在架状态查询包含对图书在架的信息查询 5读者信息管理对读者信息的增删改查。 一、系统主功能模块细化 1.新书入库模块:可用一个函数 insert_new_book(char book_num,char book_name,int number)来实现。形参分别为:书名, 书号,以及有多少本书要入 库,再根据要求将信息写入文件 boot.dat 中。 2.查询模块:可用一个函数 void find_book(char book_num)来实现。找到就 输出此书全部信息,找不到就输出查找失败信息。 3.借阅管理模块: (1)读者的信息可以在系统初始化时完成.即可用初始化函数 init_reader() 来实现对读者的初始化。因为读者初始化函数也只是在系统第一次运行的时候 执行一次,故也可以根据是否存在 reader.dat 文件来确定是否执行此函数。 (到 现在可以发现在系统初始化函数里,至少已经需要调用两个初始化函数了) (2)借书登记模块:可用一个函数 borrow_book(char reader_num,char book_num)来实现。在函数中要分别判断: a.该读者的编号是否已经存在,如果不存在,则提示错误。 b.该读者的借阅书是否已满(即最多只能借 1 本书)如果是,则提醒该 用户先去还书。 c.输出的书号对应的书是否存在,如果不存在,则提醒读者不存在此书。 借书过程完成后,则对读者信息里的借书信息写上所借书号,并修改 库存量。 (3)还书管理模块:可用一个函数 return_book(char reader_num,char book_num)来实现。在实现此函数时要判断: a.该读者的姓名是否已经存在,如果不存在,则提示错误。 b.该读者是否已经借阅此书。如果没有,则提示错误。 c.还书过程完成后,则对读者信息里的借书信息清零,并修改库存量。 3.输出图书和读者信息:可分别用模块 print_book()和 print_reader()来实现, 直接从 book.dat 文件和 reader.dat 文件中读取信息并输出。 4.退出系统:可用一个函数 exit()来实现。首先将信息保存到文件,释放动 态创建的内存空间,再退出此程序。 4.2 基本基本设计设计概念概念 4.2.1 处处理流程理流程图图例例说说明明 1.处理过程: 2.数据存储: 3.条件判断: 4.数据流:(单向) 5.数据流:(双向) 6.外部实体: 过程、模块 数据表 决策 实体 7.带有变动历史的数据存储: 二、系统主功能模块结构图: 4.2.2 图书图书管理系管理系统统的基本的基本设计设计概念和概念和处处理流程:理流程: 图书管理系统 新书入库 图书查询 借书登记 还书管理 输出图书信息 输出读者信息 退出系统 数据表 退出系统No 退出 No 编辑 管理操作 图书状态用户切换帮助 启动系统 登录 成功 显示主菜单 选择操作 选择项? Yes 显 示 界 面 No 修改删除 Yes 查找记录 显示记录 修改 删除 确认 更新库文件更新库文件 Yes Yes No 录入 输入记录 确认 更新库文件 退出 借阅 还书 系统总体结构图: 借阅办理流程图 界面登陆 文件 用户切换 关于 查询用户信息 图书管理 图书增加 图书信息修改 用户 选择图书 借书 图书在架状态 借阅信息 Book 图书借阅表 图书删除 读者信息管理 修改用户信息 图书在架状态查询图书在架信息查询 图 书 管 理 系 统 借书 还书 借阅信息查询 借阅办理 图书管理流程图 4.3 数据数据库库 4.3.1 索引索引 建立索引是加快查询速度的有效手段,数据库的每一个表建立了主键,主 键由一个或几个字段组成,每一个表都按主键建立了索引,部分表为了满足查 询和排序的需要,除建立主索引外,还建立了次索引。例如在查询时要用到“馆 藏号”、 “作者”、 “题名”等条件来查找图书,因此,在书目表上除了对主键“馆藏号” 建立了主索引外,也对“作者”、 “书名”等建立了次索引。 视图是从一个或 几个基本表导出的表,它是定义在基本表之上的,它是一个虚表,数据库中只 存放视图的定义,而不存放视图对应的数据,数据仍然存放在原来的基本表中。 通过定义视图,可以使用户眼中的数据库结构简单、清晰,并可以简化用户的 数据查询操作。由于本系统数据表较多,表中的字段多,为了简化对表的操作, 我们创建了图书_按书名查询、期刊_按刊名查询、期刊_按编辑部查询、借阅规 则查询、待还书查询、超期记录查询等 30 余个视图。 3.6 存储过程 存储 过程是一段经过编译的程序代码,存放在数据库服务器端。通过调用适当的存 储过程,可在服务器端处理大量数据,再将处理结果送到客户端。这样可减少 数据在网络上的传送,消除网络阻塞现象;例如:要查询某条记录,若该记录在 管理员 选择图书 增加 图书信息表 修改 删除 图书在架查询 表中的顺序号是 10000,不采用存储过程,服务器将从 1 至 10000 条记录数据 逐条送至客户端,采用存储过程后,由于过程是经过编译的并且是在本地,不 需要通过网络,因此能很快查出所需记录并将结果送到客户端,大大减少了网 上数据传输量。存储过程另一好处是可供不同的开发工具调用,如 PB、VC、ASP、Delphi 等开发工具均可调用。实际上调用同一存储过程完成的。 本系统建立了 60 多个存储过程,实现诸如借还书处理、新书入库统计、编目入 馆藏、读者统计、生成索书号等功能。 条形码的使用 条形码具有唯一性和一次输入后就可反复使用的优点,利 用条形码技术作为信息快速输入的手段可迅速且不易发生错误地处理图书管 理业务。本系统使用条形码作为图书和读者的标识,实现标识的唯一性。 使用条码后,能够使图书管理工作更加简单、快捷、不易出错。例如,当一本书 具有唯一条形码标识,每位读者也具有唯一条形码标识时,图书的借阅、查询 就十分便捷了。应用条形码取代了以往填写书袋卡、借书证,核对借阅时间等 繁琐的手工劳动。读者在借书时只要将借书证给工作人员,工作人员只需登录 借书系统,用条形码阅读器扫描读者借书证上的条形码,屏幕就会显示出该读 者的信息,包括读者姓名、单位、可借几本书、已借几本书、是否过期、有无罚 款等。如可以借书,工作人员只需用条形码阅读器扫描该读者所需借的书上的 条形码符号后,该书的书名和条形码等信息都从数据库中调出显示在屏幕上, 自动记录在该读者的借阅档案中,借书工作即告完成。一般借一本书仅需 1 至 2 秒钟。操作完后,计算机自动地将该借阅者和借阅的图书号码输入对应数据 库中,并自动提示借阅期限。 4.2.2 数据数据库逻辑结库逻辑结构构设计设计 本系统使用 SQL Server 2008 将数据划分为图书信息表、图书类别表、图 书与图书类别关系表、出版社信息表、图书出版社信息表、读者信息表、系别信 息表、读者与系别关系表、专业信息别、读者与专业关系表、系别与专业信息表、 图书借阅信息表、图书流通信息表、罚款信息统计表和管理员信息表 15 个部 分。下面将各表中的字段进行以下简单介绍: 1. 图书信息表 图书信息表是用来存储图书信息的表,由图书编号、ISBN 号、书名、作者 和单价等。其中图书编号为主键。 表 3.1 图书信息表 2. 图书类别表 图书类别表,记录图书类别。其中索书号是主键。 表 3.2 图书类别表 中文描述 类型长度主键否可否为空 图书编号 varchar50是否 ISBN 号Char18否否 书名 varchar50否否 作者varchar50否否 单价 Int4否可 中文描述 类型长度主键否可否为空 3. 图书图书类别关系表 记录图书与图书类编的对应关系,其中图书编号与索书号是主键。 表 3.3 图书图书类别关系表 4. 出版社信息表 记录出版社信息,包括出版社名称与出版社编号。其中出版社号为主键。 表 3.4 出版社信息表 5. 图 书 /* 书号采用 10 位编码最后 1 位为字符串结束 标志(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 茶山茶叶种植基地租赁与茶叶种植基地旅游开发合同
- 精准定位仓单质押融资服务合同
- 建筑工地安全防护终止服务合同书
- 便利店品牌直营店租赁及品牌维护合同
- Brand KPIs for hotels:Hyatt Regency in the United States-英文培训课件2025.5
- 2025年顾客关系管理与销售技巧考试问答及答案
- 2025年创新思维能力考试试卷及答案探讨
- 2025年心理调适与危机干预能力测试卷及答案
- 内科系统常见疾病护理常规
- 车辆租赁公司试驾服务条款合同
- 2024低空经济场景白皮书
- 医疗废物管理的相关法律法规
- 脑机接口课件
- 《“无废商业街区(商圈)”建设技术规范》编制说明
- 光伏项目运维服务承包合同5篇
- 《汽车基础知识培训》课件
- DB14-T 2855-2023 扁穗冰草种子生产技术规程
- 游泳池紧急救援管理制度
- 胰岛素皮下注射标准解读
- 教研组工作汇报课件
- 服饰搭配女装课程设计
评论
0/150
提交评论