图书管理系统概要设计.docx
- 文档编号:4927371
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:41
- 大小:567.50KB
图书管理系统概要设计.docx
《图书管理系统概要设计.docx》由会员分享,可在线阅读,更多相关《图书管理系统概要设计.docx(41页珍藏版)》请在冰豆网上搜索。
图书管理系统概要设计
图书管理系统概要设计
V1.0
评审日期:
2014年4月7日
1.导言
1.1目的
该文档的目的是描述图书管理系统项目的概要设计,其主要内容包括:
●系统功能简介
●系统结构设计
●系统接口设计
●数据设计
●模块设计
●界面设计
本文档的预期的读者是:
●开发人员
●项目管理人员
●测试人员
1.2范围
该文档定义了系统的结构和单元接口,但未确定单元的实现方法,这部分内容将在详细设计/实现中确定。
1.3缩写说明
JSP
JavaServerPage(Java服务器页面)的缩写,一个脚本化的语言。
MVC
Model-View-Control(模式-视图-控制)的缩写,表示一个三层的结构体系。
EJB
Enterprise Java Bean(企业级JavaBean)的缩写。
1.4术语定义
JSPModel2
Servlet/JSP规范的0.92版本中描述的术语,定义了如何在同一个应用程序中联合使用Servlet和JSP的体系结构。
JavaBean
用Java语言实现的满足一定功能的类。
1.5引用标准
[1]《企业文档格式标准》
北京长江软件有限公司
[2]《软件概要设计报告格式标准》
北京长江软件有限公司软件工程过程化组织
1.6参考资料
[1]《实战struct》〔美〕Ted Husted
机械工业出版社
[2]《软件重构》
清华大学出版社
1.7版本更新信息
本文档的更新记录如表B-1所示。
表B-1版本更新记录
修改编号
修改日期
修改后版本
修改位置
修改内容概述
000
2014.4.5
0.1
全部
初始发布版本
001
2014.4.7
1.0
全部
修改管理模块的设计
2.系统分析
用户端登录子系统
HR
管理者端子系统图示
3.界面设计
4.体系结构
系统的总体结构设计遵循如下原则:
1)系统应具有良好的适应性:
能适应用户对系统的软件环境、管理内容、模式和界面的要求;
2)系统应具有可靠性:
采用成熟的技术方法和软件开发平台,以保证在以后的实际应用中安全、可靠;
3)系统应具有较好的安全性:
应提高完善的安全机制和用户权限限制机制,确保数据的受限访问;
4)系统应具有良好的可维护性:
系统应易于维护、安装;
5)系统应具有良好的可扩展性:
系统应适应未来信息化建设的要求,能方便得进行功能扩展,以建立完善的信息集成管理体系。
本系统采用struts体系结构,Struts是一个基于模型(Model)-视图(View)-控制器(Controller)(MVC)模式的应用架构的开源框架。
4.1体系结构
目前软件项目中有很多的体系结构,其中struct是比较流行的一种。
4.1.1Struct体系结构
对于开发Web应用,要从头设计并开发出一个可靠、稳定的框架不是一件容易的事情,随着Web开发技术的日趋成熟,在web开发领域出现了一些现成的优秀的框架,开发者可以直接使用它们,struct就是一个很好的框架结构,它是在JSPModel2基础上实现的一个MVC框架,它可以使你不必要从头开始全部开发组件,对于大项目更是很好的。
在Strcut框架中模型由实现业务逻辑的JavaBean或者EJB组件构成,控制器由ActionSevelet和Action来实现,视图由一组JSP文件组成,图B-5显示了Struct实现的MVC框架。
其中:
视图:
就是一组JSP文件,这些JSP文件没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或者是客户化标签,如Struct标签库的标签。
此外,通常将Strcut框架中的ActionFormBean也划为视图模块中,ActionFormBean是一种JAVABEAN,除了具有一些JAVABean的常规方法外,还包含了一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置默认值。
Struct框架利用ActionFormBean来进行视图和控制器之间表单数据的传递。
Strcut框架将用户输入的表单数据保存在ActionFormBean中,将它传递给控制器,控制器可以对ActionFormBean中的数据进行修改,JSP文件使用Strcut标签读取修改后的ActionFormBean的信息,重新设置HTML表单。
控制器:
控制器由ActionServlet类和Action类实现,ActionServlet类是Struct框架中的核心组件。
是这个MVC的中央控制器的角色,ActionServlet主要负责接收HTTP请求的信息,根据配置文件struct-config.xml的配置信息,将请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Action对象。
Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程,对于小型简单的应用,Action类本身也可以完成一些实际的业务逻辑。
模型:
模型表示应用程序的状态和业务逻辑,业务逻辑常常由JavaBean或者EJB组件实现。
如果在Web应用开发中套用现成的Struct框架,可以简化每个开发阶段的工作,开发人员可以更加有针对性地分析应用需求,不必重新设计框架,只需在Struct框架的基础上,设计MVC各个模块包含的具体组件,在编码过程中,可以充分利用Struct提供的各种实用类和标签库,简化编码工作。
Struct框架可以方便迅速地将一个复杂的应用划分成模型、视图和控制器组件,而Struct的配置文件struct-config.xml可以灵活地组装这些组件,简化开发过程。
4.1.2系统体系结构
根据系统分析结果,该系统从结构上应满足:
●基于浏览器进行显示以方便用户使用;
●采用MVC的三层体系结构,分化各个功能组件;
●采用JDBC技术与数据库通讯以便于数据库的转换;
●采用标签技术完成动态页面的简单逻辑。
本系统的体系结构如图B-6,它基本遵循了struct体系的MVC框架规范。
图B-6:
系统的体系结构
其中:
表示层:
用于与用户进行交互以及显示结果。
包括所有的JSP,提供用户界面,接受用户输入,还包括相应的ActionFromBean,用来存放表单数据,并进行表单数据验证。
控制层:
包括所有的Action类,它完成三项任务:
一是进行业务逻辑验证,二是调用模型组件,三是决定将合适的视图组件返回给用户。
模型:
进行逻辑处理的JavaBean等。
数据库采用ODBC技术以提供数据库的可移植性
体系结构的具体拓扑图示如图B-7。
图B-7:
结构拓扑图
客户层主要是指用户登录的Web浏览器;中间层负责平台的业务逻辑处理和表示逻辑生成;服务层提供底层的信息数据库服务器。
1.客户层:
用于与企业信息系统的用户进行交互以及显示根据特定业务规则进行计算后的结果。
本系统将完全采用基于WEB的(B/S架构)客户端,即用户可以直接通过浏览器来访问和使用本系统。
2.中间层:
这相当于三层标准架构中的Web应用服务层,支持诸如响应客户请求以及查询等功能。
并且由中间层进行逻辑处理,再处理的结果反馈给客户或者发送到数据库中。
3.服务层:
主要是数据库系统,这里的数据库系统主要是关系数据库系统(RDMS)。
4.2系统运行环境
系统运行的网络结构图、硬件软件环境图如下。
4.2.1 网络结构图
本系统的网络拓构图如图B-8:
图B-8:
系统的网络拓扑图
图B-8:
系统的网络拓扑结构图
其中的局域网用户机主要是公司内部的人员可以使用的机器,远程用户机主要是指通过互联网登录系统的人员使用的机器,可以是公司内部的人,也可以是应聘者。
4.2.2硬件环境
本系统的硬件环境如下:
●客户机:
普通PC
⏹CPU:
P41.8GHz以上
⏹内存:
256MB以上
⏹能够运行IE5.0以上或者Netscape4.0以上版本的机器
⏹分辨率:
推荐使用1024*768像素
●WEB服务器
⏹CPU:
P42.0GHz
⏹内存:
1G以上
⏹硬盘:
80G以上
⏹网卡:
千兆
●数据库服务器
⏹CPU:
P42.0GHz
⏹内存:
1G以上
⏹硬盘:
80G以上
4.2.3软件环境
本系统的的软件环境如下:
●操作系统:
Unix/Linux/windows2000或以上版本
●数据库:
SQLServer2000
●开发工具包:
JDKVersion1.4.2
●开发环境:
eclipse-SDK-3.1.2-win32
●Web服务器:
Tomcat
●浏览器:
IE6.0以上
(1)数据库及操作系统:
对于核心数据库来说,选择一个合适的数据库系统对我们的系统运行是很重要的,选择数据库的关键因素是要考虑预计会有多少人同时访问数据库;正常工作时间的级别;用来访问数据库的应用程序的类型;运行数据库的服务器的硬件和操作系统类型;以及管理人员的专业技术水平。
目前市场上适用于中小型企业的数据库产品有IBMDB2、MicrosoftSQLServer系列、Oracle系列。
所有这些产品都基于SQL语言。
同时,它们还拥有精密复杂的安全控制以适应不同的商业需要。
服务器操作系统使用Windows2000Server系统。
考虑到价格因素、易用性,我们使用SQLSERVER2000作为系统后台数据库系统,服务器操作系统采用Windows2000Server。
(2)WEB服务软件:
目前的WEB服务器软件有很多种,成熟而且稳定有Apache、Tomcat和Microsoft的IIS,它们也是占据着Web服务器市场最大的份额。
Tomcat是Sun和Apache合作做出来的JSPServer,支持Servlet2.2及JSP1.1等版本。
而且Tomcat未来将会取代Jserv,成为Apache主要的Servlet&JSPEngine。
Tomcat在设计上是以独立的Server执行,而不像Jserv是附在Apache中,这样就更可以发挥在servlet中,非HttpServlet的能力。
Tomcat是Java程序,所以只要有JDK就可以使用,不需要考虑操作系统平台。
因此选择Tomcat作为WEB服务器。
5.数据模型
本系统的数据模型主要是进行数据库的设计。
5.1数据库的概念结构模型设计
概念设计以反映现实世界中的实体、属性和它们之间的关系等的原始数据形式,建立数据库的每一幅用户视图。
图6.21是系统E-R图。
其中系统中的管理用户
5.2数据库的逻辑结构模型设计
数据库的逻辑设计是将各局部的E-R图进行分解、合并后重新组织起来形成数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构、所建立的各个数据之间的相互关系。
5.3数据库管理物理结构模型设计
信息存储结构的设计在系统的设计中至关重要,要考虑到数据冗余、系统执行效率、信息控制以及维护等方面的要求。
信息的管理离不开数据库的支持,我们采用SQLServer2000数据库管理系统。
数据库的物理设计主要是对数据在内存中的安排,包括对索引区、缓冲区的设计;对使用的外存设备及外存空间的组织,包括索引区、数据块的组织与划分;设置访问数据的方式方法。
需在非系统卷(操作系统所在卷以外的其他卷)上安装SQLServer程序及数据库文件。
内存是影响MicrosoftSQLServer系统性能的一个重要因素,应在MicrosoftSQLServer数据库安装后进行内存选项(Memory)设置,最大配置值为2GB。
为了确定SQLServer系统最适宜的内存需求,可以从总的物理内存中减去Windows2000server需要的内存(120M)以及其它一些内存需求后综合确定,理想的情况是给SQLServer分配尽可能多的内存,而不产生页面调度。
设置服务器的虚拟内存为1G。
对Sql属性配置如图B-11所示。
图B-11SQL内存配置图
通过ADO对象提供的OLEDB接口与数据库连接。
1、首先建立创建Connection对象
SqlDatabaseName="WSZP"
SqlPassword="xxxxxxxx"
SqlUsername="sa"
SqlLocalName="xx.xx.xx.xx"
ConnStr="Provider=Sqloledb;UserID="&SqlUsername&";Password="&SqlPassword&";InitialCatalog="&SqlDatabaseName&";DataSource="&SqlLocalName&";"
setcnn=server.createobject("ADODB.Connection")
cnn.openConnnStr
2、不直接打开recordset记录集,充分利用连接池
Setrs=Server.CreateObject("ADODB.Recordset")
rs.OpenSQL,cnn
Setrs1=Server.CreateObject("ADODB.Recordset")
rs1.OpenSQL,cnn
这种打开连接池的方式可以节省数据库服务器的内存资源。
3、使用记录集后,最早的时间释放数据库资源
Rs.close
setrs=nothing
cnn.close
setcnn=nothing
本项目中后台数据库采用SQLSever数据库系统。
数据库各库表的脚本代码见数据库脚本文件。
6.模块设计
按照功能分解,本系统分为管理系统和查询系统。
结构
功能块编号:
01
功能块名称:
读者基本信息
所属类别
B1
所需数据:
读者的个人基本信息(编号,姓名,性别,身份证号,单位,读者类型,联系电话,家庭住址,卡号,状态,读者类型,打折率)
输出数据:
操作提示信息
详细操作说明:
帐户开户时由管理员录入读者的各种基本信息以及读者类型。
管理人员点击“新增”录入提示的各类读者的个人基本信息,点击“保存”让录入数据保存如数据库,如录入错误可以点击“删除”重新录入,如要知道某读者信息,点击“查询”,录入编号或姓名等唯一的信息,点击“确定”,如读者的卡丢失,由管理员对其卡进行“挂失”,找回可以找管理员对其卡进行“解挂”,,如要知道某读者信息,点击“查询”,录入编号或姓名等唯一的信息,点击“确定”。
实现功能:
1.新增2.保存3.删除4.挂失5.解除挂失6.查询
特殊要求:
功能块编号:
02
功能块名称:
读者类别信息
所属类别
B1
所需数据:
读者类别信息(类别名,借书限期,借阅数量限制)
输出数据:
操作提示信息
详细操作说明:
设置所有读者的类型,供录入读者基本信息和借书时使用。
由管理员定义其类别,点击“新增”录入类别信息,点击“保存”保存入数据库,错误点击“删除”
实现功能:
1.新增2.保存3.删除
特殊要求:
功能块编号:
01
功能块名称:
图书类型的设置
所属类别
C1
所需数据:
所有图书的被划分成的类别。
如:
科技类、文学类等
输出数据:
设置是否成功
详细操作说明:
设置所有的图书总体的种类,即为图书划分类别,供录入图书的基本资料时使用。
所执行的操作有:
新增删除保存
特殊要求:
无特殊要求
功能块编号:
02
功能块名称:
出版社的设置
所属类别
C1
所需数据:
所有出版社的名称,即所有的图书是由那些出版社出版的。
输出数据:
设置是否成功
详细操作说明:
输入所有的出版社的名称,供录入图书的基本资料时使用。
所执行的操作有:
新增删除保存
特殊要求:
无特殊要求
功能块编号:
03
功能块名称:
图书的基本资料管理
所属类别
C1
所需数据:
图书编号,存放位置,书名,类别,作者,出版社,出版日期,页数,ISBN码,入库时间,图书价格,图书打折率,状态,单位租金,借出次数。
***[]为系统自动添加的***
输出数据:
打折后价格,输出操作是否成功的提示
详细操作说明:
当有新书到货时,由系统管理员录入图书所需的信息。
如输入有误执行修改或删除,但确定无误后执行保存操作。
在输入图书类别、出版社时由系统列出所选项,由系统管理员选择。
图书打折率、状态、借出次数由系统自行添加。
所执行的操作有:
新增删除保存
特殊要求:
无特殊要求
功能块编号:
04
功能块名称:
图书的报损
所属类别
C1
所需数据:
报损图书的编号、名称、类别、数量、总金额、报损原因、入库时间
输出数据:
报损图书的编号、名称、类别、数量、总金额、报损原因、入库时间
详细操作说明:
通过仓库的盘点,得到总体的图书报损情况:
报损图书的编号、名称、类别、数量、总金额、报损原因、入库时间
所执行的操作有:
新增删除保存
特殊要求:
功能块编号:
05
功能块名称:
图书的注销
所属类别
C1
所需数据:
图书编号,存放位置,书名,类别,作者,出版社,出版日期,页数,ISBN码,入库时间,图书价格,图书打折率,状态,单位租金,借出次数。
输出数据:
操作提示
详细操作说明:
在录入一些图书的资料后,过段时间可能有些书也报损,丢失,或者是已过时,可以注销掉,就删除他的基本资料.
所执行的操作有:
新增删除保存
特殊要求:
功能块编号:
07
功能块名称:
图书的采购.验收
所属类别
C1
所需数据:
图书编号,书名,类别,作者,出版社,出版日期,页数,ISBN码,入库时间,图书价格,销售数量,库存数量,图书打折率,操作员编码
输出数据:
操作提示和生成采购表单、当前日期和时间、操作员编码
详细操作说明:
操作员通过库存的信息生成图书相应的采购单据,当图书到货时,管理员对到货单句验收。
所执行的操作有:
新增删除保存
特殊要求:
无
功能块编号:
01
功能块名称:
图书借阅
所属类别
E1
所需数据:
读者信息,图书信息,押金信息
输出数据:
详细操作说明:
读者要求借阅指定图书,查询图书信息和读者信息,收取读者押金,并借书给读者,如果上期已借阅,押金可延用上次押金
特殊要求:
功能块编号:
02
功能块名称:
图书继借
所属类别
E1
所需数据:
读者信息,已借图书信息,续借图书信息,押金信息
输出数据:
读者应付租金,已借图书信息
详细操作说明:
读者要求续借,查询图书信息,结算上期金额,续借书给读者
特殊要求:
功能块编号:
03
功能块名称:
图书归还
所属类别
E1
所需数据:
读者信息,图书信息,
输出数据:
读者应付租金,应退押金
详细操作说明:
读者还书,查询读者所有的借书信息,确定读者还书信息正确,进行还书操作,收取对应租金并退还押金
特殊要求:
功能块编号:
04
功能块名称:
图书丢失
所属类别
E1
所需数据:
读者信息,图书信息,读者应付赔偿金额,
输出数据:
退还读者金额信息
详细操作说明:
根据读者信息查询他所有借的书的信息,根据图书信息确定被丢失的书,将丢失的书记录,将将可租书中的信息移出
特殊要求:
功能块编号:
01
功能块名称:
图书基本资料查询
所属类别
G1
所需数据:
图书基本资料(图书基本资料表)
输出数据:
图书基本资料
详细操作说明:
录入所要查询的一个或者多个字段,点击“查询”,系统通过录入字段查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
02
功能块名称:
图书借阅查询
所属类别
G1
所需数据:
图书借阅(图书借阅表)
输出数据:
时间段(点)内或者读者个人借阅资料
详细操作说明:
录入所要查询的一个或者多个字段和时间段,点击“查询”,系统通过录入字段和时间段(点)查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
03
功能块名称:
图书归还查询
所属类别
G1
所需数据:
图书归还(图书归还表)
输出数据:
时间段(点)内或者读者个人图书归还资料
详细操作说明:
录入所要查询的一个或者多个字段和时间段,点击“查询”,系统通过录入字段和时间段(点)查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
04
功能块名称:
图书借阅超期查询
所属类别
G1
所需数据:
图书借阅超期(图书借阅表)
输出数据:
时间段(点)内或者读者个人借阅超期的借阅资料
详细操作说明:
录入所要查询的一个或者多个字段和时间段,点击“查询”,系统通过录入字段和时间段(点)查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
05
功能块名称:
图书注销查询
所属类别
G1
所需数据:
图书注销(图书注销表)
输出数据:
时间段(点)内或者单一图书注销资料
详细操作说明:
录入所要查询的一个或者多个字段和时间段,点击“查询”,系统通过录入字段和时间段(点)查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
06
功能块名称:
图书丢失查询
所属类别
G1
所需数据:
图书丢失(图书丢失表)
输出数据:
时间段(点)内或者单一图书丢失资料
详细操作说明:
录入所要查询的一个或者多个字段和时间段,点击“查询”,系统通过录入字段和时间段(点)查找出此字段所关联的基本资料中的信息。
特殊要求:
功能块编号:
01
功能块名称:
图书借阅信息排行
所属类别
H1
所需数据:
图书借阅信息
输出数据:
图书借阅信息图形显示
详细操作说明:
取出图书借阅数据,用图形界面显示
特殊要求:
功能块编号:
02
功能块名称:
期刊借阅信息排行
所属类别
H1
所需数据:
期刊借阅信息
输出数据:
期刊借阅信息图形显示
详细操作说明:
取出期刊借阅数据,用图形界面显示
特殊要求:
功能块编号:
03
功能块名称:
读者借阅信息排行
所属类别
H1
所需数据:
读者信息
输出数据:
读者信息图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 概要 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)