图书管理系统详细设计报告
实验5 图书管理系统的详细设计
1.引言
1.1编写目的
编写本报告是为了在软件的实际开发过程中有个参考,也是对一个软件的最详细、最全面的综述,便于全面把握开发过程的实况。
1.2背景
本项目的名称:图书管理系统
本项目的任务提出者及开发者是图书管理系统软件开发小组,用户是高校图书馆借书。
本产品是针对电脑管理图书的需求设计的,可以完成读者登记、购入新书、读者借还书、等主要功能。
1.3定义
开发(develop):不是单纯指开发活动,还包括维护活动。
项目(project):该词指的是向顾客或最终用户交付一个或多个产品的收管理的相关资源的集合。这个资源集合有着明确的始点和终点,并且一般是按照某项计划运行。这种计划通常会形成文件,并且说明要交付或实现的产品、所用的资源和经费、要做的工作和工作进度,一个项目可能有若干项目组成。
项目开发计划(project development plan):是一种把项目一定过程与项目如何推进连接起来的方案。
产品生命周期(product life cycle):是产品从构思到不可以再使用的持续时间。
MYSQL:数据库管理软件
Navicat:本系统使用的数据库图形化工具
DBMS:数据库管理系统
2.程序系统的结构
2.1软件功能结构
1、图书管理
?增加书籍,删除书籍,查找书籍,修改书籍信息。
2、借阅管理
?查找书籍,查看用户借阅
图1-系统功能框架结构图
2.2本设计概念和处理过程
根据客户需求及现实借阅图书过程,在系统在借阅图书过程中,为保护系统稳定与信息安全,用户登录过程要求拥有有身份登陆确认功能,为保证信息安全要求在身份确认时,3次错误输入信息锁定,一天后可在系统管理员处信息解锁确保信息安全。同时在图书借阅
时,应拥有检索功能以方便用户查询图书信息。
图2读者借还图书处理流程图
图3更新图书资料处理流程
2.3书管理系统总体设计示意图
1、浏览功能
?列出当前数据库文件中图书信息、借阅信息等的所有记录。?可选定一项记录,显示所有域。
2、查询功能
?书目匹配查询
3、添加功能
?添加图书馆的图书
4、修改功能
?修改图书信息
5、删除功能
?删除书籍信息
图4书管理系统层次图
2.5系统流程图
图5图书管理系统程序流程图
2.6 ER图
图书:书号,书名,作者,出版社,定价,总数量,剩余数量
管理员:编号,姓名,性别,年龄,电话,密码,身份类别
学生:学号,姓名,性别,所属系部,班级,密码,身份类型
图6-图书管理系统ER图
3 输入项和输出项
系统登陆模块:
输入项:当使用者选择自己的身份,输入相应的账号密码;
输出项:当输入的账号密码,存在且正确的时候,就进入了系统,可以看到有关个人和图书的详细信息了。
图书信息模块:
输入项:查询时输入书籍名称
输出项:当该图书信息正确且在书库中时,系统检索到相关信息的书籍,展示到该页面,以供读者参考查阅。
借书信息模块
输入项:输入读者学号,借阅数量
输出项:①当该图书未被借出时,就可以借阅了;
②当该图书已被借完,无法借阅该图书。
借书信息模块
输入项:输入读者学号,所借书籍的书号,借阅数量
4 流程逻辑
点击打开该系统,来到基本界面,选择登陆,并输入相应的账号和密码,系统将账号和密码信息,与数据库中的信息进行比较,如果该账号和密码存在且正确,即登陆成功;
如果该账号和密码,不正确,则弹出提示框,提醒重新输入账号和密码,再次与数据库中的信息进行比较。
登陆成功之后,可以借阅图书,输入相应的图书信息,系统将所输入的图书信息与数据库中的相应信息进行比较,判断输入信息是否吻合,不吻合则弹出提醒框,要求重新输入,否则显示相关内容。
当完成借阅图书操作之后,其他用户则不可再借阅已被借阅图书,只能借阅未被借阅图书。
5 算法设计
在用户登录时采用MD5加密算法降低用户信息泄露的可能性,在图书信息存储上采用数据库形式增加书籍信息的可操作性
public class Md5 {
public final static String MD5(String s) {
char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
try {
byte[] btInput = s.getBytes();
// 获得MD5摘要算法的 MessageDigest 对象
MessageDigest mdInst = MessageDigest.getInstance("MD5");
// 使用指定的字节更新摘要
mdInst.update(btInput);
// 获得密文
byte[] md = mdInst.digest();
// 把密文转换成十六进制的字符串形式
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}
System.out.println(new String(str));
return new String(str);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
6 测试计划
每一个系统或者软件,在设计最初或者完成之后,都必须进行测试,以确保该系统或者该软件是否符合预期效果或者是预期要求。因此,非常有必要制定一个详细而全面的测试计划。以下是本系统的简要测试计划:
6.1 测试范围
表-1 测试范围
6.2 测试方法
测试方法:黑盒测试。
注:黑盒测试:这种测试是在程序的接口处进行的测试,已经知道系统或产品的功能,可以通过测试来检验是否每个功能都能正常使用,因此这种测试方法又称为功能测试。
7 总结
详细设计是用户与维护人员的软件说明书,通过详细设计,用户可以直接了解到程序的功能设计,为用户掌握软件设计提供了方便。维护人员可以通过详细设计快速了解系统的流程设计,为后期系统维护,节约了时间和成本。
…… 此处隐藏:950字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析