图书管理系统详细设计(共21页).doc
精选优质文档-倾情为你奉上文档编号 HZWY-15 版 本 号 Ver1.1 文档名称: 详细设计说明书 项目名称: 图书馆管理系统 项目负责人: 编写 20 年 11 月 16 日校对 20 年 11 月 16 日审核 20 年 11 月 16 日批准 20 年 11 月 16日开发单位 沈阳工程学院 专心-专注-专业详细设计说明书1引言1.1编写目的图书管理系统详细设计阶段的主要任务是在图书管理系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的内部功能,即模块设计。具体的说,模块设计就是要为已经产生的图书管理各子系统设计详细的算法。但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。1.2背景本项目的名称:图书管理系统本项目的提出者:软件工程课程教师本项目开发者: 本项目的用户:读者、图书管理员1.3定义数据库系统概念 Abraham Silberschatz Henry F.korth S.sudarsham 著软件工程Roger S.Pressman 著C#3.0与.NET3.5高级编程丁士峰 朱毅 杨明羽 等编著1.4参考资料软件工程导论(第五版) 张海藩编著 清华大学出版社 2008年2月第5版数据库系统概论(第四版) 王珊 萨师煊 高等教育出版社 2006年5月第4版2程序系统的结构2.1系统架构本系统包含客户层,中间层和图书管理信息系统层。其中,客户层用于用户与客户端的交互,例如显示信息,查询信息,提交信息,输入数据等。中间层为应用服务器部分,主要用来实现数据的接收,发送,并作为一座“桥梁”来连接客户与数据库。图书管理信息系统层主要实现数据的处理功能。从安全的角度看,中间层的引入能有效的对系统与数据进行保护,用户无法直接修改,删除核心信息,从而使系统安全性得到保障,有效地避免数据丢失等问题的出现。2.2系统功能模块各模块结构体模块图如下所示:登录注册模块:读者功能模块图:管理员功能模块图:系统子模块清单:模块名称模块简要说明读者注册、登录模块读者第一次使用该系统,需要通过注册才能成为系统的用户。登录系统后,用户可以使用系统开放给普通用户的各种功能。在个人信息中,注册用户还可以查看并修改自己的个人信息。丢失自己密码的注册用户可以通过个人资料认证来重新找回自己的密码。图书信息查询、预览模块登录用户可以在这个模块中查询系统中记录的图书信息,包括书名,编号,作者(译者),出版社,定价,存放位置,数量以及可借阅复本数等信息。并且可以预览自己感兴趣的书籍的封面,评价,部分内容等。图书评价模块对于借阅过图书的读者用户,可以在这个模块中对自己借阅过的书籍进行评价,这些评价将记录在图书信息中。这些评价信息可以有效地帮助读者用户找到自己需要的图书,而且可以在读者借书前帮助读者对该书籍有所了解。读者信息管理读者把个人信息传到个人信息管理模块进行管理,可以对个人信息修改。管理员也可以利用这个模块提供的功能对读者个人信息进行修改和删除读者借阅记录模块只有管理员有权限操作这个模块。管理员可以查询读者的注册信息和借阅记录,并且可以根据实际情况添加、修改、删除读者的借阅记录。图书借阅模块只有管理员有权限操作这个模块。管理员在得到读者借阅的需求时,在该模块中添加借阅记录,并依据该记录修改图书信息以及读者信息中的借阅图书部分,并且如果读者需求借阅的图书已经全部借出,管理员可以根据图书借阅模块中的记录查找该图书流向,然后通过通信方式(短信或者Email)尽量通知借阅了该图书的读者,使得该图书能尽早归还。图书归还模块只有管理员有权限操作这个模块。管理员在得到读者归还图书的需求时,在在图书借阅记录表中查询到该借阅信息。根据该信息判断图书是否是该处借出图书,判断图书是否逾期,是否需要对读者罚款。并修改图书借阅记录表和读者借阅记录。3 程序1(登录注册模块)设计说明3.1程序描述读者第一次使用该系统,需要通过注册才能成为系统的用户。登录系统后,用户可以使用系统开放给普通用户的各种功能。在个人信息中,注册用户还可以查看并修改自己的个人信息。丢失自己密码的注册用户可以通过个人资料认证来重新找回自己的密码。3.2功能 读者注册登记,即输入读者的具体信息。 3.2.1引言 为了把读者的具体信息(包括:姓名,注册账号,密码,信箱等) 写入读者目录文件中。 3.2.2输入 读者具体信息。 3.2.3处理 通过图书管理系统写入读者目录文件中。 3.2.4输出 读者具体信息。3.3性能3.3.1 精度需求 在精度需求上,根据使用需要,在数据的输入,输出及传输过程中,可以满足各种精度的需求。 33.2 时间需求 在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。 3.3.3 灵活性 当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。3.3.4故障处理 a. 内部故障处理 在开发阶段可以随即修改数据库里的相应内容。 b. 外部故障处理 对编辑的程序进行调试,遇到错误信息,根据错误信息修改程序再调试,直至功能实现为止。说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。3.4输人项注册部分:输入注册信息,包括用户名,姓名,地址,Email,电话号码,密码等。取回密码部分:输入用户名以及Email,电话号码中至少一项登录部分:读者输入用户名与密码,管理员输入管理员ID与密码。3.5输出项注册部分:如果成功,输出欢迎信息;否则出现失败提示信息。取回密码部分:如果成功,显示成功信息,并将密码发送至Email中;失败则显示失败提示信息。登录部分:如果成功,输出欢迎信息;反之则提示失败信息。3.6算法注册部分:首先判断数据库中的读者ID是否存在,如果存在,提示错误信息,如果不存在再判断输入数据是否符合输入要求,不符合要求,提示具体错误信息,反之则将注册读者信息存入到数据库中。取回密码部分:首先判断输入的读者ID是否存在,不存在则提示错误信息,存在则将该读者的密码发送至会员提供的Email中。登录部分:首先判断读者ID是否存在如果输入的读者名不存在,提示错误信息,然后检查密码与读者ID是否对应,不对应则提示错误信息,对应输出欢迎信息。3.7流程逻辑本系统的总体程序流程图如下:登录信息系统 注册登录密码找回NN信息合法?密码正确?信息正确? YYYN退出显示欢迎信息退出取回密码出错信息进入系统3.8接口3.8.1 外部接口按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。3.8.2 内部接口模块间接口采用数据耦合方式,通过参数表传送数据,交换信息。3.8.3用户接口本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。用户对程序的维护,最好要有备份。3.9存储分配根据需要,本程序的存储分配情况如下:3.9.2用户信息文件的存储分配3.10注释设计本程序将在以下情形添加注释,如:a 在模块首部添加注释;b 在各分枝点处添加注释;c 对各变量的功能、范围、缺省条件等添加注释;d 对使用的逻辑添加注释等等。3.11限制条件取回密码时读者的邮箱地址一定要合法的,才能把密码发送到该邮箱中。3.12测试计划3.12.1测试方案采用黑盒测试方法,整个过程采用自底向上,逐个集成的办法,依次进行,单元测试,组装测试等。3.12.2测试项目测试1:名称:系统操作登录测试目的:测试系统操作界面内容:帐号口令输入,合理性检查,合法性检查,系统操作界面显示控制4 程序2(读者功能模块)设计说明4.1 程序描述目的:登录用户可以在这个模块中查询系统中记录的图书信息,包括书名,编号,作者(译者),出版社,定价,存放位置,数量以及可借阅复本数等信息,借阅过图书的读者用户,可以在这个模块中对自己借阅过的书籍进行评价,这些评价将记录在图书信息中。 前提:读者必须先登陆成功才能对图书信息进行查询。4.2 功能 输入读者借书信息。 4.2.1引言 为了把读者借书的相关信息(包括:图书名、分类、借阅日期等)写入借书文件中。 4.2.2输入 读者借书信息。 4.2.3处理 通过图书管理系统写入借书文件中。 4.2.4输出 读者借书信息的全部内容 4.3 性能4.3.1 精度需求 在精度需求上,根据使用需要,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。 4.3.2 时间需求 在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。 4.3.3 灵活性 当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。4.3.4故障处理 a. 内部故障处理 在开发阶段可以随即修改数据库里的相应内容。 b. 外部故障处理 对编辑的程序进行调试,遇到错误信息,根据错误信息修改程序再调试,直至功能实现为止。说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。4.4 输入项登录部分:读者输入用户名与密码,管理员输入管理员ID与密码。查询部分:输入用户名以及需要查询的内容借书部分:输入书名以及借阅时间还书部分:输入书名以及还书日期4.5 输出项登录部分:如果成功,输出欢迎信息;反之则提示失败信息。查询部分:输出查询的信息,如果没有,则显示无借书部分:判断是否符合借阅条件,符合,显示借阅已受理,否则,显示不符合条件还书部分:记录书名及还书日期4.6 算法系统根据读者选择不同的按钮向数据库发送不同的数据库访问语句进行不同的操作并将需要返回的结果返回,显示给读者。4.7 流程逻辑 使用 查询借书还书NN存在信息?符合条件?信息正确? YYYN信息有误无显示查询信息还书成功条件不符借阅受理4.8 接口4.8.1 外部接口按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。4.8.2 内部接口模块间接口采用数据耦合方式,通过参数表传送数据,交换信息。4.8.3用户接口本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。用户对程序的维护,最好要有备份。4.9 存储分配根据需要,本程序的存储分配情况如下:图书文件的存储分配借书信息文件的存储分配.4.10 注释设计本程序将在以下情形添加注释,如:e 在模块首部添加注释;f 在各分枝点处添加注释;g 对各变量的功能、范围、缺省条件等添加注释;h 对使用的逻辑添加注释等等。4.11 限制条件对WPF界面设计技术掌握有限,界面美化工作进行有难度。4.12 测试计划4.12.1测试方案采用黑盒测试方法,整个过程采用自底向上,逐个集成的办法,依次进行,单元测试,组装测试等。4.12.2测试项目 测试1:名称:出借测试 目的:测试出借功能 内容:图书信息,合理性检查,合法性检查,借书登记测试2:名称:还书测试 目的:测试还书功能 内容:用户号,书号,合理性检查,合法性检查,还书登记4.13 尚未解决的问题图书的预览功能因为缺乏实体书的电子版来进行存储,还为能完全实现;因WPF界面设计技术有限,界面美化工作做得还不够完美。5 程序3(管理员功能模块)设计说明5.1 程序描述只有管理员有权限操作这个模块。管理员可以进行相应的系统维护,更新。5.2 功能 输入新书的全部信息。 5.2.1引言 为了输入新书的全部信息(包括:书号、书名、分类、作者、出版社、价格、数量、出版日期等)。 5.2.1输入 新书的全部信息。 5.2.2处理 通过图书管理系统写入图书目录文件中。 5.2.3输出 新书信息的全部内容。 输入新书的全部信息。 5.2.4引言 输入需要更新的读者信息(包括:姓名,密码,状态,借书数,信箱等)。 5.2.5输入 更新的信息。 5.2.6处理 通过图书管理系统写入数据库中。 5.2.7输出 更新是否成功。5.3 性能5.3.1 精度需求 在精度需求上,根据使用需要,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。 5.3.2 时间需求 在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。 5.3.3 灵活性 当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。5.3.4故障处理 a. 内部故障处理 在开发阶段可以随即修改数据库里的相应内容。 b. 外部故障处理 对编辑的程序进行调试,遇到错误信息,根据错误信息修改程序再调试,直至功能实现为止。说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。5.4 输入项用户管理部分:输入需要修改的信息图书管理部分:输入书名以及需要修改的信息5.5 输出项用户管理部分:输出修改是否成功图书管理部分:输出修改是否成功5.6 算法系统根据管理选择不同的按钮向数据库发送不同的数据库访问语句进行不同的操作并将需要返回的信息返回给管理员,以便管理员对数据进行分析,发现问题,并及时的解决。5.7 流程逻辑 管理 读者数目信息正确?存在信息?NN YY信息有误无可修改更新成功5.8 接口5.8.1 外部接口按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。5.8.2 内部接口模块间接口采用数据耦合方式,通过参数表传送数据,交换信息。5.8.3用户接口本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。用户对程序的维护,最好要有备份。5.9 存储分配更新的图书存储分配字段名数据类型与长度是否为空图书编号char(13)NOT NULL图书类型号char(10)NOT NULL图书名称char(10)NOT NULL作者姓名char(10)NOT NULL出版社char(30)NOT NULL出版日期char(10)NOT NULL单价char(10)NOT NULL进库日期char(10)NOT NULL备注char(30)NULL更新的读者存储分配字段名数据类型与长度是否为空借阅证编号char(6)not null姓名char(10)not null性别char(2)not null部门编号char(19)not null专业char(15)null办证日期char(15)not null读者类型号char(15)not null备注textNULL5.10 注释设计本程序将在以下情形添加注释,如:i 在模块首部添加注释;j 在各分枝点处添加注释;k 对各变量的功能、范围、缺省条件等添加注释;l 对使用的逻辑添加注释等等。5.11 测试计划测试项目 测试1:名称:用户管理测试 目的:测试用户管理功能 内容:用户管理界面显示控制,用户浏览,新增用户记录测试2:名称:用户查询测试 目的:测试用户查询功能 内容:用户号,用户全部信息测试3:名称:图书管理测试 目的:测试图书管理功能 内容:图书管理界面显示控制,图书浏览,新增图书记录测试4:名称:图书查询测试 目的:测试图书查询功能 内容:图书查询显示界面控制,输入数据合理性检查,提交,图书查询结果显示