图书馆管理系统详细设计说明文书

上传人:无*** 文档编号:85542756 上传时间:2022-05-05 格式:DOC 页数:19 大小:306.50KB
返回 下载 相关 举报
图书馆管理系统详细设计说明文书_第1页
第1页 / 共19页
图书馆管理系统详细设计说明文书_第2页
第2页 / 共19页
图书馆管理系统详细设计说明文书_第3页
第3页 / 共19页
点击查看更多>>
资源描述
组别组长组员创立日期基于SSH框架的图书管理系统详细设计说明书 递交日期:验收人:验收日期:工作量统计:作者容章节日期签字目录1 引言11.1 编写目的11.2 背景11.3 定义11.4 参考资料12第0层设计描述(Level 0 Design Description)12.1软件系统上下文定义(Software System Context Definition)12.2设计思路 ( Design Considerations)22.2.1设计可选方案(Design Alternatives)22.2.2设计约束Design Constraints23第一层设计描述Level 1 Design Description33.1系统构造System Architecture33.2分解描述Deposition Description33.3依赖性描述Dependency Description43.4接口描述Interface Description44第二层设计描述Level 2 Design Description54.1模块1名称Module Name54.2模块2名称617 / 191 引言1.1 编写目的详细设计的主要任务是设计每个模块的实现算法、所需的局部数据构造。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。1.2 围工程名称:基于SSH框架的图书馆管理系统工程任务提出者:徐康工程经理工程开发者:徐康、谷旷如、严康、费孝喆工程用户:使用该图书管理系统的用户工程运行单位:软件开发小组1.3 定义JavaEE应用的分层模型:Domain Object (领域对象)层:此层出系列的POJO ( Plain Old Java Object,普通的、传统的Java 对象组成,这些对象是该系统的Domain Object, 往往包含了各自所需要实现的业务逻辑方法。DAO (Data Access Object. 数据访问对象)层: 此层由系列的DAO 组件组成,这些DAO实现了对数据库的创立、查询、更新和删除( CRUD ) 等原子操作。业务逻辑层: 此层曲系列的业务逻辑对象组成,这些业务逻辑对象实现了系统所需要的业务逻辑方法。这些业务逻辑方法可能仅仅用于暴露Domain Object 对象所实现的业务逻辑方法,也可能是依赖DAO 组件实现的业务逻辑方法。控制器层:此层出系列控制器组成,这些控制器用于拦截用户请求,并调用业务逻辑组件的业务逻辑方法,处理用户请求,并根据处理结果转发到不同的表现层组件。表现层:此层由系列的JSP 页面、Velocity 页面、PDF 文档视图组件组成,负责收集用户消求,并将显示处理结果。SSH 为 struts2+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。 Struts2:Struts 是全世界最早的MVC 框架,其作者是JSP 规的制定者,并参与了Tomcat 开发,所以Struts从诞生的第一天起,就备受Java EE 应用开发者的青睐。多年来, Struts 确实是Java EE 应用中使用最广泛的MVC 框架, 拥有广泛的市场支持。Struts 框架学习简单, 而且是全世界应用最方便的MVC 框架,所以互联网上充满着大量Struts的学习资料,这使得普通学习者可以非常容易地掌握Struts 的用法。从另一方面来看, Struts 框架毕竟太老了,无数设计上的硬伤使得该框架难以胜任更复杂的需求,于是古老的Struts 结合了另一个优秀的MVC 框架: WebWork,分娩出了全新的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 ), E就是经典Java EE应用的核心,从E 1. 0到E 2.x,许多人觉得 E 非常烦琐, 所以导致E 备受诟病。在这种背景下, Hibernate框架应运而生, Hibernate框架是一种开源的、轻量级的ORM 框架,它允许将普遍的、传统的Java 对象(POJO) 映射成持久化类,允许应用程序以面向对象的方式来操作POJO , 而Hibernate 框架那么负责将这种操作转换成底层的SQL 操作。再后来,Sun 公司果断地抛弃了E 2.X 规,引入了JPA 规。JPA 规其实是一种ORM 规,因此它的底层可以使用Hibernate 、TopLink 等任意一种ORM 框架作为实现。很明显,如果应用程序面向JPA 编程,将可以让应用程序既可利用Hibernate 的持久层技术一一因为可以用Hibernate 作为实现:也可以让应用程序保持较好的可扩展性一一因为可以在各种ORM 技术之间自由切换。采用SSH开发模型,不仅实现了视图、控制器与模型的彻底别离,而且还实现了业务逻辑层与持久层的别离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。1.4 参考资料本工程文件:?需求说明书?概要设计?引用资料:1.?Java Web开发实战经典?兴华 著,等译;清华大学;2012年8月第一版第一次印刷。2.?轻量级J2EE企业应用实战Struts+Spring+Hibernate整合开发?刚著;机械工业;2007年4月第一版第一次印刷。2 第0层设计描述(Level 0 Design Description)2.1 软件系统上下文定义(Software System Context Definition)1. spring是一个轻量级的控制反转loc和面向切面aop的容器框架提供对持久层Persistence、事物Transcation的支持;提供MVC Web框架的实现,并对一些常用的企业效劳APIApplication Interface提供一致的模型封装,是一个全方位的应用程序框架Application Framework,除此之外,对现存的各种框架Structs、JSF、Hibernate、Ibatis、Webwork等,Spring也提供了与他们相整合的方案。spring的 loc 控制反转和依赖注入可以很好的管理工程中实例。2. struts 框架是用来对web页面会话控制的大致功能有: 1获取表单容,并组织生成参数对象 2根据请求的参数转发请求给适当的控制器 3在控制器中调用业务接口 4将业务接口返回的结果包装起来发送给指定的视图,并由视图完成处理结果的展现 5做一些简单校验 3. hibernate 框架是用来完成与数据库交互的,主要功能是将数据持久化或者获取数据库中的持久化数据。系统构造图如下:2.2 设计思路 ( Design Considerations)2.2.1 设计可选方案(Design Alternatives)JavaEE应用的分层模型:Domain Object (领域对象)层:此层出系列的POJO ( Plain Old Java Object,普通的、传统的Java 对象组成,这些对象是该系统的Domain Object, 往往包含了各自所需要实现的业务逻辑方法。DAO (Data Access Object. 数据访问对象)层: 此层由系列的DAO 组件组成,这些DAO实现了对数据库的创立、查询、更新和删除( CRUD ) 等原子操作。业务逻辑层: 此层曲系列的业务逻辑对象组成,这些业务逻辑对象实现了系统所需要的业务逻辑方法。这些业务逻辑方法可能仅仅用于暴露Domain Object 对象所实现的业务逻辑方法,也可能是依赖DAO 组件实现的业务逻辑方法。控制器层:此层出系列控制器组成,这些控制器用于拦截用户请求,并调用业务逻辑组件的业务逻辑方法,处理用户请求,并根据处理结果转发到不同的表现层组件。表现层:此层由系列的JSP 页面、Velocity 页面、PDF 文档视图组件组成,负责收集用户消求,并将显示处理结果。2.2.2 设计约束Design Constraints2.2.2.1 遵循标准Standards pliance系统开发设计符合主流国际、国家的行业标准。2.2.2.2 硬件限制Hardware Limitations建议硬盘空间:大于等于50GB建议存: 大于等于1GB建议CPU: PentiumR DualCore CPU E5300 2.60GHz 网络环境:广域网局域网均可2.2.2.3 技术限制Technology Limitations由于本软件系统除PC外无其他硬件设施,也没有嵌入式编程,所以无法实现自动更新学生借书和还书的过程,仍需工作人员手动完成信息的更新和维护。3 第一层设计描述Level 1 Design Description3.1 系统构造System Architecture3.1.1 系统构造描述Description of the Architecture 系统构造图如下:3.1.2业务流程说明Representation of the Business Flow用户分成三种类型:读者、图书管理员和系统管理员。其中,读者需要通过系统管理员将自己的个人信息注册,才可以登录系统,当读者希望注销自己的信息时,通过系统管理员将自己的个人信息从系统数据库中删除,而图书管理员和系统管理员的用户名和密码是事先预设好的,分别为BookAdministrator 123和SystemAdministrator 123。用户的共同操作是登录。程序流程如下:开场在登录页面,用户输入用户名和密码进展登录,系统从登录页面读取用户的输入信息,在与后台数据库中的信息进展比照,如果比对有误,那么返回登录页面,并提示用户重新登录,比对无误后,根据用户名判断用户身份,如果是普通读者,进入读者页面;如果是图书管理员,那么进入图书管理员页面;如果是系统管理员,那么进入系统管理员页面。系统管理员登录成功后,进入系统管理员页面,假设有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中,供读者查阅;当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除,确保遗失书籍不再被读者查询。当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中,以供新用户日后登录;当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。系统管理员还可以修改自己的登录密码。图书管理员登录成功后,进入图书管理员页面。图书管理员根据读者借还书籍的情况动态的更改书籍的状态信息: (1). 假设某本书籍已被借出,那么将该书的状态从现有或已预订改为已借出,并将该书的持有者改为借书者的用户名; (2). 假设某本已借出书籍已归还,那么将该书的状态从已借出改为现有,并将该书的持有者改为空。当然图书管理员也可以修改自己的登录密码。普通读者成功登陆后,进入读者页面。读者可以修改个人信息如密码,年龄等;可以查询信息,其中包括个人信息、已借书籍信息和图书馆藏书信息,读者查询图书馆藏书信息时,需输入查询的图书名或者关键字,系统从页面读取相应的请求,返回相应的查询结果,对于查询结果显示的书籍,读者可以通过书籍的简介对书籍进展预览,对于状态为现有的书籍可以进展预订操作,被预定的书籍不能被其他读者预订或借出,并且预订该书籍的读者应于三天之前往图书馆借出自己预定的书籍,否那么三天后书籍从预定状态返回至现有状态。3.2 分解描述Deposition Description本系统分为登录模块、读者模块、图书管理员模块和系统管理员模块。3.2.1 登录模块 描述Module/Subsystem 1 Description 1.Overview简介 开场在登录页面,用户输入用户名和密码进展登录,系统从登录页面读取用户的输入信息,在与后台数据库中的信息进展比照,如果比对有误,那么返回登录页面,并提示用户重新登录,比对无误后,根据用户名判断用户身份,如果是普通读者,进入读者页面;如果是图书管理员,那么进入图书管理员页面;如果是系统管理员,那么进入系统管理员页面。 2.Functions功能列表1Login用户通过Login操作登录系统。3.2.2 读者模块 描述Module/Subsystem 2 Description 1.Overview简介读者可以修改个人信息如密码,年龄等;可以查询信息,其中包括个人信息、已借书籍信息和图书馆藏书信息,读者查询图书馆藏书信息时,需输入查询的图书名或者关键字,系统从页面读取相应的请求,返回相应的查询结果,对于查询结果显示的书籍,读者可以通过书籍的简介对书籍进展预览,对于状态为现有的书籍可以进展预订操作,被预定的书籍不能被其他读者预订或借出,并且预订该书籍的读者应于三天之前往图书馆借出自己预定的书籍,否那么三天后书籍从预定状态返回至现有状态。 2.Functions功能列表1查询信息 2预览书籍3预订书籍 4借书5还书6修改个人信息3.2.3 图书管理员模块 描述Module/Subsystem 2 Description 1.Overview简介图书管理员登录成功后,进入图书管理员页面。图书管理员根据读者借还书籍的情况动态的更改书籍的状态信息: (1). 假设某本书籍已被借出,那么将该书的状态从现有或已预订改为已借出,并将该书的持有者改为借书者的用户名; (2). 假设某本已借出书籍已归还,那么将该书的状态从已借出改为现有,并将该书的持有者改为空。当然图书管理员也可以修改自己的登录密码。 2.Functions功能列表1更新图书信息2 修改密码3.2.4 系统管理员模块 描述Module/Subsystem 2 Description 1.Overview简介假设有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中,供读者查阅;当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除,确保遗失书籍不再被读者查询。当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中,以供新用户日后登录;当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。系统管理员还可以修改自己的登录密码。 2.Functions功能列表1增加书籍记录 2删除书籍记录3增加读者账户4删除读者账5修改密码 3.3 依赖性描述Dependency Description1. 只有注册过的用户才能登录系统。2. 只有用户名和密码正确才能成功登录系统,从而完成其他的操作。3. 已被他人预订的书籍不能再被预订或者借出。3.4 接口描述Interface Description3.4.1 读者模块 的接口描述1. 名称:Inquire 说明:读者通过Inquire 接口获取数据库中的图书信息,包括自己已借书籍信息和图书馆藏书信息。 定义: Inquire接口以用户输入的图书名或关键字为参数,根据书名或关键字进展检索。2. 名称:Preview 说明:读者通过Preview接口获取数据库中的图书简介信息。 定义: Preview接口的实现基于Inquire 接口的实现,只有在查询到的图书中选择3.4.2 系统管理员 的接口描述 1. 名称:AddBookItem 说明:当有新书到达图书馆时,系统管理员通过AddBookItem 接口实现数据库中图书信息的添加工作。 定义:系统管理员调用该接口后,读者可以在图书馆系统中检索到该图书的信息。2. 名称:DeleteBookItem说明: 当有书籍遗失时,系统管理员通过调用DeleteBookItem接口,输入遗失的书籍编号,根据书籍编号删除数据库中图书信息。 定义: 系统管理员通过DeleteBookItem接口实现删除图书馆里相关图书信息。 3. 名称:AddUserAccount说明:当有用户注册账号时,系统管理员通过AddUserAccount接口将读者的相关信息录入到图书馆系统数据库中。 定义:系统管理员调用该接口后,读者可以读书管理系统的登录页面上登录。4. 名称:DeleteUserAccount说明:当有用户注销账号时,系统管理员通过DeleteUserAccount接口将读者的信息从系统数据库中删除。 定义: 被删除信息的读者无法登录系统。3.4.3 图书管理员 的接口描述1. 名称:UpdateBookmode 说明:当有读者借书或还书时,图书管理员通过UpdateBookmode接口更改图书的状态信息。 定义::图书管理员通过UpdateBookmode接口实时地更新系统数据库中的图书信息。4 第二层设计描述Level 2 Design Description4.1 用户模块4.1.1 模块设计描述Design Description用户模块可以按照权限的不同分为读者,图书管理员和系统管理员三个子模块。读者,图书管理员和系统管理员三个子类继承了父类用户类的两个属性ID和Key和一个方法ChangeKey4.1.1.1 读者(1) CI Identification标识 基于SSH框架的图书管理系统_用户_读者(2) Overview简介用户登录,系统根据用户输入的用户名和密码判断该用户为普通读者后,系统进入读者页面。读者可以修改个人信息如密码,年龄等;可以查询信息,其中包括个人信息、已借书籍信息和图书馆藏书信息,读者查询图书馆藏书信息时,需输入查询的图书名或者关键字,系统从页面读取相应的请求,返回相应的查询结果,对于查询结果显示的书籍,读者可以通过书籍的简介对书籍进展预览,对于状态为现有的书籍可以进展预订操作,被预定的书籍不能被其他读者预订或借出,并且预订该书籍的读者应于三天之前往图书馆借出自己预定的书籍,否那么三天后书籍从预定状态返回至现有状态。(3) Definition类定义Optional属性:ID、Key、Name、Sex、CertificateNum其中CertificateNum为以防读者忘记自己密码时可以申请获得密码方法: 1. Login读者通过Login实现登录操作,假设读者输入的用户名和密码与数据库息比对无误,那么表示登录成功,系统进入读者页面,否那么,系统再次进入登录页面,提示用户重新登录。 2. Inquire 读者通过Inquire实现查询图书馆现有藏书信息和自己已借书籍的信息。3. ChangeKey 读者通过ChangeKey实现修改自己的登录密码。4. Preview 读者对查询到的书籍,可以通过Preview操作查看该书籍的简介,初步了解书籍的容。5. Schedule读者通过Schedule操作,可以对系统中现有的书籍进展预订,自己预定的书籍其他用户不能再次预订也不能借阅,并且预订该书籍的读者应于三天之前往图书馆借出自己预定的书籍,否那么三天后书籍从预定状态返回至现有状态。6. ChangeInfo 读者通过ChangeInfo实现对自己注册信息的修改。4.1.1.2 图书管理员(1) CI Identification标识 基于SSH框架的图书管理系统_用户_图书管理员 2Overview简介 用户登录,系统根据用户输入的用户名和密码判断该用户为图书管理员后,系统进入图书管理员页面。图书管理员根据读者借还书籍的情况动态的更改书籍的状态信息: (1). 假设某本书籍已被借出,那么将该书的状态从现有或已预订改为已借出,并将该书的持有者改为借书者的用户名; (2). 假设某本已借出书籍已归还,那么将该书的状态从已借出改为现有,并将该书的持有者改为空。当然图书管理员也可以修改自己的登录密码。(3) Definition类定义Optional属性:Key、ID方法:1. Login图书管理员通过Login实现登录操作,假设图书管理员输入的用户名和密码与数据库息比对无误,那么表示登录成功,系统进入图书管理员页面,否那么,系统再次进入登录页面,提示用户重新登录。2. UpdateBookmode 图书管理员通过UpdateBookmode操作,根据书籍的编号检索系统中书籍信息,随之根据实际借还情况动态地更改书籍的状态信息和持有者信息。3. ChangeKey图书管理员通过ChangeKey实现修改自己的登录密码。4.1.1.3 系统管理员1CI Identification标识 基于SSH框架的图书管理系统_用户_系统管理员 2Overview简介用户登录,系统根据用户输入的用户名和密码判断该用户为系统管理员后,系统进入系统管理员页面。假设有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中,供读者查阅;当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除,确保遗失书籍不再被读者查询。当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中,以供新用户日后登录;当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。系统管理员还可以修改自己的登录密码。(3) Definition类定义Optional属性:ID、Key方法:1. Login系统管理员通过Login实现登录操作,假设系统管理员输入的用户名和密码与数据库息比对无误,那么表示登录成功,系统进入系统管理员页面,否那么,系统再次进入登录页面,提示用户重新登录。2. AddBookItem 当有新书需要录入系统时,系统管理员通过AddBookItem将新书录入到本系统中。3. DeleteBookItem 当有书籍遗失时,系统管理员通过DeleteBookItem实现将遗失书籍从数据库中删除。4. AddUserAccount当有用户注册账号时,系统管理员将学生的信息录入系统数据库中。5. DeleteUserAccount当有用户注销账号时,系统管理员将学生的信息从系统数据库中删除。6. ChangeKey 系统管理员通过ChangeKey修改自己的登录密码。4.1.2 功能实现说明Function Illustration假设有新书到达图书馆,系统管理员将新书的所有信息录入系统数据库中,供读者查阅;当图书馆书籍有遗失时,系统管理员将遗失书籍信息从系统中删除,确保遗失书籍不再被读者查询。当有新的读者需要注册时,系统管理员将新用户的信息录入系统数据库中,以供新用户日后登录;当有老用户需要注销系统时,系统管理员将老用户的信息从系统数据库中删除。 时序图如下: 用户登录后可以查询信息,其中包括个人信息、已借书籍信息和图书馆藏书信息,读者查询图书馆藏书信息时,需输入查询的图书名或者关键字,系统从页面读取相应的请求,返回相应的查询结果,对于查询结果显示的书籍,读者可以通过书籍的简介对书籍进展预览,对于状态为现有的书籍可以进展预订操作。时序图如下:4.2 图书模块4.2.1模块设计描述Design Description1CI Identification标识 基于SSH框架的图书管理系统_用户_系统管理员 2Overview简介每次图书类被检索时,都是根据其主键图书编号进展检索。(3) Definition类定义Optional属性:ID、Name、Owner、Author、Summary、Publishment、Mode、Price、Classification其中主键为ID,外键为Owner与读者建立联系。4.2.2功能实现说明Function Illustration
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!