图书管理系统详细设计说明书

1、引言1.1 编写目的根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《图书管理系统》软件的功能划分、数据结构、软件总体结构有了进一步的认识我们把讨论的结果记录下来,作为概要设计说明书,并作为进一步详细设计软件的基础1.2、项目背景随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件1.3、参考资料《管理信息系统》,张金城,北京大学出版;《软件工程》,钱乐秋,青还大学出版社;《软件工程导论》(第四版),张害藩,清华大学出版社;《数据库原理及设计》,王珊等,清华大学出版社;《软件工程实践教程》,赵池龙等,电子工业出版社《程序设计基础》 刘钢 ,北京:高等教育出版社,2007《实用软件工程》赵池龙,杨林 ,北京:电子工业出版社,2008《实用软件工程》(第二版) ,郑人杰,殷人昆,陶永雷,北京:清华大学出版社,1997。
2、任务概述2.1、目标《图书管理系统》针对的用户是单个中小型图书室或者个人,藏书的种类和数量较少,读者的数量和来源受到一定的限制相应的需求有:1.能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作和管理,这主要包括:1) 图书信息的录入、删除及修改2) 图书信息的多关键字检索查询3) 图书的出借、返还和资料统计2.能够对一定数量的读者进行相应的信息存储与管理,这其中包括:1) 读者信息的登记、删除及修改2) 读者资料的统计与查询3.能够对需要的统计结果提供列表显示输出4.能够提供一定的安全机制,提供数据信息授权访问,防止随意删改,同时提供信息备份的服务2.2、运行环境Intel486以上系列、AMD K6 以上系列等PC台式机和便携式电脑;运行时占用内存:≤1MB; 所需硬盘空间:≤5MB;软件平台:中文Windows xp/win 7或更高版本的操作系统;2.3条件与限制一个更为完善的图书管理系统,应提供更为便捷与强大的信息查询功能,如相应的网络操作及服务,由于开发时间和计算机数量有限,该系统并未提供这一功能对信息的保护手段仅限于设置用户级别3、总体设计3.1.1、处理流程1、 修改密码流程2. 图书查询流程3. 系统管理流程3.2.1 系统总体结构3.2.2模块外部设计1.主模块:输入:操作系统传递至的各种消息以及用户的输入数据 输出:用户界面显示2.图书流通模块:输入:用户口令 输出:相应的界面3.图书查询模块:输入:用户的输入 输出:查询方式及相应的查询关键字4.系统操作模块:输入:用户口令 输出:各个对话框5.借书模块:输入:读者证号、图书书号 输出:读者信息、相关借书信息6.还书模块:输入:图书书号 输出:相关读者信息7. 图书查验模块:输入:图书书号 输出:图书允许/禁止出借标志8.读者查验模块:输入:读者证号 输出:合法\非法读者标志9.借书记录查验模块输入:图书书号 输出:借书记录存在/不存在标志,借书记录10.图书库操作模块:输入:与图书库操作子对话框有关的用户输入及系统消息 输出:操作结果显示.11.读者库操作模块:输入:与读者库操作子对话框有关的用户输入及系统消息 输出:操作结果显示13.系统设置模块:输入:用户的输入 输出:根据用户的输入显示相应的对话框14.数据备份模块:输入:用户的操作输入 输出:操作结果显示15.数据恢复模块:输入:用户的操作输入 输出:操作结果显示16.更改口令模块:输入: 用户的操作输入输出: 操作结果显示17.录入模块:输入:相应的信息 输出:相应的结果18.修改模块:输入:相应的信息 输出:相应的结果19. 删除模块:输入: 相应的信息 输出: 相应的结果20. 帮助模块:输入:无 输出:帮助信息21. 退出模块:输入:退出命令 输出:无22.数据库操作模块:输入:数据操作命令 输出:操作结果显示23.数据库查询模块:输入:数据查询命令 输出:查询结果集3.3 功能分配浏览功能:图书库操作模块 读者库操作模块查询功能:图书查询模块 数据统计模块读者查验模块插入功能:图书库操作模块 读者库操作模块 借书模块修改功能:图书库操作模块 读者库操作模块借书模块 还书模块删除功能:图书库操作模块 读者库操作模块 还书模块4、接口设计4.1 外部接口1.用户界面按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。
1)主对话框:由五个功能按钮构成图书流通、图书查询、系统操作、帮助、退出2)借书对话框:图书书号编辑框: 用于输入图书书号;读者信息显示区: 用于显示读者信息(姓名);读者已借图书信息显示区:用于显示读者已借图书信息;书号提交按钮:提交借书请求;退出按钮:退出借书对话框3)还书对话框:图书书号编辑框:用于输入图书书号;读者信息显示区:用于显示本次图书归还者信息(读者证号、读者姓名);已还图书信息显示区:用于显示读者本次已还图书信息(书名、超期天数);未还图书信息显示区:用于显示读者尚未归还的图书信息(书名、借书日期);提交按钮:用于提交还书请求;返回按钮:用于退出还书对话框4)图书查询对话框:查询方式复选框:用于选择查询所需满足的条件(作者、书名、出版社、出版时间);关键字编辑框:用于输入查询关键字(作者、书名、出版社);时间条件单选框:用于选择出版时间所需满足的条件类型;时间编辑框:用于编辑年与月;开始查询按钮:用于提交查询请求;退出查询按钮:用于退出图书查询对话框;系统操作对话框:由八个功能按钮构成图书库操作、读者库操作、数据统计、系统设置、数据备份、数据恢复、更改口令、返回5)图书库操作对话框:图书书号编辑框:用于显示图书书号;书名编辑框:用于显示编辑图书书名;作者编辑框:用于显示编辑作者;单价编辑框:用于显示编辑图书单价;出版社编辑框:用于显示编辑出版社;出版年月编辑框:用于显示编辑图书出版的年月;图书状态单选框:用于显示编辑图书状态(在库、借出、异常);纪录总数显示:用于显示图书记录的总数;当前记录序号显示:用于显示当前记录在记录集中的位置;“前一个”按钮:显示和编辑前一个记录;“后一个”按钮:显示和编辑后一个记录;“移动到”按钮:显示和编辑指定图书书号的记录;“加入”按钮:增加图书记录;“删除”按钮:删除当前的图书记录;“退出”按钮:退出图书库操作对话框。
6)读者库操作对话框:读者证号编辑框:用于显示读者证号;读者姓名编辑框:用于显示编辑读者姓名;联系方法编辑框:用于显示编辑读者联系方法;读者电话号码编辑框:用于显示编辑读者电话号码;读者电子邮件编辑框: 用于显示编辑读者电子邮件;纪录总数显示:用于显示读者记录的总数;当前记录序号显示:用于显示当前记录在记录集中的位置;“前一个”按钮:显示和编辑前一个记录;“后一个”按钮:显示和编辑后一个记录;“第一个”按钮:显示和编辑第一个记录;“最后一个”按钮:显示和编辑最后一个记录;“移动到”按钮:显示和编辑指定读者证号的记录;“加入”按钮:增加读者记录;“删除”按钮:删除当前的读者记录;“退出”按钮:退出图书库操作对话框9) 数据备份对话框路径编辑框:用于输入编辑备份路径BROWSE按钮:用于选择路径确定按钮: 确定数据备份退出按钮: 退出数据备份系统10)数据恢复对话框确认按钮: 确定此项操作文件对话框:用于输入存数据的路径11)更改口令对话框原始口令编辑框:用于输入原始口令新口令编辑框: 用于输入新口令确定按钮: 确定此项操作2.软件接口使用Access数据库的驱动程序,通过COM接口访问。
3.硬件接口鼠标4.2 内部接口模块间接口采用数据耦合方式,通过参数表传送数据,交换信息5.数据结构设计5.1 逻辑结构设计1)图书表:由多个图书记录构成图书记录的数据结构如下:图书编号(BookID) 整数(唯一标示符)图书书名(BookName) 变长字符串图书作者(Author) 变长字符串图书出版社(Publisher) 变长字符串图书单价(BookPrice) 实数图书状态(BookStatus) 整数2)读者表:由多个读者记录构成读者记录的数据结构如下:读者证号(ReaderID)整数(唯一标示符)读者姓名(ReaderName) 变长字符串读者联系方法(Address) 变长字符串读者电话号码(TelephoneNumber) 整数读者电子邮件(Email) 变长字符串3)借书记录表:由若干个借书记录构成借书记录的数据结构如下:借阅图书(BookID) 整数(与图书库中的图书编号对应)(唯一标示符)借阅者(ReaderID) 整数(与读者库中的图书编号对应)借阅时间(BorrowDate) 日期4)系统设置表:有单个系统设置记录构成系统设置记录的数据结构如下:记录号(id)整数(系统自动生成,唯一标示符)最多可借图书数(MaxBLNum)整数最多借书天数(MaxBLDays)整数5)系统操作员记录表:由若干个系统操作员记录构成系统操作员记录的数据结构如下:记录序号(id) 整数(系统自动生成,唯一标示符)账号(Addminister) 变长字符串口令(Password)变长字符串权限级别(Level)整数(0-7)5.2 物理结构设计:采用链表结构5.3 数据结构与程序的关系主模块:连接数据库借书模块:读者查验模块:读入读者号,对应输出读者姓名,读者联系方法,读者电话号码,读者电子邮件。
图书查验模块:读入图书号,对应输出图书书名,图书作者,图书出版社,图书单价,图书状态借书登记模块:读入图书号,修改图书状态,在借书记录表中加入读者号,图书号,借书时间还书模块:借书记录查验模块:读入图书号,对应输出借书记录表中的读者号,借书时间还书登记模块:读入图书号,修改图书状态,删除借书记录表中的读者号,图书号,借书时间图书查询模块:指定图书查询条件,对应输出相应的图书信息,如图书书名,图书作者,图书出版社 ,图书单价等系统操作模块:系统操作权限查验模块:读入帐号,口令,输出相应的信息图书库操作模块:增加,修改,删除图书表中的信息读者库操作模块:增加,修改,删除读者表中的信息数据备份模块:复制图书表,读者表,借书记录表,系统设置表,系统操作员记录表数据恢复模块:读取图书表,读者表,借书记录表,系统设置表,系统操作员记录表系统设置模块:增加,修改,删除系统操作员记录表中的信息,修改系统设置表中的最多可借图书数,最多借书天数6.运行设计6.1 运行模块的组合程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。
6.2 运行控制本软件控制流程:主程序运行,等待用户的输入,根据用户的输入调用各子模块6.3 运行时间检索业务响应时间<2s;运行响应时间<1s;7.出错处理7.1 出错输出信息根据不同的出错情况给出不同的出错信息,一般用对话框给出7.2 出错处理对策对一般错误,给用户提示信息,让用户重新输入或退出对于严重错误,启动备份文件恢复,建议使用帮助文件8.安全保密设计为每个操作人员设置账号及口令,规定每一级操作人员的权限9.维护设计由于此项目比较小,除了严格按照软件工程的科学方法开发软件、认真建立文档、编码阶段写详细的注释外,没有特殊的维护设计,如:设置维护模块等。