资源描述:
《图书管理系统详细设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验5图书管理系统的详细设计1.引言1.1编写目的编写本报告是为了在软件的实际开发过程中有个参考,也是对一个软件的最详细、最全面的综述,便于全面把握开发过程的实况。1.2背景本项目的名称:图书管理系统本项目的任务提出者及开发者是图书管理系统软件开发小组,用户是高校图书馆借书。本产品是针对电脑管理图书的需求设计的,可以完成读者登记、购入新书、读者借还书、等主要功能。1.3定义开发(develop):不是单纯指开发活动,还包括维护活动。项目(project):该词指的是向顾客或最终用户交付一个或多个产品的收管理的相关
2、资源的集合。这个资源集合有着明确的始点和终点,并且一般是按照某项计划运行。这种计划通常会形成文件,并且说明要交付或实现的产品、所用的资源和经费、要做的工作和工作进度,一个项目可能有若干项目组成。项目开发计划(projectdevelopmentplan):是一种把项目一定过程与项目如何推进连接起来的方案。产品生命周期(productlifecycle):是产品从构思到不可以再使用的持续时间。MYSQL:数据库管理软件Navicat:本系统使用的数据库图形化工具DBMS:数据库管理系统2.程序系统的结构2.1软件功
3、能结构1、图书管理·增加书籍,删除书籍,查找书籍,修改书籍信息。2、借阅管理·查找书籍,查看用户借阅图1-系统功能框架结构图2.2本设计概念和处理过程根据客户需求及现实借阅图书过程,在系统在借阅图书过程中,为保护系统稳定与信息安全,用户登录过程要求拥有有身份登陆确认功能,为保证信息安全要求在身份确认时,3次错误输入信息锁定,一天后可在系统管理员处信息解锁确保信息安全。同时在图书借阅时,应拥有检索功能以方便用户查询图书信息。用户提示信息身份确认程序图书借阅数据库图书借还程序图书信息数据库图书检索程序用户资料数据库图
4、2读者借还图书处理流程图管理员提示信息管理员数据库身份确认程序图书信息数据库图书更新程序图3更新图书资料处理流程2.3书管理系统总体设计示意图1、浏览功能·列出当前数据库文件中图书信息、借阅信息等的所有记录。·可选定一项记录,显示所有域。2、查询功能·书目匹配查询3、添加功能·添加图书馆的图书4、修改功能·修改图书信息5、删除功能·删除书籍信息图4书管理系统层次图2.5系统流程图图5图书管理系统程序流程图2.6ER图图书:书号,书名,作者,出版社,定价,总数量,剩余数量管理员:编号,姓名,性别,年龄,电话,密码,
5、身份类别学生:学号,姓名,性别,所属系部,班级,密码,身份类型图6-图书管理系统ER图3输入项和输出项系统登陆模块:输入项:当使用者选择自己的身份,输入相应的账号密码;输出项:当输入的账号密码,存在且正确的时候,就进入了系统,可以看到有关个人和图书的详细信息了。图书信息模块:输入项:查询时输入书籍名称输出项:当该图书信息正确且在书库中时,系统检索到相关信息的书籍,展示到该页面,以供读者参考查阅。借书信息模块输入项:输入读者学号,借阅数量输出项:①当该图书未被借出时,就可以借阅了;②当该图书已被借完,无法借阅该图书
6、。借书信息模块输入项:输入读者学号,所借书籍的书号,借阅数量4流程逻辑点击打开该系统,来到基本界面,选择登陆,并输入相应的账号和密码,系统将账号和密码信息,与数据库中的信息进行比较,如果该账号和密码存在且正确,即登陆成功;如果该账号和密码,不正确,则弹出提示框,提醒重新输入账号和密码,再次与数据库中的信息进行比较。登陆成功之后,可以借阅图书,输入相应的图书信息,系统将所输入的图书信息与数据库中的相应信息进行比较,判断输入信息是否吻合,不吻合则弹出提醒框,要求重新输入,否则显示相关内容。当完成借阅图书操作之后,其他
7、用户则不可再借阅已被借阅图书,只能借阅未被借阅图书。5算法设计在用户登录时采用MD5加密算法降低用户信息泄露的可能性,在图书信息存储上采用数据库形式增加书籍信息的可操作性publicclassMd5{publicfinalstaticStringMD5(Strings){charhexDigits[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};try{byte[]btInput=s.getBytes();//获得MD5摘要算
8、法的MessageDigest对象MessageDigestmdInst=MessageDigest.getInstance("MD5");//使用指定的字节更新摘要mdInst.update(btInput);//获得密文byte[]md=mdInst.digest();//把密文转换成十六进制的字符串形式intj=md.length;charstr[]=newchar