
~
。
;
—
一、引言
编写目的
为完善图书管理系统软件的开发途径及应用方法,以提高开发效率,使应用更为方便。根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《图书管理系统》软件的功能划分、数据结构、软件总体结构有了进一步的认识。我们把讨论的结果记录下来,作为概要设计说明书,并作为进一步详细设计软件的基础。
背景
说明:
a.\
b.待开发软件系统的名称:图书管理系统
c.列出此项目的任务提出者是本小组成员,开发者也为本小组成员、用户是学校图书馆。
定义
开发(develop):除了单纯的开发活动外,还包括维护活动。
项目(project):向顾客交付的最终的全部产品,包括程序及各种文档,以及开发活动所需资源经费等各种信息。
项目开发计划(project development plan):把项目与过程联系起来的计划方案。
产品生命周期(product life cycle):产品从构思到不可在使用的持续时间。
参考资料
¥
《软件工程》 —— 张海藩 编著 清华大学出版社
《数据库系统概论》 —— 萨师煊 王 珊 编著 高等教育出版社
二 总体设计
需求规定
主要输入输出项目:
图书信息:(图书编号、图书名称、图书ISBN号、作者、出版社、类型、价格、库存量、副本总量、图书总数)
学生信息:(学生编号、学生姓名、性别、入校时间、毕业时间)
借书登记:(借书编号、学生编号、结束时间、归还时间、是否归还)
【
还书登记:(图书编号、图书名称、归还时间、作者、出版社、
运行环境
WINDOWSXP操作系统,OFFICE软件,ORACLE 数据库,浏览器等。
基本设计概念和处理流程
该系统的主程序流程图如下图所示:
功能需求与程序的关系
本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
| . | 创建 | 查找 | 修改 | 删除 |
| 图书信息管理(管理员) | √ | √ | > √ | √ |
| 学生信息管理(管理员) | √ | √ | √ | √ |
| 学生信息查询(学生) | ~ | √ | ||
| 查询图书信息(学生) | √ | } | ||
| 归还图书(管理员) | √ | √ | √ | √ |
| 借阅图书(管理员) | √ | " √ | √ | √ |
管理员登录:图书管理员需要手动输入登录信息验证身份登录系统后方能进行操作。
图书入库:对于新购图书,管理员需要手动对其进行分类进行编号,并把图书基本信息录入计算机。
修改图书信息:学生借阅图书时,管理员需要对该图书进行登记,记录被借阅图书信息和学生信息。当学生归还图书时,同样需要对图书信息进行修改。
-
三 接口设计
用户接口
向用户提供命令 软件回答对应信息
操作员登记 添加用户
学生登记 添加学生信息
学生查询 学生信息查询
图书登记 管理员登记图书信息
借阅登记 管理员登记学生的借阅信息
'
借阅查询 管理员查询学生的借阅情况
外部接口
接口 传递信息
软件接口: 与数据库接口 图书信息 学生信息
内部接口
| 接口 | 传递信息 | |
| , 图书信息管理 | 录入 | 图书信息:(图书编号、图书名称、图书ISBN号、作者、出版社、类型、价格、库存量、副本总量、图书总数 ) |
| 图书信息管理 | 修改 | 图书信息:(图书编号、图书名称、图书ISBN号、作者、出版社、类型、价格、库存量、副本总量、图书总数 ) |
| 学生信息管理 | 添加 | * 学生信息:(学生编号、学生姓名、性别、入校时间、毕业时间) |
| 学生信息管理 | 修改 | 学生信息:(学生编号、学生姓名、性别、入校时间、毕业时间) |
| 借书登记 | 登记借阅图书以及学生信息 | 借书登记:(借书编号、学生编号、结束时间、归还时间、是否归还) |
| 还书登记 | ¥ 修改借书登记的信息 | 还书登记:(图书编号、图书名称、归还时间、作者、出版社、) |
运行模块组合
对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,以及每种运行所历经的内部模块和支持软件。
运行控制
| 运行控制 | ; 控制方法 |
| 学生信息管理 | 管理员对学生信心进行管理,包括增加学生用户,修改用户信息,以及删除学生信息 |
| 学生信息查询 | 用户可以对学生的信息进行查询 |
| 图书信息登记 | 录入新的图书信息,以及对已有图书的各项信息进行修改,查询,删除等 |
| 图书信息查询 | % 用户对所要借阅的图书信息进行查询 |
| 借阅登记 | 管理员登记学生所借图书以及学生本人的信息 |
| 借阅查询 | 管理员对学生或者所对应图书的信息进行查询 |
检索任务所需时间:<3秒
\
执行任务所需时间:<3秒
五 系统数据结构设计
逻辑结构设计要点
1.图书信息表(tBook),其字段列表如表5-1-1所示。
表5-1-1 图书信息表的结构
| 序号 | 字段名称 | 字段说明 | & 类型 | 位数 | 属性 | 备注 |
| 1 | cBooksID | 图书编号 | 文本 | ] 7 | 必须非空 | |
| 2 | cBooksName | 图书名称 | 文本 | 20 | 、 必须非空 | |
| 3 | cBooksISBN | 图书ISBN号 | 文本 | 15 | 可为空 | 。 |
| 4 | cBooksAuthor | 图书作者 | 文本 | 10 | 可为空 | |
| ' 5 | cBooksPublisher | 图书出版社 | 文本 | 20 | 可为空 | |
| 6 | : cBooksType | 图书类型 | 文本 | 16 | 可为空 | |
| 7 | smBooksPrice | ¥ 图书价格 | 货币 | 可为空 | ||
| 8 | iBooksStoreQuan | 图书库存量 | 。 整数 | 可为空 | ||
| 9 | iBooksLeftQuant | 图书副本数量 | 整数 | < | 可为空 | |
| 10 | iBooksTotalQuan | 图书总数 | 整数 | 可为空 |
表5-1-2 图书借阅登记表的结构
| 序号 | 字段名称 | 字段说明 | · 类型 | 位数 | 属性 | 备注 |
| 1 | cBorrowID | 借书编号 | 文本 | ~ 6 | 必须非空 | |
| 2 | cVipID | 学生编号 | 文本 | 6 | ¥ 必须非空 | |
| 3 | cBooksID | 图书编号 | 文本 | 7 | 必须非空 | @ |
| 4 | cBorrwTime | 借书时间 | 时间日期 | 可为空 | ||
| 《 5 | cReturnTime | 还书时间 | 时间日期 | 可为空 | ||
| 6 | ] cReturn | 是否归还 | 文本 | 1 | 可为空 |
表5-1-3 图书归还登记表的结构
| 序号 | 字段名称 | 字段说明 | 类型 | 位数 | 属性 | 备注 |
| ( 1 | cBorrowID | 借书编号 | 文本 | 6 | 必须非空 | |
| 2 | @ cVipID | 学生编号 | 文本 | 6 | 必须非空 | |
| 3 | cBooksID | | 图书编号 | 文本 | 7 | 必须非空 | |
| 4 | cBorrwTime | 借书时间 | 、 时间日期 | 可为空 | ||
| 5 | cReturnTime | 还书时间 | 时间日期 | 》 | 必须非空 | |
| 6 | cReturn | 是否归还 | 文本 | 1 | & 必须非空 | |
| 7 | cNoReturn | 归还异常 | 文本 | 8 | 可为空 | > |
表5-1-4 学生信息表的结构
| 序号 | 字段名称 | 字段说明 | 类型 | [ 位数 | 属性 | 备注 |
| 1 | cVipID | 学生编号 | 文本 | 6 | ( 必须非空 | |
| 2 | cVipName | 学生姓名 | 文本 | 10 | 必须非空 | ' |
| 4 | cVipSex | 学生性别 | 文本 | 1 | 可为空 | |
| 》 5 | vipAddTime | 学生入学时间 | 时间日期 | 必须非空 | ||
| 6 | . vipEndTime | 学生毕业时间 | 时间日期 | 必须非空 |
{
表5-1-5 管理员信息表的结构
| 序号 | 字段名称 | 字段说明 | 类型 | 位数 | 属性 | 备注 |
| @ 1 | cOperatorID | 管理员编号 | 文本 | 5 | 必须非空 | |
| 2 | 】 cOperatorName | 管理员姓名 | 文本 | 10 | 必须非空 | |
| 3 | cOperatorPassword | 密码 | 文本 | 6 | 必须非空 | |
| 4 | cOperatorAddTime | 管理员加入时间 | 时间日期 | 10 | 必须非空 |
主模块:连接数据库
学生管理模块:
学生信息管理模块:管理员输入帐号密码进入系统后可以对学生信息进行管理,包括修改,插入,删除等。
学生信息查询模块:管理员可以对学生信息进行查询,学生输入学生的账号密码后,成功登陆后,学生可以对其信息进行查询,输入学生编号后,对应输出学生姓名,性别,入校时间,毕业时间等。
图书管理模块:
图书信息登记模块:管理员对图书信息进行登记,输入相应的图书信息,如图书书名,作者,出版社。单价等信息。
图书信息查询模块:学生和管理员都可以进行此操作,通过查询数据库,匹配要查找的图书信息,包括读入图书号,图书作者,图书出版社 ,图书单价等基本信息。
借阅管理模块:
借阅登记模块:管理员对图书的借阅情况进行登记,记录借书者的学生编号,学生姓名等学生信息以及图书编号,图书名称,作者,出版社等图书信息,并修改图书状态。
借阅查询模块:管理员和学生都可以对图书的借阅情况进行查询,输入读者号,对应输出学生姓名,性别,入校时间,毕业时间。输入图书号,对应输出图书书名,图书作者,图书出版社,图书单价,图书状态。
归还管理模块:
读入图书编号,对应输出借录表中的学生编号,借书时间,应归还时间等,修改图书状态,删除借录表中的学生编号,图书编号,借书时间等信息。
六 系统出错处理设计
出错信息
| 出错的位置 | 出错的原因 | 提示信息 |
| 用户名 | 输入数据库中不存在的用户名 | 用户不存在 |
| 用户名密码 | 输入的密码不正确 | 输入的密码不正确,请重新检查密码 |
| 添加用户 | 输入已存在的用户信息 | 用户已存在 |
| 添加信息 | 添加信息必填信息不完整 | 信息必须完整 |
| 普通用户操作权限 | 使用管理员的 | 你没有该权限 |
补救措施
故障出现后可能采取的变通措施,包括:
a.后备技术说明准备采用的后备技术,当原始系统数据万一丢失时启用的副本的建立和启动的技术;
b.降效技术说明准备采用的后备技术,使用另一个效率稍低的系统或方法来求得所需结果的某些部分,例如一个自动系统的降效技术可以是手工操作和数据的人工记录;
c.恢复及再启动技术说明将使用的恢复再启动技术,使软件从故障点恢复执行或使软件从头开始重新运行的方法。
