【综合实训】图书管理系统——概要设计说明书

news/2025/2/8 18:09:57

【备注】本说明书由华中农业大学2018级计算机科学与技术专业的刘铠铭、崔凌浩、卢家伟三位同学共同完成。

文章目录

    • 1 引言
      • 1.1 编写目的
      • 1.2 范围
        • 1.2.1 系统目标
        • 1.2.2 主要软件需求
        • 1.2.3 软件设计约束、限制
      • 1.3 术语和缩略词
      • 1.4 参考资料
    • 2 体系结构设计
      • 2.1 需求复审
      • 2.2 软件体系结构
      • 2.3 模块设计
    • 3 接口设计
      • 3.1 用户接口
      • 3.2 外部接口
      • 3.3 内部接口
        • 3.3.1 内部模块间关系
        • 3.3.2 接口数据描述
    • 4 数据设计
      • 4.1 数据结构
      • 4.2 文件和数据库结构
    • 5 需求交叉索引
    • 6 测试部分

1 引言

1.1 编写目的

  本说明的目的是对高校图书管理系统进行概要的功能说明,以便用户及项目开发人员了解产品大致的设计与实现。以下叙述将结合文字描述、数据流图、变换图等来描述高校图书管理系统的体系结构设计、接口设计,数据设计等方面。本说明的预期读者有需求分析人员、设计人员、开发人员、项目管理人员、测试人员和用户。

1.2 范围

1.2.1 系统目标

  开发此系统的目标,是实现一个B/S架构的高校图书管理系统,实现图书和读者信息的管理、图书检索和借还工作,便于高校的图书馆进行信息管理。

1.2.2 主要软件需求

(1)图书信息的管理,包括图书信息的录入和修改、删除。

(2)读者信息的管理,包括建立读者档案,修改读者信息、查询和注销功能。

(3)图书信息检索,能根据书号、书名、作者、出版单位、内容提要关键字、分类号、索书号等进行查询。

(4)图书借阅与归还,记录图书借阅与归还信息,能判断该书是否可借,借书证是否超出最大出借数,对超期未还图书进行罚款,对丢失图书进行登记。

1.2.3 软件设计约束、限制

  经济上,采用免费的开发软件,开发成本低,但运行效率受限;技术上,采用现有的小组成员掌握的技术保证项目的最终实现;环境上,在浏览器上保证能正确运行。

1.3 术语和缩略词

1.4 参考资料

[1]窦万峰.软件工程方法与实践(第三版).北京:机械工业出版社,2016

[2]王珊/萨师煊.数据库系统概论(第五版).北京:高等教育出版社,2014

[3]《高校图书管理系统需求规格说明书》

2 体系结构设计

2.1 需求复审

(1)复审整个数据流图,检查是否有问题和可以完善的部分

​ 复审后的Asking 系统的0层数据流图如图1所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HgZxGXmo-1619957512199)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps4.jpg)]

        图1高校图书管理系统的0层数据流图

(2)对部分数据流图的精化如下

①读者管理功能精化数据流图如图2所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EzuzQ5io-1619957512207)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps5.jpg)]

          图2 读者管理精化数据流图

②图书管理功能精化数据流图,如图3所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GNs1M7pg-1619957512217)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps6.jpg)]

        图3 图书管理精化数据流图

③借阅管理功能精化数据流图,如图4所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q9zQzVxM-1619957512226)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps7.jpg)]

          图4 借阅管理精化数据流图

2.2 软件体系结构

根据复审的数据流图,得出软件的逻辑结构,利用事务设计的方法,得到的软件结构图如图5所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z7krsPmS-1619957512229)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps8.jpg)]

        图5 高校图书管理系统的软件结构图

2.3 模块设计

高校图书管理系统模块组成

\1. 读者管理子系统

1.1 建立读者档案包含模块:

建立读者档案模块:读者输入自己的信息,建立相应的个人档案,再把读者档案反馈到上层的读者管理子系统。

1.2 修改读者信息包含模块:

修改读者信息模块:从上层获取读者信息之后,进行读者信息的修改,再把读者信息反馈到上层子系统。

1.3 注销读者信息模块:

注销读者信息模块:从上层获取读者信息之后,进行读者信息的注销,再把注销记录反馈到上层子系统。

1.4 发送借阅信息模块:

发送借阅信息模块:从上层获取读者的借阅信息之后,再把借阅信息反馈给读者。

1.5 查询图书信息模块:

查询图书信息模块:读者查询图书的相关信息。

\2. 图书管理子系统

2.1 录入图书信息包含模块:

录入图书信息管理:图书管理员录入图书的相关信息。

2.2 修改图书信息包含模块:

修改图书信息模块:图书管理员修改图书的相关信息。

2.3 删除图书信息包含模块

删除图书信息模块:图书管理员删除图书的全部信息。

2.4 查询图书信息包含模块

查询图书信息模块:图书管理员查询图书的相关信息。

2.5 判断图书逾期包含模块

判断图书逾期模块:图书管理员根据图书的借书时间与还书时间,判断图书借阅是否超期,超期会向读者反馈罚款信息。

3 接口设计

3.1 用户接口

  给出人机界面设计,包括界面风格、界面内容设计、界面序列关系、每个界面的操作规则和处理规则等。

3.2 外部接口

硬件接口:

(1)系统运行服务器要求运行内存大于1G,存储空间大于2G

(2)使用者电脑内存要求512M以上,磁盘空间要求40G以上,硬盘空间要求1.5G以上。

软件接口:

  VScode、IntelliJ IDEA、MySQL8.0,浏览器或安卓手机端。

3.3 内部接口

3.3.1 内部模块间关系

​   内部模块(构件)之间的调用关系、或依赖、关联等关系。

3.3.2 接口数据描述

​    模块(构件)之间的接口数据描述,包含接口参数含义、顺序、默认值等。

4 数据设计

4.1 数据结构

(1)读者信息

数据名称数据类型
emailvchar型
passwordvchar型
current_numint型
max_numint型
user_namevchar型
gendervchar型
telvchar型
qqvchar型
introductiontext型

(2)管理员信息

数据名称数据类型
admin_emailvchar型
admin_namevchar型
admin_passwordvchar型

(3)借阅信息

数据名称数据类型
record_idint型
emailvchar型
book_idvchar型
borrow_timedate & time型
return_timedate & time型
record_stateint型
fine_stateint型

(4)罚款信息

数据名称数据类型
penalty_idint型
record_idint型
emailvchar型
penalty_billfloat型
penalty_stateint型

(5)图书信息

数据名称数据类型
book_idvchar型
book_indexvchar型
book_classifyvchar型
book_namevchar型
book_authorvchar型
book_pressvchar型
book_introductiontext型
book_restnumint型
book_totalnumint型

4.2 文件和数据库结构

数据库的概念模型、逻辑模型、物理模型如下图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RkTZrdKj-1619957512232)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps9.jpg)]

          图6 数据库概念模型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q4mrZFkd-1619957512235)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps10.jpg)]

          图7 数据库逻辑模型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VrlB7y61-1619957512238)(file:///C:\Users\User\AppData\Local\Temp\ksohtml10616\wps11.jpg)]

          图8 数据库物理模型

5 需求交叉索引

需求名称实现的模块名称
图书信息的管理图书管理模块
读者信息的管理读者管理模块
图书信息检索图书管理、读者管理模块
图书借阅与归还借阅管理模块
管理员登录系统管理模块

6 测试部分

集成策略:采用自底向上的增量式集成方式

测试方针:首先对规定的正常的功能进行测试,以黑盒测试为主,白盒测试为辅助来设计测试用例,测试用例要尽量覆盖所有的程序功能,记录测试中的问题。


http://www.niftyadmin.cn/n/3744599.html

相关文章

exchange 2010连接器解释

CAS就是接收连接器(110,995): Server Config--Client Access:POP3 and IMAP4:POP3设置 HUB就是发送连接器(25,587) Server Config--Hub Transport--Received Connectors:Client EXCA…

3000米长的绳子,每天减一半。问多少天这个绳子会小于5米?不考虑小数。

3000米长的绳子,每天减一半。问多少天这个绳子会小于5米?不考虑小数。 public class WhileDemo { public static void main(String[] args) { int len3000; int d0; while(len>5){ d; lenlen>>1; } System.out.println(d"天后&#xff0c…

UGUI ScrollRect 代码定位

在NGUI 的scrollview组建定位可以直接用value;但是在ugui上的scrollrect确实分的更细了分为 verticalNormallizedPosition 和HorizontalNormaliazedPozition 以及可以设置vector2的NormallizedPosition, 但是这里面有一个坑,实例化列表时要定…

【操作系统实验】Linux环境下用进程实现读者写者问题——C语言完整代码+详细实验报告

【注意】代码在文末,以下为详细实验报告 【实验目的】 以读者写者问题为例,学习并熟悉Linux下进程通信、同步机制的具体实现方法,主要是了解并掌握信号量机制的使用方法,进一步熟悉Linux系统的相关指令的调用。 【实验内容】 在…

人生的换档时刻?你是怎么度过的

大学毕业的时候,通过双向选择,同学们都找到了自己满意的单位,解决北京市户口,有的去了银行,有的去了外企,而我却选择了走出校门区社会闯荡,说是创业,但是创业说起来容易,…

【综合实训】图书管理系统——详细设计说明书

【备注】本说明书由华中农业大学2018级计算机科学与技术专业的刘铠铭、崔凌浩、卢家伟三位同学共同完成。 文章目录1 引言1.1 编写目的1.2 项目背景1.3 定义1.4 参考资料2 总体设计2.1 需求概述2.2 软件结构3 模块描述3.1 模块基本信息3.2 功能概述3.3 算法3.4 模块处理逻辑3.5…

【操作系统实验】Linux环境下用进程实现银行家算法问题——C语言完整代码+详细实验报告

【注意】代码在文末,以下为详细实验报告 【实验目的】 银行家算法是一种最有代表性的避免死锁的算法。在避免死锁方法中允许进程动态地申请资源,但系统在进行资源分配之前,应先计算此次分配资源的安全性;若分配不会导致系统进入不…

VMware_vSphere VMware vSphere5安装(使用SQL2008R2Enterprise)

一:安装 Windows Server 2008 R2(略) 二:安装 SQL Server 2008 R2 SP1 Management Studio Express x64 或者其它版本的 SQL 2008 数据库 安装 SQL Server 2008 R2 SP1 选择 --- 全新安装 输入 产品密钥 选择 ---我接受许可条款 --…