图书馆管理系统-概要设计报告.docx

上传人:大张伟 文档编号:11741576 上传时间:2021-09-02 格式:DOCX 页数:20 大小:462.08KB
返回 下载 相关 举报
图书馆管理系统-概要设计报告.docx_第1页
第1页 / 共20页
图书馆管理系统-概要设计报告.docx_第2页
第2页 / 共20页
图书馆管理系统-概要设计报告.docx_第3页
第3页 / 共20页
图书馆管理系统-概要设计报告.docx_第4页
第4页 / 共20页
图书馆管理系统-概要设计报告.docx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《图书馆管理系统-概要设计报告.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统-概要设计报告.docx(20页珍藏版)》请在三一文库上搜索。

1、组别组长组员创建日期基于SSH框架的图书管理系统概要设计说明书作 者:递交日期:验收人:验收日期:工作量统计:作者内谷(旱下)日期签字目录1弓I言01.1 编写目的01.2 范围01.3 定义01.4 参考资料12总体设计22.1 需求规定22.2 运行环境22.3 基本设计概念和处理流程 22.4 结构 62.5 功能需求与程序的关系 72.6 人工处理过程82.7 尚未解决的问题83接口设计93.1 用户接口 93.2 外部接口 123.2.1 硬件接口 123.2.2 软件接口 123.2.3 通信接口 123.3 内部接口 124运行设计134.1 运行模块组合 134.2 运行控制

2、144.3 运行时间145系统数据结构设计155.1 逻辑结构设计要点 155.2 物理结构设计要点 155.3 数据结构与程序的关系 156系统出错处理设计166.1 出错信息 166.2 补救措施166.3 系统维护设计 171引言1.1 编写目的概要设计的主要任务是根据需求分析,设计软件结构和数据结构。 设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。 数据结构设计包括数据特征的描述、确定数据的结构特性、 以及数据库的设计。概要设计建立的是目标系统的逻辑模型,与计算机无关。1.2 范围项目名称:基于 SSH框架的图书

3、馆管理系统项目任务提出者:徐康(项目经理)项目开发者:徐康、谷旷如、严康、费孝秸项目用户:东南大学苏州研究院学生项目运行单位:软件开发小组1.3 定义JavaEE应用的分层模型:Domain Object (领域对象)层:此层出系列的 POJO ( Plain Old Java Object,普通的、传统 的Java对象组成,这些象是该系统的Domain Object,往往包含了各自所需要实现的业务逻辑方法。DAO (Data Access Object.数据访问对象)层:此层由系列的 DAO 组件组成,这些DAO 实现了对数据库的创建、查询、更新和删除 (CRUD )等原子操作。业务逻辑层:

4、此层曲系列的业务逻辑对象组成,这些业务逻辑对象实现了系统所需要的业务逻辑方法。这些业务逻辑方法可能仅仅用于暴露 Domain Object对象所实现的业务逻辑 方法,也可能是依赖 DAO组件实现的业务逻辑方法。控制器层:此层出系列控制器组成,这些控制器用于拦截用户请求,并调用业务逻辑组 件的业务逻辑方法,处理用户请求,并根据处理结果转发到不同的表现层组件。表现层:此层由系列的JSP页面、Velocity页面、PDF文档视图组件组成,负责收集用 户消求,并将显示处理结果。SSH为struts2+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。Struts

5、2: Struts是全世界最早的 MVC框架,其作者是 JSP规范的制定者,并参与了 Tomcat开发,所以Struts从诞生的第一天起,就备受 Java EE应用开发者的青睐。多年来, Struts确实是Java EE应用中使用最广泛的 MVC框架, 拥有广泛的市场支持。Struts框架学习简单,而且是全世界应用最方便的MVC框架,所以互联网上充斥着大量Struts的学习资料,这使得普通学习者可以非常容易地掌握Struts的用法。从另一方面来看,Struts框架毕竟太老了,无数设计上的硬伤使得该框架难以胜任更复杂的需求,于是古老的Struts结合了另一个优秀的MVC框架:WebWork,分娩

6、出了全新的Struts 2, Struts 2拥有众多优秀的设计,而且吸收了传统Struts和WebWork两者的精华,迅速成为MVC框架中新的王者。Hibernate:传统的Java应用都是采用JDBC来访问数据库的, 但传统的JDBC采用的 是一种基于 SQL的操作方式,这种操作方式与Java语言的面向对象特征不太一致,所以Java EE应用需要一种技术,通过这种技术能让Java以面向对象的方法操作关系数据库。这种特殊的技术就是 ORM (Object Relation Mapping),最早的 ORM 是Entity四B (Enterprise JavaBean ), EJB就是经典 J

7、ava EE应用的核心,从EJB 1.0至U EJB 2.x ,许多人觉 得EJB非常烦琐, 所以导致EJB备受诟病。在这种背景下,Hibernate框架应运而生,Hibernate框架是一种开源的、轻量级的ORM 框架,它允许将普遍的、传统的 Java对象(POJO)映射成持久化类,允许应用程序以面向 对象的方式来操作 POJO ,而Hibernate框架则负责将这种操作转换成底层的SQL操作。再后来,Sun公司果断地抛弃了 EJB 2.X规范,引入了 JPA规范。JPA规范其实是一 种ORM规范,因此它的底层可以使用 Hibernate、TopLink等任意一种 ORM框架作为实现。很明显

8、, 如果应用程序面向 JPA编程,将可以让应用程序既可利用Hibernate的持久层技术一一因为可以用 Hibernate作为实现:也可以让应用程序保持较好的可扩展性一一因为可以在各种 ORM技术之间自由切换。采用SSH开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务 逻辑层与持久层的分离。这样无论前端如何变化, 模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小, 有利于团队成员并行工作,大大提高了开发效率。1.4 参考资料本项目文件:需求说明书引用资料:1. Java Web开发实战经典李兴华 著,陈小平等译;

9、清华大学出版社; 2012年8月 第一版第一次印刷。2.轻量级J2EE企业应用实战 Struts2+Spring3+Hibernate整合开发李刚著;机械 工业出版社;2007年4月第一版第一次印刷。2总体设计2.1 需求规定本图书馆管理系统可以完成一下几个基本功能性需求:1)图书信息的录入和删除(当图书馆有新书到达时,系统管理员将新书的信息录入数据库中,当有图书丢失,则将图书馆中该书的相关信息删除);2)学生信息的录入和删除(系统管理员将新注册学生信息录入系统中,当有学生注销时将该学生的信息从系统数据库中删除);3)图书的租借(包括借书登记、限借数量控制、还书登记);4)图书查询(读者成功登

10、录后可以查询图书馆的图书信息);5)图书预览(对查询到的图书,读者可以进行预览,大概了解书的内容);6)图书借还处理(图书管理员根据读者借还书的情况将系统中书籍的信息更新);2.2 运行环境硬件环境:服务器,服务器工作站,终端为 pc机。运行环境:Windows XP数据库:MySQL 5.0浏览器:IE8以上版本2.3 基本设计概念和处理流程总体设计思维:图书馆管理系统所管理的对象可分为两类:图书和用户。图书图书管理系统里的图书都有如下属性:图书编码书名图书类别作者出版社单价简介状态信息持有者其中图书编码,书名,图书类别,作者,出版社,单价和简介是静态信息,由系统管理 员在新书到达图书馆时一

11、次新录入。而状态信息和持有者是动态信息,需图书管理员根据读者的借还信息不断对其更新。用户分成三种类型:读者、图书管理员和系统管理员。其中,读者需要通过系统管理员将自己的个人信息注册,才可以登录系统,当读者希望注销自己的信息时,通过系统管理员将自己的个人信息从系统数据库中删除,而图书管理员和系统管理员的用户名和密码是事先预设好的,分别为 BookAdministrator 123 和 SystemAdministrator 123 。用户的共同操作是登录。程序流程如下:开始在登录页面,用户输入用户名和密码进行登录,系统从登录页面读取用户的输入信息,在与后台数据库中的信息进行对比,如果比对有误,则

12、返回登录页面,并提示用户重新登录,比对无误后,根据用户名判断用户身份,如果是普通读者,进入读者页面;如果是图 书管理员,则进入图书管理员页面;如果是系统管理员,则进入系统管理员页面。登录流程如下:系统管理员登录成功后,进入系统管理员页面,若有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中,供读者查阅;当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除,确保遗失书籍不再被读者查询。当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中,以供新用户日后登录;当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。系统管理员还可以修改自己的登录密码。系统管

13、理员的操作如下:1. AddBookItem当有新书需要录入系统时,系统管理员通过AddBookItem将新书录入到本系统中。2. DeleteBookItem当有书籍遗失时,系统管理员通过DeleteBookItem将遗失书籍从数据库中删除。3. AddUserAccount当有用户注册账号时,系统管理员将学生的信息录入系统数据库中。4. DeleteUserAccount当有用户注销账号时,系统管理员将学生的信息从系统数据库中删除。5. ChangeKey系统管理员通过ChangeKey修改自己的登录密码。最新范本,供参考!图书管理员登录成功后,进入图书管理员页面。图书管理员根据读者借还书

14、籍的情况动 态的更改书籍的状态信息:并将该书的(1) .若某本书籍已被借出,则将该书的状态从现有或已预订改为已借出, 持有者改为借书者的用户名;(2) .若某本已借出书籍已归还,则将该书的状态从已借出改为现有,并将该书的持有 者改为空。当然图书管理员也可以修改自己的登录密码。图书管理员操作:1. UpdateBookmode图书管理员通过UpdateBookmode操作,根据书籍的编号检索系统中书籍信息,随之根据实 际借还情况动态地更改书籍的状态信息和持有者信息。2. ChangeKey图书管理员通过ChangeKey修改自己的登录密码。图书管理员登录后流程如下:普通读者成功登陆后,进入读者页

15、面。读者可以修改个人信息(如密码,年龄等);可以查询信息,其中包括个人信息、 已借书籍信息和图书馆藏书信息,读者查询图书馆藏书信息时,需输入查询的图书名或者关键字,系统从页面读取相应的请求,返回相应的查询结果,对于查询结果显示的书籍,读者可以通过书籍的简介对书籍进行预览,对于状态为现有的书籍可以进行预订操作,被预定的书籍不能被其他读者预订或借出,并且预订该书籍的读者应于三天之内前往图书馆借出自己预定的书籍,否则三天后书籍从预定状态返回至现有状态。读者操作有:1.Inquiry读者通过Inquiry可以查询查询图书馆现有藏书信息和自己已借书籍的信息。2.Preview读者对查询到的书籍,可以通过

16、Preview操作查看该书籍的简介,初步了解书籍的内容。3. Schedule读者通过Schedule操作,可以对系统中现有的书籍进行预订,自己预定的书籍其他用 户不能再次预订也不能借阅, 并且预订该书籍的读者应于三天之内前往图书馆借出自己预定 的书籍,否则三天后书籍从预定状态返回至现有状态。4. Borrow读者通过Borrow操作从图书馆借走所需书籍。5. Return读者通过Return操作将所借书籍归还图书馆。读者程序流程如下:K个人信见件时广与糠11信思I PIM I附思.n乌H在沏轴口 :(竹烟H仔血站贝M:修改T人左息:预订成功后,::入内附疔:卜借出伊帚川 以消划”):的I”白

17、的林 成美怔字出也 -晌觥Jr it JJ-a c对于田I渊现中H ff的懂枯H以预定顿运旗功吊一-:i 龙内片巾 M日定书&2.4结构系统未登录用户主界面登录- 读者主界面图书检索图书预览图书预约信息查询修改个人信息查看个人信息图书管理员主界面还书处理借书处理修改密码- 系统管理员主界面书籍管理书籍信息删除书籍信息添加用户管理用户信息删除用户信息添加修改密码系统层次结构如下:2.5 功能需求与程序的关系登录图书检索图书 预览图书 预约已借 书籍 信息 查询个人 信息 管理借、还 书处 理书籍 管理用户 管理注册V注销V登录V新书到馆V书籍遗失V修改密码V查看个人信息V修改个人信息V查询图书V

18、图书预览VV图书预订VV图书借出V图书归还V查询已借书籍 信息V2.6 人工处理过程1 .当有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中;2 .当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除3 .当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中;4当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。5.若某本书籍已被借出,图书管理员将该书的状态从现有或已预订改为已借出;6若某本已借出书籍已归还,图书管理员将该书的状态从已借出改为现有。2.7尚未解决的问题在登录页面的空余版面显示一些事实的消息,本小组成员根据以往高校的图书管理系统的提

19、议,技术方面还有待学习和讨论,暂时未列入概要设计中。3接口设计3.1 用户接口3.1.1 登录模块登录界面:提供命令:用户输入的用户名和密码,登录按钮系统应答信息:点击登录按钮,若用户名和密码与数据库中对比无误,则系统将跳转至相应权限的用户主界面,权限将依据登录的用户名来进行判断;若用户输入的用户名和密码和数据库中的对比有误,则系统返回登录页面提示用户重新登录。3.1.2 读者模块3.1.2.1 修改个人信息提供命令:修改个人信息按钮,确认修改按钮,返回主页面按钮系统应答信息:读者点击修改个人信息按钮,进入修改个人信息页面,显示读者的个人信息,读者修改完后科点击确认按钮完成修改,返回修改成功;

20、读者点击返回主页面按钮,返回读者页面。3.1.2.2 查看个人信息提供命令:查看个人信息按钮,确认按钮系统应答信息:读者点击查看个人信息按钮,进入查看个人信息页面,显示读者的个人信息,读者修改完后科点击确认按钮,返回读者页面。3.1.2.3 查询已借书籍信息提供命令:查询已借书籍信息按钮,确认按钮系统应答信息:读者点击查询已借书籍信息按钮,进入查询已借书籍信息页面,显示读者已借书籍信息(书名,图书编码,剩余天数等);读者修改完后科点击确认按钮,返回读者页面。3.1.2.4 查询图书馆藏书信息提供命令:查询图书馆藏书信息按钮,读者输入想要查询的书名或关键字,查询按钮,返回主页面按钮。系统应答信息

21、:读者点击查询图书馆藏书信息按钮, 进入查询书籍页面,读者输入想要 查询的书名或关键字后, 点击查询按钮,系统返回图书管理系统中相应的图书信息。 读者点 击返回主页面按钮后,系统返回读者页面。3.1.2.5 查询图书馆藏书信息提供命令:查询图书馆藏书信息按钮,读者输入想要查询的书名或关键字,查询按钮, 预定该书按钮,返回主页面按钮。系统应答信息:读者点击查询图书馆藏书信息按钮,进入查询书籍页面,读者输入想要查询的书名或关键字后,点击查询按钮,系统返回图书管理系统中相应的图书信息。读者选中想要预定且状态为现有的书籍,点击预定该书籍按钮,系统返回“请在三天内前往图书馆借得该书”,表示预定成功,读者

22、点击返回主页面按钮,系统返回读者页面。3.1.2.6 预览图书提供命令:查询图书馆藏书信息按钮,读者输入想要查询的书名或关键字,查询按钮, 预览书籍按钮,返回主页面按钮。系统应答信息:读者点击查询图书馆藏书信息按钮, 进入查询书籍页面,读者输入想要 查询的书名或关键字后,点击查询按钮,系统返回图书管理系统中相应的图书信息, 对于有 简介的书籍,读者可以点击预览按钮,系统显示该书的简介信息供读者浏览。 读者点击返回 主页面按钮后,系统返回读者页面。3.1.3 图书管理员模块3.1.3.1 更新图书状态提供命令:更新图书状态按钮,图书管理员输入需要更改状态的图书编号,确定按钮, 对图书状态信息进行

23、更改,确认更改按钮,返回主页面按钮。系统应答信息:图书管理员点击更新图书状态按钮,进入更新图书状态页面,图书管理员输入需要更改状态的图书编号,点击确定按钮,系统返回相应的图书信息,图书管理员根据实际情况对图书状态信息做出更改(若某本书籍已被借出,则将该书的状态从现有或已预订改为已借出,并将该书的持有者改为借书者的用户名;若某本已借出书籍已归还,则将该书的状态从已借出改为现有,并将该书的持有者改为空);然后点击确认更改按钮,系统返回更新成功,图书管理员点击返回主页面按钮,系统返回图书管理员页面。3.1.3.2 修改密码提供命令:修改密码按钮,图书管理员输入新的密码,确认修改按钮,返回主页面按钮。

24、系统应答信息:图书管理员点击修改密码按钮,系统进入修改密码页面,图书管理员输入新的密码,然后点击确认修改按钮,返回修改成功,图书管理员点击返回主页按钮,系统返回图书管理员页面。3.1.4 系统管理员模块提供命令:添加书籍信息按钮,系统管理员输入新书信息,确认添加按钮,返回主页面按钮。系统应答信息:图书管理员点击添加书籍信息按钮,系统进入添加书籍信息页面,图书管理员输入新书信息,然后点击确认添加按钮,返回添加成功,系统管理员点击返回主页按 钮,系统返回图书管理员页面。3.1.4.1 删除书籍信息提供命令:删除书籍信息按钮,系统管理员输入需要删除的图书编码,确定按钮,确认删除按钮,返回主页面按钮。

25、系统应答信息:图书管理员点击删除书籍信息按钮,系统进入删除书籍信息页面,图书最新范本,供参考!管理员输入入需要删除的图书编码,然后点击确定按钮,系统返回所需删除的书籍的所有信息,系统管理员点击确认删除按钮,系统返回添加成功, 系统管理员点击返回主页按钮,系 统返回图书管理员页面。3.1.4.2 添加读者信息提供命令:添加读者信息按钮,系统管理员输入新注册读者信息,确认添加按钮,返回主页面按钮。系统应答信息:图书管理员点击添加读者信息按钮,系统进入添加读者信息页面,图书 管理员输入新注册读者信息, 然后点击确认添加按钮, 返回注册成功,系统管理员点击返回主页按钮,系统返回图书管理员页面。3.1.

26、4.3 删除读者信息提供命令:删除读者信息按钮, 系统管理员输入需要注销的读者用户名,确定按钮,确 认删除按钮,返回主页面按钮。系统应答信息:图书管理员点击删除读者信息按钮,系统进入删除读者信息页面,图书管理员输入入需要注销的读者用户名,然后点击确定按钮,系统返回所需注销的读者用户的所有信息,系统管理员点击确认删除按钮,系统返回注销成功, 系统管理员点击返回主页按钮,系统返回图书管理员页面。3.1.4.4 修改密码提供命令:修改密码按钮,系统管理员输入新的密码,确认修改按钮,返回主页面按钮。系统应答信息:系统管理员点击修改密码按钮, 系统进入修改密码页面, 系统管理员输 入新的密码,然后点击确

27、认修改按钮,返回修改成功,系统管理员点击返回主页按钮,系统返回系统管理员页面。3.2 外部接口3.2.1 硬件接口图书馆要有服务器用户使用可上网的终端:PC机3.2.2 软件接口数据库:MySql 5.5开发工具:MyEclipse 6.0服务器:Tomcat 7.0开发环境:jdk 6.0架构:struts2操作系统:Windows XP33.2.3 通信接口TCP/IP3.3 内部接口该图书馆管理系统采用SSH架构,即Structs、Spring、Hibernate三层架构。页面使用JSP技术,建立在表示层Structs上,传递的数据将被 Structs截获并通过Spring映射进而传递至

28、底层进行处理。底层调用Hibernate架构的功能与数据库进行数据的通信与交换并按功能要求对数据进 行进一步的加工,通过 Spring映射返回至Structs并有计划的显示在页面上。总而言之,系统的元素大致可分为页面元素、Structs元素、Spring元素、底层元素、Hibernate元素和数据库元素,其接口的安排如下图所示:4运行设计4.1 运行模块组合1 . spring是一个轻量级的控制反转(loc)和面向切面(aop)的容器框架提供对持久层 (Persistence)、事物(Transcation的支持;提供 MVC Web框架的实现,并对一些常用的企 业服务 API (Applic

29、ation Interface)提供一致的模型封装,是一个全方位的应用程序框架 (Application Framework ),除此之外,对现存的各种框架(Structs、JSF、Hibernate、Ibatis、Webwork等),Spring也提供了与他们相整合的方案。spring的loc控制反转和依赖注入可以很好的管理项目中实例。2 . struts框架是用来对 web页面会话控制的大致功能有:3 1)获取表单内容,并组织生成参数对象(2)根据请求的参数转发请求给适当的控制器(3)在控制器中调用业务接口(4)将业务接口返回的结果包装起来发送给指定的视图,并由视图完成处理结果的展现(5)

30、做一些简单校验3.hibernate框架是用来完成与数据库交互的,主要功能是将数据持久化或者获取数据库 中的持久化数据。系统结构图如下:置公1 (睁修生TUk: 1户止将互 用界交 曼京I?的HI A 问博Y肿,4.2 运行控制该图书管理系统运行控制方式以按钮点击为主,用户只需点击按钮即可。用户点击按钮时,系统先将判断此次点击操作的前置条件是否符合规范要求,若不符合规范则提醒用户前置条件不合格并给出不合格细节,此时系统将不进行任何动作,此时用户将有两种选择:更改前置条件后再次点击或退出该功能。如果符合规范,系统将自动进行数据的传递和相应模块功能的调用,完成用户希望系统所完成的功能。4.3 运行

31、时间系统运行时间的具体计算将由后续的详细设计进行,在此提出指导思想为尽量将时间复杂度限制在保持在线性范围内。5系统数据结构设计5.1 逻辑结构设计要点简介、状态信息、持有者图书:图书编码、书名、图书类别、作者、出版社、单价、 其中图书编码为主键,持有者为外键。读者:用户名(学号),姓名,性别,身份证号,密码 其中用户名为主键。5.2 物理结构设计要点学生图书名号统码别姓学系密性号者介命态格别学作简出状价类varchar(4) intid varchar(10) varchar(16) char(1)图书管理员id verrchar (10) 3k p/d varchar(15)系统管理员var

32、char(10) pwd varchar(16)varchar(20)intvarchar(15) longtext varchar(20)varchar floatvarchar(10)5.3 数据结构与程序的关系登录图书检 索图书预 览图书预 约已借书 籍信息 查询个人信 息管理借、还 书处理书籍 管理用户 管理图书编码VVVVV书名VVVV图书类别VVVV作者VVVV出版社VVVV单价VVVV简介VV状态信息VVVVV持后后VVVVV用户名VVVV姓名VV性别VV身份证号VV密码VVV6系统由错处理设计6.1 由错信息用一览表的方式说朗每种可能的出错或故障情况出现时,系统输出信息的形式、

33、含意及处理方法。6.2 补救措施说明故障出现后可能采取的变通措施,包括:a.后备技术:说明准备采用的后备技术,当原始系统数据万一丢失时启用的副本的建立和启动的技术,例如周期性把磁盘信息记录到磁带上去就是对于磁盘媒体的一种 后备技术;b.降效技术:说明准备采用的后备技术,使用另一个效率稍低的系统或方法来求得所 需结果的某些部分,例如一个自动系统的降效技术可以是手工操作和数据的人工记录;c.恢复及再启动技术:说明将使用的恢复再启动技术,使软件从故障点恢复执行或使软件从头开始重新运行的方法。6.3 系统维护设计说明为了系统维护的方便而在程序内部设计中作出的安排,包括在程序中专门安排用于系统的检查与维护的检测点和专用模块。【本文档内容可以自由复制内容或自由编辑修改内容期待你的好评和关注,我们将会做得更好】

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1