




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件名称详细设计说明书学年论文(课程设计)题目:图书管理系统详细设计说明书学 院学科门类专 业学 号姓 名指导教师工商学院工学软件工程2012484088李伟王思乐2014 年 12 月 22 日1软件名称详细设计说明书总版本编号版本v 1.0lmslms 1.0项目名称项目代码分项名称分项代码分项序号图书管理系统(lms)library management system 详细设计说明书03lms 03组长负责人参与人梅艳涛梅艳涛梅艳涛梁 雪 山李伟赵 博 深文鹏徐鹤松指导教师 王思乐日期2014 年 12 月 22 日开发单位 2012 软件工程2软件名称详细设计说明书河北大学学年论文(课
2、程设计)任务书(指导教师用表)学 生 姓 名论文(设计)题目李伟指 导 教 师图书管理系统-详细设计说明书王思乐主要研究 (设计)内容研究方法主要任务及目标经过这个阶段的详细设计工作,应该得出对目标系统的精确描述,从 而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程 序。课本软件工程导论上面介绍了很多关于项目详细设计的研究方法, 通过小组讨论,主要采用程序流程图进行详细设计。对图书管理系统进行详细设计,根本目标是确定应该怎样具体地实现 所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系 统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设 计语言书写的程
3、序。主要参考文献进度安排数据库系统概论(第 4 版) 萨师煊 王珊 软件工程导论(第 5 版) 张海藩 java 程序设计实用教程(第 3 版) 叶核亚论文(设计)各阶段名称问题定义需求分析、概要设计详细设计实现高等教育出版社 清华大学出版社 电子工业出版社日期第 10 周第 11 周-第 13 周第 14 周-第 15 周 第 16 周指导教师签字:3软件名称详细设计说明书河北大学学年论文(课程设计)成绩评定表 学院:工商学院学生姓名李伟专业年级 2012 级 软件工程论文(设计)题目图书管理系统详细设计说明书论文(设计)内容提要此文档是图书管理系统的详细设计说明书,该报告主要是得出对目标系
4、 统的精确描述。首先引言中介绍了设计该系统的目的,背景和所需要的参考 资料;接下来用一系列图表列出本程序系统内的每个程序(包括每个模块和 子程序)的名称、标识符和它们之间的层次结构关系;然后逐个地给出各个 层次中的每个程序的设计考虑,并给出其详细的程序描述、功能、性能、输 入项、输出项、算法、流程逻辑、测试计划等说明。指导教师评语成绩:指导教师(签名):年月日4软件名称1 引言1.1 编写目的详细设计说明书根据需求规格说明书、概要设计说明书,经过分析和讨论,我们对图 书馆管理系统进行了进一步的设计,作为详细设计说明书,为编写代码者 提供了设计基础。1.2 背景l图书管理系统软件lms v1.0
5、;l任务提出者:2012 级软件工程 开发者:2012 级软件工程用户:xxx 大学图书馆1.3 定义、缩写词、略语lms:library management system 图书管理系统1.4 参考资料【1】张海藩。软件工程导论(第五版)。清华大学出版社。2008。【2】萨师煊 王珊。数据库系统概论(第 4 版)。高等教育出版社。 【3】叶核亚。java 程序设计实用教程(第三版)。电子工业出版社。2011。2 程序系统的结构2.1 总体设计5软件名称2.2 子系统设计(1)导借机详细设计说明书(2)借阅机6软件名称(3)管理机详细设计说明书3 导借机子系统设计说明3.1 程序描述导借机子系
6、统主要完成导借机功能,该子系统主要包括两个模块:书刊检索 和查询。使用书刊检索模块实现书刊检索功能;使用查询模块实现对借阅情况以 及学生信息的查询。3.2 功能导借机子系统需要实现的功能主要包括:使用书刊检索模块实现书刊检索功 能;使用查询模块实现对借阅情况以及学生信息的查询。3.3 性能完成书刊检索以及查询借阅信息和学生信息3.4 算法3.4.1 书刊检索模块(1)按条形码号检索子模块7软件名称输入项:条形码号 bookid;输出项: struct 图书信息条形码号 bookid;图书类别 class;书架号 bookshelves no; 书名 bookname;作者 author;出版社
7、 publisher;借阅状况 bookstatus; ;连接数据库;按条形码检索()get(bookid);/接收用户输入的条形码 if 数据库存在此书显示该书信息else提示错误信息;(2)按书名首字母检索子模块输入项:书名首字母;输出项:struct 图书信息条形码号 bookid;图书类别 class;书架号 bookshelvesno; 书名 bookname;作者 author;详细设计说明书8软件名称详细设计说明书出版社 publisher;借阅状况 bookstatus;连接数据库;按图书首字母检索()get(图书首字母);/接收用户输入的图书首字母if 数据库存在此书显示该书
8、信息else提示错误信息;(3)按书名检索子模块输入项:书名 bookname;输出项:struct 图书信息=条形码号 bookid+图书类别 class+书架号 bookshelves no +书名 bookname+作者 author+出版社 publisher+借阅状况 bookstatus; 连接数据库;按书名检索()get(bookname);/接收用户输入的内容if 数据库存在此书显示该书信息else提示错误信息;(4)按作者检索子模块输入项:作者 author;输出项:struct 图书信息=条形码号 bookid+图书类别 class+书架号 bookshelves no +
9、书名 bookname+作者 author+出版社 publisher+借阅状况 bookstatus;9软件名称连接数据库; 按作者检索()详细设计说明书get(author);/接收用户输入的内容if 数据库存在此书显示该书信息else提示错误信息;(5)按出版社检索子模块输入项:出版社 publisher;输出项:struct图书信息=条形码号 bookid+图书类别 class+书架号 bookshelves no +书名 bookname+作者 author+出版社 publisher+借阅状况 bookstatus; 连接数据库;按出版社检索()get(publisher);/接收
10、用户输入的内容if 数据库存在此书显示该书信息else提示错误信息;end if3.4.2 查询模块(1)查询借阅情况子模块输入项:借书卡号 card no=“0000001”-“10000000”;输出项: struct 借阅情况 = 借书卡号 card no+ 借阅书籍 bookid+ 借书日期 outdate+还书日期 indate+赔偿钱数 compensation;连接数据库;10软件名称详细设计说明书search_borrow()get(card no);if 借书卡号存在;show(借阅信息);else false;end if(2)查询学生信息子模块输入项:借书卡号 card
11、no=“0000001”-“10000000”输出项:struct 学生信息=卡号 card no+学号 readerid+姓名 name+ 年级 grade+ 专业 major+卡内余额 balance+是否注销 status;连接数据库;search_stu()get(card no);if 借书卡号存在show(学生信息);else false;end if3.5 流程逻辑11软件名称3.5.1 书刊检索模块详细设计说明书3.5.2 查询模块3.6 接口3.6.1 用户接口向用户提供命令 书刊检索学生查询 3.6.2 外部接口软件回答对应信息 图书信息查询 借阅情况 学生信息接口数据库接
12、口传递信息图书信息 学生信息12软件名称3.6.3 内部接口接口图书信息录入学生信息录入3.7 注释设计详细设计说明书传递信息图书信息:(条形码号、图书类别、书架号、书 名、作者、出版社、借阅状况)学生信息:(卡号、学号、姓名、年级、专业、 是否注销、卡内余额)l加在模块首部的注释/书刊检索模块,包括按条形码号检索子模块、按书名首字母检索子模块、 按书名检索子模块、按作者检索子模块、按出版社检索子模块;/查询模块,包括查询借阅情况子模块、查询学生信息子模块;l加在各分枝点处的注释/输入条形码号 bookid; /输入书名首字母;/输入书名 bookname; /输入作者 author;/输入出
13、版社 publisher; /输入借书卡号 card no; /输出图书信息;/输出借阅情况;/输出学生信息;l对各变量的功能、范围、缺省条件等所加的注释;/图书信息=条形码号 bookid+图书类别 class+书架号 bookshelves no +书名 bookname+作者 author+出版社 publisher+借阅状况 bookstatus;/借阅情况=借书卡号 card no+借阅书籍 bookid+借书日期 outdate+ 还书日 期 indate+赔偿钱数 compensation;/ 学生信息 = 卡号 card no+ 学号 readerid+ 姓名 name+ 年级
14、 grade+ 专业 major+卡内余额 balance+是否注销 status;13软件名称/借书卡号 card no=“0000001”-“10000000”;/条形码号 bookid=“000000001”-“999999999”; 3.8 限制条件书刊检索过程中,每次只能选择一种检索方式; 进入查询时,验证卡号是否存在。3.9 测试计划详细设计说明书进入书刊检索模块,按照不同的检索方式一一进行检索,测试是否出现某种 方式无法进行检索,能否连接数据库,能否检索成功;预期结果:数据库连接正确,各个检索方式都能正常运行,能够成功地检索 图书信息。进入查询模块,分别查询借阅情况和学生信息,测
15、试借阅情况信息是否完整, 是否正确,以及能否连接数据库,学生信息是否完整,是否正确;预期结果:数据库连接正确,能够显示完整的、正确的借阅情况信息和学生 信息。3.10 尚未解决的问题书刊检索过程中,每次只能选择一个检索方式,不能进行多条件检索。 4 借阅机子系统设计说明4.1 程序描述借阅机子系统主要完成借阅机功能,该子系统主要包括三个模块:查询、借 书和还书。使用查询模块实现查询学生信息和图书信息的功能;使用借书模块实 现借书的功能;使用还书模块实现还书的功能。4.2 功能导借机子系统需要实现的功能主要包括:使用查询模块实现查询学生信息和 图书信息的功能;使用借书模块实现借书的功能;使用还书
16、模块实现还书的功能。 4.3 性能完成查询学生信息和图书信息,以及借书和还书。14软件名称详细设计说明书4.4 算法4.4.1 查询模块(1)查询学生信息子模块输入项:借书卡号 card no=“0000001”-“10000000”;输出项: struct学生基本信息 =卡号 card no+学号 readerid+姓名 name+年级 grade+专业 major+卡内余额 balance+是否注销 status,借阅情况=借书卡号 card no+ 借 阅 书 籍 bookid+ 借 书 日 期 outdate+ 还 书 日 期 indate+ 赔 偿 钱 数 compensation
17、;连接数据库;search_stu()get(card no);if 借书卡号存在show(学生信息);else false;end if(2)查询图书信息子模块与导借机子系统书刊检索模块的子模块和功能相同;4.4.2 借书模块输入项:借书卡号 card no、条形码号 bookid、借书日期 outdate;输出项:bool true/false;连接数据库;获取借阅情况信息;borrow()get(card no,bookid,outdate);if 借书证未登记入库 thenreturn false;15软件名称详细设计说明书else if 图书未登记入库 thenreturn fals
18、e;else ifelse if已借阅书籍=最大可借阅书籍数 then return false;卡内余额最大可借阅天数赔偿钱数=(还书日期-借书日期)最大可借阅天数每天的赔偿钱数; 卡内余额=卡内余额-赔偿钱数;show(赔偿钱数,卡内余额);else return true;/借书成功,更新数据库 end if4.5 流程逻辑16软件名称4.5.1 查询详细设计说明书4.5.2 借书17软件名称4.5.3 还书详细设计说明书4.6 接口4.6.1 用户接口从用户接收命令 卡号条形码号 4.6.2 外部接口接口数据库接口 4.6.3 内部接口接口卡号条形码号软件回答对应信息学生信息(学生基本
19、信息、借阅情况信 息) 图书信息借阅情况信息传递信息图书信息 借阅情况信息 学生基本信息传递信息借书卡号 card no=“0000001”-“10000000”条形码号 bookid=“000000001”-“999999999”18软件名称借书登记还书登记4.7 注释设计详细设计说明书借书登记:(图书条形码号、学生学号、图书名称、 借书卡号、借书时间、学生姓名)还书登记:(图书条形码号、图书名称、归还时间、 借书卡号、学生学号、学生姓名、是否异常)l加在模块首部的注释/查询模块,包括查询学生信息子模块、查询学生信息子模块; /借书模块;/还书模块;l加在各分枝点处的注释;/输入借书卡号 c
20、ard no;/输入借书卡号 card no、条形码号 bookid、借书日期 outdate; /输入借书卡号 card no、条形码号 bookid、还书日期 indate; /输出学生基本信息;/输出借阅情况;/输出图书信息;/输出提示消息;l对各变量的功能、范围、缺省条件等所加的注释;/借书卡号 card no=“0000001”-“10000000”;/条形码号 bookid=“000000001”-“999999999”;/学生基本信息=卡号 card no+ 学号 readerid+ 姓名 name+年级 grade+ 专业 major+卡内余额 balance+是否注销 sta
21、tus;/借阅情况=借书卡号 card no+借阅书籍 bookid+借书日期 outdate+ 还书日 期 indate+赔偿钱数 compensation;4.8 限制条件因为条件不允许,只能通过手工操作来完成刷卡工作4.9 测试计划进入查询模块,输入一个符合条件的卡号,进行查询,测试能否正常连接数19软件名称据库,显示信息是否完整、正确;详细设计说明书预期结果:连接数据库正常,输入一个符合条件的卡号,显示的信息完整、 正确。进入借书模块,扫描条形码号,测试能否正常连接数据库,是否能够显示完 整的、正确的借阅情况信息,能否正常更新数据库;预期结果:连接数据库正常,能够显示完整的、正确的借阅
22、情况信息,并正 常地更新数据库。进入还书模块,扫描条形码号,测试能否正常连接数据库,是否能够显示完 整的、正确的借阅情况信息,能否正常更新数据库;预期结果:连接数据库正常,能够显示完整的、正确的借阅情况信息,并正 常地更新数据库。4.10 尚未解决的问题刷卡工作因为条件不允许只能通过人工操作来模拟5管理机子系统设计说明5.1 程序描述管理机子系统主要完成管理机功能,该子系统主要包括四个模块:管理员, 图书上架,图书下架,一卡通。使用管理员模块实现注册管理员信息、删除管理 员信息和修改管理员信息的功能;使用图书上架模块实现录入图书信息的功能; 使用图书下架模块实现删除图书信息的功能;使用一卡通模
23、块实现办卡、退卡、 充值和打印凭证的功能。这个子系统把所有的管理任务结合到一起,可以更加有 效的组织和管理,使得管理更加的便捷和系统化。5.2 功能管理机子系统需要实现的功能主要包括:(1)对管理员的管理。此模块可以 实现当有新的管理员入馆工作时添加管理员信息,当有管理员辞职或调离时完成 对此管理员信息的删除操作,期间还可以对当前的管理员信息做修改操作。(2) 图书的上下架。当图书入库,出库时完成对图书信息的更新。(3)办卡。此模块 完成办卡,退卡,卡内充值业务,同时更新学生的个人信息。20软件名称5.3 性能1数据精确度详细设计说明书添加数据信息时保证准确率,添加的信息能准确的添加到后台数据
24、库中。 删除时能保证准确率,所有删除能正确存入数据库中。2时间特性一般操作的响应时间应在 23 秒内,删除时间应根据所删除内容尽量缩短 时间。3适应性满足运行环境在允许操作系统之间的安全转换和与其它应用软件的独立运 行要求。4数值需求管理员数目 15;图书的存储量做不限制;已注册办卡的学生数量不做限制;5其它需求有一定的安全性,防止人为地破坏数据库,防止他人利用非法手段盗取数据 信息,设置一定的权限,防止非法操作。5.4 算法登陆模块login()get (worker id,password);if 管理员信息验证正确main();else false;5.4.1 管理员模块(1)注册子模块
25、输入项:管理员=姓名 worker name+工号 worker id+密码 password+ 权限 level;21软件名称详细设计说明书输出项:bool true/false;连接数据库;sign in()get(管理员信息);if 输入信息=nullreturn false;elsereturn true;/更新数据库信息(2)删除子模块输入项:管理员=姓名 worker name+工号 worker id+密码 password+ 权限 level; 输出项:bool true/false;连接数据库;delete()get (需要删除的管理员信息);if 管理员信息不存在retur
26、n falseelsereturn true;/完成删除(3)修改子模块输入项:管理员=姓名 worker name+工号 worker id+密码 password+ 权限 level; 输出项:bool true/false;连接数据库;modify()get(管理员信息);22软件名称详细设计说明书if 管理员信息不存在return falseelsereturn true;/更新数据库,完成修改5.4.2 图书上架模块输入项:管理员=姓名 worker name+工号 worker id+密码 password+ 权限 level, 图书信息=条形码号 book id+ 图书类别 cl
27、ass+ 图书名称 book name+ 书架号 bookshelves no+作者 author+出版社 publisher;输出项:bool true/false;连接数据库;图书上架()get(图书信息);return true;/更新数据库信息5.4.3 图书下架模块输入项:管理员=姓名 worker name+工号 worker id+密码 password+ 权限 level, 图书信息=条形码号 bookid+图书类别 class+图书名称 bookname+书架 号 bookshelves no+作者 author+出版社 publisher;输出项:bool true/fal
28、se;连接数据库;图书下架()get (要删除的图书信息);if 此书不存在return false;elsereturn true;/更新数据库23软件名称详细设计说明书5.4.4 一卡通模块(1)办卡子模块输入项:学生信息=卡号+姓名+学号+年级+专业+卡内余额+押金;输出项:bool true/false;连接数据库;办卡()get(学生信息);return true;/更新数据库信息(2)退卡子模块输入项:退卡信息=卡号+卡内余额+注销操作;输出项:bool true/false;连接数据库;注销( )get(退卡信息);if 此卡不存在return false;else return
29、 true;/ 更新数据库(3)充值子模块输入项:充值信息=卡号+充值金额 recharge money+充值时间 recharge time; 输出项:bool true/false;连接数据库;充值()get(充值信息);24软件名称return true;/更新数据库 print()/打印信息;5.5 流程逻辑详细设计说明书5.6 项目运行架构退卡办卡25软件名称详细设计说明书查询充值26软件名称详细设计说明书管理员查询学生管理员管理27软件名称详细设计说明书管理员浏览还书28软件名称详细设计说明书借书图书上下架 29软件名称详细设计说明书5.7 接口5.7.1 用户接口向用户提供命令 学生信息5.7.2 外部接口软件回答对应信息办卡成功,退卡成功,充值成功,打印凭证硬件接口软件接口 5.7.3 内部接口接口接口与打印机接口 与数据库接口传递信息传递信息充值信息 图书信息,学生信息添加管理员信息修改管理员信息删除管理员信息办卡退卡管理员信息:(姓名、编号、密码、权限)管理员信息:(姓名、编号、密码、权限)管理员信息:(姓名、编号、密码、权限)学生信息:(学号、姓名、专业、年级、借书卡号、 卡内余额、卡状态)学生信息:(学号、姓名、专业、年级、借书卡号、 卡内余额、卡状态)30软件名称充值 5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 青海省大通县2026届九上化学期中联考试题含解析
- 河北省石家庄市长安区2026届英语九上期末教学质量检测模拟试题含解析
- 广东省深圳市育才一中学2026届九年级英语第一学期期末联考模拟试题含解析
- 2025年养老护理员(三级)急救技能实际操作试题及答案
- 2026届资阳市重点中学九年级化学第一学期期中达标检测模拟试题含解析
- 2026届云南省大理市化学九上期中检测模拟试题含解析
- 2026届黑龙江省宝泉岭农垦管理局化学九年级第一学期期末检测模拟试题含解析
- 2026届黑龙江省宝泉岭农垦管理局九年级化学第一学期期中质量跟踪监视试题含解析
- 2026届安徽庐江县英语九上期末质量检测试题含解析
- 离婚协议补充协议:共同财产分割及子女教育费用承担
- 2025年上海市黄浦区高三二模英语试卷(含答案和音频)
- 教导处 教学质量提升方案
- 模拟三力测试题及答案
- 电大教学检查自查报告
- 《公路运营领域重大事故隐患判定标准》知识培训
- 病历质控培训课件
- 老年骨质疏松性疼痛诊疗与管理中国专家共识2024解读课件
- 电机维护检修培训课件
- 建筑工程后续服务承诺与质量保障措施
- GB/T 44808.4-2024人类工效学无障碍设计第4部分:不同年龄人群最小可辨认字符尺寸的估计方法
- 《精子形成过程》课件
评论
0/150
提交评论