《图书管理系统_系统设计说明书.pdf》由会员分享,可在线阅读,更多相关《图书管理系统_系统设计说明书.pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 软 件 工 程 文 件 名 称:系统设计说明书 项 目 名 称:图书管理系统 作者:顾金俐 日期:2010-622 图书管理系统系统设计说明书 1 1 引言 1。1 编写目的 编写本报告的目的是明确本系统的详细需求,供使用单位确认系统的功能和性能,并作为软件设计人员的设计依据和使用单位的验收标准.1.2 背景 1.开发软件名称:图书管理系统 2。项目开发者:计算机工程学院计算机科学与技术 软件 071 班 202070402 顾金俐 3.用户单位:南京工程学院 1。3 定义和缩略语 本文使用了 表 1。1所显示的面向用户的术语、定义,包括通用词语在本文档中的专用解释.表 1。1 术语/定义
2、术语/定义 说 明 开发方 顾金俐 用 户 南京工程学院图书馆 用例图 反映用户与系统交互情况的一种图形,常用于需求分析 表 1.2所列为本文用到的缩略语。表 1.2 缩略语 缩略语 说 明 LIMS (Library Information Management System)南京工程学院 学校 图书管理系统系统设计说明书 2 1。4 参考资料 本文使用了表1。3所列为本文用到的参考资料。表 1。3 参考资料 编号 资料名称 作者 1 软件工程理论与实践 白忠建等 2 软件工程导论(第四版)张害藩 3 软件工程实践教程 赵池龙等 1。5 用户 1。本软件的最终用户是面向管理员(图书管理员和其
3、它管理人员)、读者(老师和同学等),他们都具有一定的计算机应用基础,可以比较熟练操作计算机。管理员和读者都是经常性用户。2。系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工作。维护人员为间隔性用户.2 系统设计 2。1 系统架构 依据前期的需求调研,用户已经有完善的内部局域网,网络和硬件条件都较好,虽然 C/S 架构有其特有的优势,但最终不采用C/S 架构。系统采用目前最为流行的 B/S 架构,即用户的所有操作都在浏览器上进行。这种架构最大的优势是方便部署。架构示意如图2-1。图书管理系统系统设计说明书 3 Internet前端客户WEB服务器数据库服务器应用服务器 图 21 系
4、统架构图 2.2 系统设计模式 系统采用目前最为流行的 MVC 设计模式,即 ModelView-Controller,即把一个应用的输入、处理、输出流程按照 Model、View、Controller 的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。视图(View):代表用户交互界面,对于 Web 应用来说,可以概括为 HTML 界面,但有可能为 XHTML、XML 和 Applet。模型(Model):就是业务流程/状态的处理以及业务规则的制定.业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。控制(Controller):可以理解为从
5、用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。一个模型可能对应多个视图,一个视图可能对应多个模型。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图.如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新.这实际上是一种模型的变化-传播机制。模型、视图、控制器三者之间的关系和各自的主要功能。图书管理系统系统设计说明书 4 图 22LIMS 设计模式 2.3 系统持久层设计 数据持久层的设计目标是为整个项目提供一个高层、统一、安全和并发的数据持久机制。完成对
6、各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务.数据持久层提供了数据访问方法,能够使其它程序员避免手工编写程序访问数据持久层,使其专注于业务逻辑的开发,并且能够在不同项目中重用映射框架,大大简化了数据增、删、改、查等功能的开发过程。2。3。1 Hibernate 的应用 LIMS 系统抽象出基本的数据操作.针对数据对象的保存和更新操作,使用Hibernate 这一 ORM 技术.LIMS 系统中所有的数据对象都与一个 Hibernate 的 XML 配置文件对应,在主配置文件中的!Hibernate Mapping 下面的建立映射引用。在公共的后台数据库操作类 DbutilBeanL
7、ist 中有 2 个将数据对象进行持久化操作的方法.对数据的持久化都调用这 2 个方法,统一了数据的底层操作,便于系统的维护和扩展。图书管理系统系统设计说明书 5 2。3。2 iBATIS 的应用 iBATIS 是另一个 ORM 解决方案,相对 Hibernate 的完全封装,iBATIS 提供了更大的灵活性,便于扩展,也更小巧,容易上手。特别是复杂的查询功能,利用iBATIS 实现非常的方便。因此系统中的大多数查询功能的设计都是采用iBATIS实现。3 功能设计 根据前期的需求分析,对系统的功能模块进行划分,功能结构如图 31。图书管理系统借阅信息管理书籍信息管理读者信息管理系统管理 图 3
8、-1 系统功能结构图 3。1 书籍信息管理 书籍信息管理是 LIMS 的核心模块,书籍信息管理模块的功能结构如图32.图书管理系统系统设计说明书 6 书籍信息管理借阅信息书籍添加还书信息书籍修改 图 32 书籍信息管理功能结构图 3。1.1 图书管理系统流程图 1.管理员登陆流程图如下图所示 311:管理员登入过程输入口令验证判断信息重新输入口令N图书管理Y读者管理管理读者信息管理员记载文件管理图书信息读者信息文件图书信息文件反馈信息 图 3-1-1 管理员登入流程 2。学生借阅图书登记流程图如下图所示 3-3-2:图书管理系统系统设计说明书 7 读者输入口令验证读者信息文件登入过程判断信息重
9、新输入N查询书籍Y查询个人信息查询借阅情况读者信息文件书籍信息文件书籍借阅情况文件反馈信息预定书籍 图 3-12 读者登入流程 3.还书系统完成图书的归还过程其数据流图如下图所示 313:读者登入过程读者信息文件输入口令还书图书信息文件管理员登入过程管理员记载文件催还读者信息文件 图 313 还书流程图 图书管理系统系统设计说明书 8 4 数据库设计 4。1 整体设计 LIMS系统的核心是图书资料记录,因此表结构的设计要将图书资料记录表做为主表,然后关联其他的图书信息相关的数据表。其关联如下图 4-1:FK_图书分类资料表_REFERENCE_图书资料记录表FK_公共资料记录表_REFEREN
10、CE_管理员资料记录表FK_图书馆基本配置_REFERENCE_图书资料记录表FK_图书借阅登记资料_REFERENCE_图书资料记录表FK_学生资料记录表_REFERENCE_学生班级资料记录FK_图书借阅登记资料_REFERENCE_学生资料记录表管理员资料记录表管理员标号登入名登入密码登入次数上次登入时间是否为高级管理员intstringvarchar(10)intdatetimeint图书分类资料表图书标识号分类名intchar(10)图书资料记录表图书标识号图书名图书分类图书作者图书出版社进馆时间图书数量图书剩余量借书次数是否借出intchar(20)intchar(20)char(
11、25)datetimeintintintint公共资料记录表公共标识号管理员标号公共内容管理员标识号公共发表时间intintchar(100)intdatetime图书馆基本配置图书标识号是否可借书籍可借图书量图书借次数可续借次数公共刷新时间intintintintintint图书借阅登记资料表图书标识号读者标识号学生标识号借书时间还书时间应还书时间是否已归还续借次数intintintdatetimedatetimedatetimeintint学生资料记录表读者标识号读者名读者登陆密码借阅书籍次数登入次数最后登入时间班级标识号联系方式是否超时intchar(10)intintintdateti
12、meintchar(20)int学生班级资料记录表班级标识号班级名intchar(20)图 41 图书信息表及其相关信息表的关联关系 4。2 数据表设计 数据表的表结构设计是一个管理信息系统项目成功与否的关键,设计的原则除了遵循一定级别的范式要求,更要注重实际应用,根据业务数据的特点来设计表结构,这样才能使系统具有更好的可维护性。系统使用的数据库管理系统为SQL Server 2000.数据库的逻辑设计 在完成数据的概念模型设计后,即可进入数据库的逻辑设计阶段,数据库的图书管理系统系统设计说明书 9 逻辑设计,即把得到的关系转化为特定的数据库管理系统下的数据表。根据前面得到的各个关系,现把它们
13、转化为数据表。admininfo(管理员资料表)board(公告记录表)bookinfo(图书资料表)class(学生班级资料表)classify(图书分类资料表)landinfo(图书借阅登记资料表)libraryinfo(图书馆基本配置记录表)studentinfo(学生资料表)数据库的物理设计 数据库的逻辑设计完成后,就可开始进行数据库的物理设计。基于上述的数据库的逻辑设计,再考虑到程序设计的简易性及通用性,本图书馆信息管理系统采用 Microsoft 的 SQL Server 2000 数据库,并在其下创建 8 个数据表,结构分别如下:(1)admininfo,管理员资料记录表,共有
14、6 个字段,分别为:id、adminname、lpassword、logins、lastlogin、tiptop,见表 1 表 1 admininfo,管理员资料记录表的结构 字段名称 数据类型 说明 长度 id 自动编号 管理员标识号 长整型 adminname 文本 登陆名 10 lpassword 文本 登陆密码 10 logins 数字 登陆次数 长整型 lastlogin 日期/时间 上次登陆时间 tiptop 数字 是否最高管理员,是:1,否:0 字节 (2)board,公告资料记录表,共有 4 个字段,分别为:id、content、admin、addtime,见表 2 表 2 b
15、oard,公告资料记录表的结构 字段名称 数据类型 说明 长度 id 自动编号 公告标识号 长整型 content 文本 公告内容 60 admin 数字 发表公告管理员 ID 长整型 addtime 日期/时间 公告发表时间,默认:now()(3)bookinfo,图书资料记录表,共有 10 个字段,分别为:id、name、图书管理系统系统设计说明书 10 classify、author、bookconcern、addtime、amount、remain、loandegree、display,见表 3 表 3 bookinfo,图书资料记录表的结构 字段名称 数据类型 说明 长度 id 自动
16、编号 图书标识号 长整型 name 文本 图书名 20 classify 数字 图书分类 整型 author 文本 图书作者 20 bookconcern 文本 图书出版社 25 addtime 日期/时间 进馆时间,默认:now()amount 数字 图书数量 整型 remain 数字 剩余数量 整型 loandegree 数字 借出次数 长整型 display 数字 是否显示,是:0,否:1 字节 (4)class,学生班级资料记录表,共有 2 个字段,分别为:id、name,见表4 表 4 class,学生班级资料记录表的结构 字段名称 数据类型 说明 长度 id 自动编号 班级标识号
17、长整型 name 文本 班级名 20 (5)classify,图书分类资料表,共有 2 个字段,分别为:id、name,见表5 表 5 classify,图书分类资料表的结构 字段名称 数据类型 说明 长度 id 自动编号 分类标识号 长整型 name 文本 分类名 10 (6)landinfo,图书借阅登记资料记录表,共有 8 个字段,分别为:id、bookid、studentid、landtime、returntime、shouldreturntime、hadreturn、canreland,见表 6 表 6 landinfo,图书借阅登记资料记录表的结构 字段名称 数据类型 说明 长度
18、id 自动编号 借出图书标识号 长整型 bookid 数字 借出的图书标识号 长整型 studentid 数字 借书的学生标识号 长整型 landtime 日期/时间 借出时间,默认:Now()returntime 日期/时间 实际还书的时间 图书管理系统系统设计说明书 11 shouldreturntime 日期/时间 应该还书的时间 hadreturn 数字 标识是否已经归还,是:1,否:0 字节 canreland 数字 续借次数 长整型 (7)libraryinfo,图书馆基本配置记录表,共有 5个字段,分别为:canland、canlandnum、canlanddays、canrel
19、and、boardreflash,见表 7 表 7 libraryinfo,图书馆基本配置记录表的结构 字段名称 数据类型 说明 长度 canland 数字 是否可借出图书,是:1,否:0 字节 canlandnum 数字 可以借出图书的数量 默认:0 整型 canlanddays 数字 图书可以借阅时间 默认:60 天 整型 canreland 数字 可以续借的次数 默认:5 次 整型 boardreflash 数字 公告刷新时间 默认时间为 6000毫秒 长整型 (8)studentinfo,学生资料记录表,共有 10 个字段,分别为:id、name、lpassword、learnid、c
20、lass、phone、lands、logins、lastlogin、islock,见表 8 表 8 studentinfo,学生资料记录表的结构 字段名称 数据类型 说明 长度 id 自动编号 学生标识号 长整型 name 文本 学生名 5 lpassword 文本 学生登陆密码 10 learnid 文本 学生学号 12 class 数字 班级标识号 整型 phone 文本 联系电话 11 lands 数字 借阅次数 长整型 logins 数字 登陆次数 长整型 lastlogin 日期/时间 最后登陆时间 islock 数字 是 否 超 时 锁 定是:1 否:0 字节 5 数据字典条目 数据字典是指系统使用的公共数据,这些数据统一维护,LIMS 系统使用到的数据字典要进行设定,编程实现时必须严格遵守,因为有些数据字典的定义是硬编码的。图书管理系统系统设计说明书 12