温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
05
图书
管理
系统
体系结构
设计
说明书
大连东软信息学院项目文档
项目文档 图书管理系统概要设计说明书
姓 名 张三
学 院 大连东软信息学院
专 业 计算机科学与技术
指导教师 李四 讲师
备 注
2012 年 5 月2日
大连东软信息学院项目文档 图书管理系统概要设计说明书
1 总体设计
1.1 软件功能层次图
图书管理系统的功能层次如图1所示。
图1 图书管理系统的功能层次图
1.2 软件体系结构
图书管理系统的核心是对图书信息的维护与管理,是以数据为中心【问题1】请通过网络查询,给出以数据为中心的体系结构的解释说明。
的体系结构,依靠数据联通各个部分并使之协调工作。
图2给出了图书管理系统对应的体系结构示意图。
图2 图书管理体系结构示意图
根据需求规格说明书中根据系统安全性的需要,增加了用户身份验证的环节。对关联图进行细化和修改,形成如图3所示整理后的数据流图。
图3 图书管理系统整理后的关联图
从软件实现的整体布局考虑增加了系统初始化模块和菜单显示模块,用以完成系统运行环境的搭建。图4是对应于图3调整后的软件结构图。
图4 图书管理系统层软件结构图
1.3 技术路线
按照客户的要求,图书管理系统要求运用结构化语言--C语言进行系统的开发,实现控制台风格程序的开发。结构化语言的突出特点是认为一个程序、一组程序或者一组系统无非是由一组功能操作来构成的,并进而吸取了结构化分析的“黑盒子”的概念。其最大的好处就是极大的增加了代码的复用能力。它的主要表示方法是一种分层次的结构图。它层次清晰,便于按模块化方式组织程序,易于调试和维护。
C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。
2 读者服务子系统/模块设计
图书管理系统中读者服务部分的核心是为读者提供图书的借阅和归还服务。主要是完成读者提供借书证,系统根据借阅规则进行验证,符合借阅条件的则准予借阅;读者携带欲归还图书,在系统检查是否超期后,将归还图书收入库中,否则根据超期规则开出罚款单。
对应的数据流图整理后如图5所示。
图5 整理后的读者服务数据流图
其对应的软件结构图如图6所示。【问题2】
请根据给出的数据流图绘制出对应的软件结构图。
图6读者服务模块的软件结构图
2.1 借阅管理/新借模块
2.1.1 功能描述
读者借阅图书时,图书管理员先输入读者的借书证号,系统验证借书证的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。然后输入要借阅的书号,系统查阅并显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅记录,并修改可借阅图书的数量。
2.1.2 性能
可支持的最大用户数:无限制;
可支持的最大并发用户数:无限制;
吞吐量:只受到网络带宽的限制,系统本身无限制;
响应速度:只受到网络带宽的限制,系统本身无限制。
2.1.3 模块结构【问题3】
请重新整理相应模块的数据流图,绘制出其对应的软件结构图。
请注意自己进行图形的编号。
2.1.4 子模块接口设计【问题4】
请将对应模块的功能主界面原型绘制出来。
请自己进行图形的编号。
2.2 借阅管理/续借模块
2.1.1 功能描述
图书管理员可以为需要续借的读者办理续借手续。借出的图书可以续借一次,续借的期限是在当前时间基础上向后延续30天。
2.1.2 性能【问题5】请自行填写。
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.3 归还管理模块
2.1.1 功能描述
归还图书时,输入读者借书证号和图书号(或丢失标记号),系统验证是否有此借阅记录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。然后提交还书请求,系统接受后删除借阅记录,登记并修改可借阅图书的数量。
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.4 查询统计/图书信息查询模块
2.1.1 功能描述
图书管理员或读者可以对图书的基本信息进行查询。查询条件包括书名、出版社、出版时间、ISBN。用户可以模糊查询,也可以精确查询。
图书信息查询还可以根据出版时间的先后统计最新图书;根据图书被借次数的高低进行借阅排行。
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.5 查询统计/读者信息查询模块
2.1.1 功能描述
图书管理员可以查询读者的相关信息。根据指定提前量(天数)查询应还图书及读者信息;通过指定时间范围查询读者的借阅记录;也可以查询指定读者的借阅记录。
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.6 账户管理/办理新证模块
2.1.1 功能描述
管理员要为每个读者建立读者账户,并给读者发放不同类别的借书证(借书证可提供卡号、读者姓名、已借图书数量、系别、读者类别等个人信息),账户内存储读者的个人信息。也可以为丢失借书证的读者办理借书证或做挂失处理。
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.7 账户管理/挂失模块【问题6】
请自行补充挂失模块的功能描述。
2.1.1 功能描述
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
2.8 账户管理/丢失重办模块
2.1.1 功能描述
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
3 文献建设子系统/模块设计
3.1 图书管理/新增图书
2.1.1 功能描述
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
3.2 图书管理/删除图书
2.1.1 功能描述
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
3.3 图书管理/修改图书
2.1.1 功能描述
2.1.2 性能【同问题5】
可支持的最大用户数: ;
可支持的最大并发用户数: ;
吞吐量: ;
响应速度: 。
2.1.3 模块结构【同问题3】
2.1.4 子模块接口设计【同问题4】
3.4 图书管理/查询图书
(功能同2.4节和2.5节)
3.5 图书类别管理/新增类别
3.6 图书类别管理/删除类别
3.7 图书类别管理/更改类别
4 系统维护子系统/模块设计
4.1 权限管理/模块1
4.2 数据备份/模块2
4.3 期限设定/模块3
4.4 系别维护/模块4
5 数据库设计
5.1 关系模型【问题7】
请将给出的部分关系模型补充完整。
图7给出数据之间的关系模型。
图7 图书管理系统的部分关系模型
5.2 表结构【问题8】请对照关系模型补充表的内容。
下面给出数据库表结构。
表1 图书拷贝信息表
字段描述
字段名
数据类型
主键
是否可空
备注
拷贝编号
Copy_ID
Char(12)
是
否
状态
Copy_State
Integer
否
表2 读者信息表
字段描述
字段名
数据类型
主键
是否可空
备注
借阅证编号
Reader_ID
Char(10)
是
否
读者姓名
Reader_name
Varchar(10)
否
系别编号
Dep_ID
Integer
FK
否
外键
表3 借阅信息表
字段描述
字段名
数据类型
主键
是否可空
备注
图书编号
Book_ISDN
Char(13)
FK
否
外键
借阅证编号
Reader_ID
Char(10)
FK
否
外键
借阅时间
Lend_Time
Date
否
归还时间
Return_Time
Date
否
借阅标志
LR_Flag
Number(1)
否
0-借出;1-归还
表4 XXX
字段描述
字段名
数据类型
主键
是否可空
备注
6 数据结构设计
数据结构是系统数据在内存中的组织形式,在图书管理系统中主要采用结构体的形式对数据进行表示【问题7】
请仿照结构体Book给出其他任意3个数据信息的结构体定义。例如,借阅记录、读者信息、图书拷贝等。
。
struct Book //图书信息
{
char ISBN[50]; //图书编号
char title[30]; //书名
char author[40]; //作者
char date[30]; //出版时间
char publisher[40]; //出版社
int price; //价格
int inventory; //库存
};
7 外部存储结构设计
本系统选用文件结构作为数据外部的存储形式,方便C语言的数据存取操作。为了适应日后系统对数据库的支持,在系统设计过程中留有相应的数据库数据提取的接口。
系统中使用到的文件结构同数据结构设计中的内容。文件的后缀名为.dat。
-12-