图书管理系统
====
# 1概述
## 1.1设计目的
通过对图书管理系统的系统分析、系统设计、编码和调试等工作的实践,熟悉管理信息系统的开发过程、设计方法及相关编程技术,熟练掌握数据库设计的基本理论及方法。
## 1.2设计任务
要求完成一个具有一定实用价值的图书管理系统,主要任务包括:
* 在Msql环境下建立图书管理系统所使用的数据库,利用企业管理器或查询分析器建立各种数据库对象,包括:数据表、视图、约束、存储过程和触发器等;
* 掌握JDBC编程技术,对MYSQL Server数据库进行连接和操纵;
* 掌握使用Java语言开发一个数据库应用系统的基本方法和步骤,熟悉一些基础功能的实现方法,如:数据维护(插删改等操作),数据查询、浏览和Excel导出,统计与报表,用户登录和权限管理等。
* 了解C/S或B/S应用程序的多层体系结构及三层架构方案设计思想,了解迭代式开发,熟悉面向对象设计方法及其分析与设计过程,了解UML文档及其开发过程中的作用。
## 1.3设计准备
① 系统准备
操作系统:Windows xp/7/8
数据库系统:MYSQL Server数据库
客户端开发工具:Eclipse KEPLER
② 知识准备
熟悉MYSQL Server的使用;
熟悉Java语言及其数据库编程技术。
了解:迭代式开发过程、UML设计文档、设计模式;以及图书馆相关业务知识。
##1.4迭代式开发
迭代式开发(统一过程UP) 系统开发被组织成一系列固定的短期(一段为2-6周)小项目,称为迭代;每次迭代都产生可执行的系统。每次迭代都包括计划、需求、分析、设计、编码、测试等过程以及文档编写工作;第一次迭代考虑系统的核心功能,随后的迭代逐步扩展系统功能;每次迭代的成果(含需求、分析、设计、代码和文档等)均为下一次迭代的工作基础,直至满足最终需求。这种开发过程是基于面向对象方法的。
# 2系统分析与设计
## 2.1系统边界与约定
(1) 系统限定在实体书库的借阅和管理等业务范围;
(2) 不考虑图书馆的电子书库、订购、情报、人事管理等业务;
(3) 不考虑图书馆的跨区分布情况,如长江大学图书馆包括多个校区图书馆;
(4) 不考虑图书的通借通还,如读者可在湖北省高校任何一家图书馆借还图书;
(5) 不考虑珍藏图书的借阅业务;
(6) 暂不考虑与校园一卡通系统的外部接口。一卡通系统为外部系统(外部参与者),卡内记录有身份及相关信息,该系统负责身份验证工作。
(7) 期刊库和论文库的借阅和管理等业务可作为二期项目目标,视本系统使用情况而定。
## 2.2 概念模型
* 读者管理
读者管理即借书证管理,包括的业务(即用例)有:办理借书证、借书证变更、借书证挂失、解除挂失、补办借书证、注销借书证
借书证(读者)可分为2种类别:教师、学生。
借书证(教师)=借书证号、姓名、性别、所在单位、办证日期、照片等。
借书证(学生)=借书证号、学号、姓名、性别、专业、班级、办证日期、有效期、照片等。其中,有效期由学生类别决定,本科生4年、专科生3年、硕士生3年等。
相关业务规则:(1)读者凭借书证借书;(2)教师最多借书12本,借书期限最长为60天,可续借2次;学生最多借书8本,借书期限最长为30天,可续借1次;(3)处于挂失、注销状态的读者不能借书;(4)未归还图书者不能注销其借书证。
读者=借书证号、姓名、性别、所在单位、读者类别、办证日期、照片等。(另可加:电话、邮箱等)
读者类别=读者类别号、类别名称、可借书本数、可借书天数、可续借次数。
* 图书管理
包括业务(用例):图书编目、新书入库、图书信息维护等。
图书信息=书号、书名、作者、出版社、出版日期、ISBN、分类号、语言、页数、单价、内容简介、图书封面、图书状态等;(图书状态包括:在馆、借出、遗失、变卖、销毁)
* 借阅管理
包括业务用例:借书、续借、还书等。还书过程涉及超期罚款、遗失图书罚款等业务规则。
罚款规则:(1)超期罚款规则 应罚款金额=超期天数*罚款率,罚款率=0.05元/天,罚款率可能随时间或读者类别而变化;实际罚款金额<=应罚款金额,根据实际情况可以进行减免。(2)遗失罚款规则 遗失图书应罚款金额=3*图书单价;实际罚款金额在(1*图书单价,3*图书单价)之间。(3)遗失罚款规则优先于超期罚款规则。
借书记录=借书证号、书号、借书操作员、借书日期、应还日期
续借记录=借书证号、书号、续借操作员、续借日期、应还日期,续借次数
还书记录=借书证号、书号、还书操作员、还书日期、应还日期,超期天数、应罚款金额,实际罚款金额
借阅信息=借书顺序号、借书证号、书号、借书操作员、借书日期、应还日期,续借次数、还书操作员、还书日期,超期天数、应罚款金额,实际罚款金额
* 用户登陆
包括用例:用户登录、密码修改,为本系统的基础和主要功能。
用户包括2类:读者、管理员。其中,管理员用户权限是4种角色的组合:借书证管理、图书管理、借阅管理、系统管理;系统管理员负责所有管理员用户及其权限的管理,借书证管理员负责读者管理(即借书证管理)。
管理员是读者,但读者不一定是管理员;读者与管理员间存在(1对0..1)联系。
读者信息+=密码。
管理员信息=用户号、用户名、密码、管理角色
管理角色设计:可采用4位二进制,借书证管理(0001)2=1、图书管理(0010)2=2、借阅管理(0100)2=4、系统管理(1000)2=8。如表示图书管理和借阅管理权限:2+4=6;判断7是否具备图书管理权限:7位与2,即(0111)2位与(0010)2=(0010)2,表示有此权限。
读者信息+=密码、管理角色。
* 系统功能与用户角色
表 1 系统功能与用户角色关系表
序号 系统功能 借书证管理 图书管理 借阅管理 系统管理 读者
1 读者管理 √ (√)
2 图书管理 √
3 借阅管理 √
4 用户登录 √ √ √ √ √
5 密码修改 √ √ √ √ √
6 用户管理 √
7 读者预约 √ √ √ √ √
8 统计与报表 √ √ √ √
9 数据备份 √
* 领域模型
读者=读者号(借书证号)、姓名、性别、所在单位、电话、邮箱地址、办证日期、照片、借书证状态、已借书数量、密码、管理角色。(借书证状态:有效、挂失、注销)
读者类别=读者类别号、读者类别名称、可借书数量、可借书天数、可续借次数,罚款率,证件有效期。
图书=书号、书名、作者、出版社、出版日期、ISBN、分类号、语言、页数、单价、内容简介、图书封面、图书状态。(图书状态包括:在馆、借出、遗失、销毁、卖出)
借阅信息=借书顺序号、读者号、书号、借书操作员、借书日期、应还日期、续借次数、还书操作员、还书日期,超期天数、应罚款金额、实际罚款金额。
2.3 数据表的设计
* 读者类别表(TB_ReaderType)
序号 字段名 数据类型 说明
1 rdType SmallInt 读者类别【主键】
2 rdTypeName Nvarchar(20) 读者类别名称【唯一、非空】
3 CanLendQty Int 可借书数量
4 CanLendDay Int 可借书天数
5 CanContinueTimes Int 可续借的次数
6 PunishRate Float 罚款率(元/天)
7 DateValid SmallInt 证书有效期(年)【非空,0表示永久有效】
* 读者信息表(TB_Reader)
序号 字段名 数据类
土豆片片
- 粉丝: 1843
- 资源: 5866
最新资源
- [] - 2024-10-09 IC虚拟机2024及资料分享.html
- 从零开始android游戏编程pdf版最新版本
- java实现的贪吃蛇小游戏.zip学习资料
- java实现的五子棋人机对战游戏.zip
- AndroidPorting移植与研究实行pdf版最新版本
- PHP的ThinkPHP6.0小说CMS管理系统源码带搭建教程数据库 MySQL源码类型 WebForm
- eoeAndroid特刊第八期Android数据存储方式pdf阅读软件最新版本
- eoeAndroid特刊第二期Android图像处理篇pdf版最新版本
- android内核编译图文教程chm版最新版本
- eoeAndroid特刊第三期:AndroidMarket及应用发布pdf版最新版本
- 使用AdobeAIR开发Android应用程序英文pdf文字版附源代码最新版本
- 使用HTML,CSS,JavaScript开发Android应用程序英文文字pdf版附源文件最新版本
- JAVAspringboot进销存管理系统源码带文字搭建教程数据库 MySQL源码类型 WebForm
- DevSidecar 和 GithubSpeed安装包
- Android的GUI系统开发说明pdf版最新版本
- Android中文帮助文档pdf版最新版本
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈