图书管理系统详细设计方案.docx

上传人:b****2 文档编号:1354992 上传时间:2023-04-30 格式:DOCX 页数:43 大小:829.43KB
下载 相关 举报
图书管理系统详细设计方案.docx_第1页
第1页 / 共43页
图书管理系统详细设计方案.docx_第2页
第2页 / 共43页
图书管理系统详细设计方案.docx_第3页
第3页 / 共43页
图书管理系统详细设计方案.docx_第4页
第4页 / 共43页
图书管理系统详细设计方案.docx_第5页
第5页 / 共43页
图书管理系统详细设计方案.docx_第6页
第6页 / 共43页
图书管理系统详细设计方案.docx_第7页
第7页 / 共43页
图书管理系统详细设计方案.docx_第8页
第8页 / 共43页
图书管理系统详细设计方案.docx_第9页
第9页 / 共43页
图书管理系统详细设计方案.docx_第10页
第10页 / 共43页
图书管理系统详细设计方案.docx_第11页
第11页 / 共43页
图书管理系统详细设计方案.docx_第12页
第12页 / 共43页
图书管理系统详细设计方案.docx_第13页
第13页 / 共43页
图书管理系统详细设计方案.docx_第14页
第14页 / 共43页
图书管理系统详细设计方案.docx_第15页
第15页 / 共43页
图书管理系统详细设计方案.docx_第16页
第16页 / 共43页
图书管理系统详细设计方案.docx_第17页
第17页 / 共43页
图书管理系统详细设计方案.docx_第18页
第18页 / 共43页
图书管理系统详细设计方案.docx_第19页
第19页 / 共43页
图书管理系统详细设计方案.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

图书管理系统详细设计方案.docx

《图书管理系统详细设计方案.docx》由会员分享,可在线阅读,更多相关《图书管理系统详细设计方案.docx(43页珍藏版)》请在冰点文库上搜索。

图书管理系统详细设计方案.docx

图书管理系统详细设计方案

图书管理系统详细设计方案

图书管理系统详细设计方案1

目录1

图书管理系统详细设计方案3

1.引言3

1.1系统开发背景3

1.2系统设计目标4

1.3系统设计原则4

2.系统总体分析5

2.1功能说明5

2.2系统总体体结构6

6

2.3系统的流程图、PAD图及N-S图7

2.3.1管理员、读者登录账户7

2.4CDM和PDM的生成13

3.物理设计15

3.1建立索引以及存储结构15

4.数据库设计16

4.1数据库建立16

4.2数据库用户权限管理21

4.3建立触发器,存储过程21

5.系统实现24

5.1系统功能模块图:

24

5.2开发平台25

5.3图书管理模块的实现27

5.4系统硬件需求34

图书管理系统详细设计方案

1.引言

本系统主要实现对图书馆信息的管理,主要功能为管理有关读者,书籍,借阅和管理者的信息等。

本系统结构分为读者信息管理模块,书籍信息管理模块,借阅信息管理模块,管理者信息管理模块。

读者信息管理部分有两方面的功能,可以浏览读者的信息,可以对读者信息进行维护。

书籍信息管理可以浏览书籍的信息,可以对书籍信息进行维护。

借阅信息管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。

管理者信息管理可以显示数据库中管理者的情况,可以对管理者信息进行维护。

1.1系统开发背景

近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。

另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。

图书管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。

本公司图书管理系统就是采用现代化的信息管理方式代替手工管理方式,提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。

从以前的手工管理的记录中我们可以发现这样的问题:

检索速度慢、效率低

因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非常困难往往是终于查到了书的信息,馆中没有此书或已被别人借走。

图书馆的规模越大,这个问题越突出。

借书、还书工作量大

借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、还书登记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往往是人工操作所难以胜任的。

而且经常会出现这样那样的差错。

图书统计工作难、藏书更新不能及时完成

图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。

1.2系统设计目标

具体目标为:

持有效卡人能很方便的借还图书。

图书管理人员也能很方便的为借阅者办理手续。

管理人员能随时查询和打印图书信息和借阅信息等。

读者也能随时查询到自己的借阅情况及历史记录。

经济合理的运营成本。

1.3系统设计原则

先进性:

采用当前先进成熟的技术和设备;

安全性:

避免非法人员冒借图书,造成图书的丢失。

实用性:

合理配置和选取合适的产品型号,使整个系统稳定、可靠和成本最省。

方便性:

完善的管理系统,软件操作清晰,管理人员和持卡用户都能方便的使用系统。

可扩展性及易维护性原则:

系统在容量和功能上考虑了用户将来的需求增长,可以随意地增加新的设备或新的系统,并保证使用的一致性。

开放性:

为保证各供应商产品的协同运行,同时考虑到投资者的长远利益,本系统必须是开放系统,并结合相关的国际标准或工业标准执行。

2.系统总体分析

2.1功能说明

图书馆管理信息系统需要完成功能主要有:

1)读者基本信息的输入,包括借书证编号、读者姓名、读者性别等。

2)读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。

3)书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。

4)书籍类别信息的查询、修改,包括类别编号、类别名称。

5)书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。

6)书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。

7)借书信息的输入,包括读者借书证编号、书籍编号、借书日期。

8)借书信息的查询、修改,包括借书证编号、借书证编号、读者姓名、书籍编号、书籍名称、借书日期等。

9)还书信息的输入,包括借书证编号、书籍编号、还书日期。

10)还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

11)超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

12)超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等

13)管理员管理:

包括创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。

14)超级管理员管理:

包括创建管理员用户信息、删除管理员用户信息、创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。

2.2系统总体体结构

2-1总体体结构图

2.3系统的流程图、PAD图及N-S图

2.3.1管理员、读者登录账户

1管理员、读者登录账户——流程

图2-2流程图

2管理员、读者登录账户——PAD图

图2-3PAD图

3管理员、读者登录账户——N-S图

图2-4管理员N-S图

图2-5流程图

图2-6PAD图

P3-登陆读者界面P21-搜索书籍信息P22-申请借阅权利

P23-修改个人信息P24-返回个人信息P25-修改成功提示

P26-返回借阅界面P27-管理员验证P28-返回借阅界面

P29-借阅成功提示C4-验证信息符合要求C5-系统验证

C6-核对是否有借阅权利

图2-7N-S图

图2-8流程图

图2-9PAD图

图2-10

2.4CDM和PDM的生成

1.启动PowerDesign,弹出主对话框,依次选择“file—new—ConceptualDataModel”,单击“OK”按钮,出现CDM工作区,如图2-1所示。

图2-11CDM窗口

2.绘制实体

①打开CDM工作区,选中工具选项板上“实体图标”。

②在CDM工作区中单击任意处,产生实体图形。

③双击CDM工作区中的实体图形,出现定义实体特征的窗口。

④输入Name、Code内容。

这里Name表示实体的描述名称,一般最好用中文描述(如:

部门),Code表示实体的代码名称,最好用简化的英文描述(如:

depart)。

⑤需要的话,输入实体表中可能存放的记录数(Number),这个数字用于统计数据库的尺寸。

⑥需要的话,可以定义实体的规则(Rules)、描述(Description)、注释(Annotation)、属性(Attributes)。

⑦单击“确定”按钮,当前CDM工作区就定义了一个实体。

按要求建立完实体和实体间的联系后,生成CDM实体模型,如图2-12所示。

图2-12CDM实体模型

3.物理设计

数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库模型确定合理的存储结构和存取方法。

所谓的“合理”主要有两个含义:

一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。

主要体现在后者。

3.1建立索引以及存储结构

(1)建立索引:

①对book_style表在bookstyleno属性列上建立聚集索引,在bookstyle属性列上建立非聚集索引。

②对System_book表在bookid上建立聚集索引,在bookname、bookstyleno、boookauther、bookpub上建立非聚集索引。

③对return_record表在bookid上建立聚集索引,在readerid上建立非聚集索引

④对reader_fee表在bookid上建立聚集索引,在readerid上建立非聚集索引。

⑤对system_reader表在readerid列上建立聚集索引

⑥对boorow_record表在bookid上建立聚集所以,在readerid上建立非聚集索引

⑦对system_Administrator表在administratorid列上建立聚集索引。

⑧对system_Super_Administrator表在superadministratorid上建立聚集索引。

(2)存储结构

确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。

 将日志文件和数据库对象(表、索引等)分别放在不同的磁盘可以改进系统的性能。

所以系统将日志文件和数据文件存放在不同磁盘上。

4.数据库设计

4.1数据库建立

1数据库及数据库表的建立

(1)创建数据库

USEmaster

GO

CREATEDATABASElibrarysystem

ON

(NAME=librarysystem,

FILENAME='d:

\librarysystem.mdf',

SIZE=10,

MAXSIZE=50,

FILEGROWTH=5)

LOGON

(NAME='library',

FILENAME='e:

\librarysystem.ldf',

SIZE=5MB,

MAXSIZE=25MB,

FILEGROWTH=5MB)

GO

(2)书本类别表建立

uselibrarysystem

go

createtablebook_style

bookstylenovarchar(30)primarykey,

bookstylevarchar(30)

go

(3)创建书库表

createtablesystem_books

bookidvarchar(20)primarykey,

booknamevarchar(30)Notnull,

bookstylenovarchar(30)Notnull,

bookauthorvarchar(30),

bookpubvarchar(30),

bookpubdatedatetime,

bookindatedatetime,

isborrowedbit,

foreignkey(bookstyleno)referencesbook_style(bookstyleno),

go

(4)借书证表建立

createtablesystem_readers

readeridvarchar(9)primarykey,

readernamevarchar(9)notnull,

readersexvarchar

(2)notnull,

readertypevarchar(10),

regdatedatetime,

booktotalint,

borrowednumint,

overduenoreturnnumint

go

(5)借书记录表建立

createtableborrow_record

bookidvarchar(20)primarykey,

readeridvarchar(9),

borrowdatedatetime,

foreignkey(bookid)referencessystem_books(bookid),

foreignkey(readerid)referencessystem_readers(readerid),

go

(6)还书记录表建立

createtablereturn_record

bookidvarchar(20)primarykey,

readeridvarchar(9),

returndatedatetime,

foreignkey(bookid)referencessystem_books(bookid),

foreignkey(readerid)referencessystem_readers(readerid)

go

(7)罚款单表建立

createtablereader_fee

readeridvarchar(9)notnull,

readernamevarchar(9)notnull,

bookidvarchar(20)primarykey,

booknamevarchar(30)Notnull,

bookfeesmallmoney,

borrowdatedatetime,

foreignkey(bookid)referencessystem_books(bookid),

foreignkey(readerid)referencessystem_readers(readerid)

go

(8)管理员表建立

createtablesystem_Administrator

administratoridvarchar(9)primarykey,

administratornamevarchar(9)notnull,

administratorpasswordvarchar

(2)notnull,

administratorpermissionvarchar(10)

go

(9)超级管理员表建立

createtablesystem_super_Administrator

superadministratoridvarchar(9)primarykey,

superadministratornamevarchar(9)notnull,

superadministratorpasswordvarchar

(2)notnull,

superadministratorpermissionvarchar(10)

go

(10)索引的创建

uselibrarysystem

go

createindexbookstyle_index_styleonbook_style(bookstyle)

createindexborrow_record_index_readeridonborrow_record(readerid)

createindexreader_fee_index_readeridonreader_fee(readerid)

createindexreturn_record_index_readeridonreturn_record(readerid)

createindexsystem_books_index_booknameonsystem_books(bookname)

createindexsystem_books_index_stylenoonsystem_books(bookstyleno)

createindexsystem_books_index_bookauthoronsystem_books(bookauthor)

2数据初始化

(1)将书籍类别加入表book_style中

insertintobook_style(bookstyleno,bookstyle)values('1','人文艺术类')

insertintobook_style(bookstyleno,bookstyle)values('2','自然科学类')

insertintobook_style(bookstyleno,bookstyle)values('3','社会科学类')

insertintobook_style(bookstyleno,bookstyle)values('4','图片艺术类')

insertintobook_style(bookstyleno,bookstyle)values('5','政治经济类')

insertintobook_style(bookstyleno,bookstyle)values('6','工程技术类')

insertintobook_style(bookstyleno,bookstyle)values('7','语言技能类')

(2)将已有的图书加入system_books表中(定义相同的作者出版社的书本编号不一样)

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,

bookpubdate,bookindate,isborrowed)values('00125415152','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,

bookpubdate,bookindate,isborrowed)values('00125415153','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)values('00456456','数据库原理','6','萨师煊','高等教育出版社','2007-07-02','2007-09-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)values('12215121','C程序设计','6','谭浩强','清华大学出版社','2002-04-02','2004-03-14','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)values('9787308020558','计算机体系结构','6','石教英','浙江大学出版社','2004-10-03','2006-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)values('45456141414','数据结构(C语言版)','6','吴伟民,严蔚敏','清华大学出版社','2002-06-28','2004-01-21','1');

4.2数据库用户权限管理

该系统设置四种类型的用户

超级管理员(superadministrator)即系统管理员拥有所有的权限。

管理员(administrator)可以进行借还书处理;

教师(teacher):

只能浏览图书信息,可借书数为10本,借书时间长为2个月。

学生(student):

只能浏览图书信息,可借书5本,借书时间长为1个月。

4.3建立触发器,存储过程

--------------建立借书记录存贮过程

CREATEPROCEDURESP_BORROWBOOK@BOOKIDCHAR(20),

@READERIDCHAR(9)

AS

INSERTINTOBORROW_RECORD(BOOKID,READERID,BORROWDATE)

VALUES(@BOOKID,@READERID,GETDATE())

GO

-------------建立还书记录存贮过程

CREATEPROCEDURESP_RETURNBOOK@BOOKIDCHAR(20),@READERIDCHAR(9)

AS

DELETEFROMRETUN_RECORD

WHEREBOOKID=@BOOKIDANDREADERID=@READERID

GO

-------------建立罚款单存贮过程

CREATEPROCEDURESP_READERFEE@READERID,@borrowdate

AS

UPDATEreader_fee

SETbookfee=0.1*(day(getdate())-day(@borrowdate))

Where@reader=@readerid

Andborrowdate=@borrowdate

-------------建立借书记录表增加触发器

CREATETRIGGER[TR_ADDLEND]ON[dbo].[BORROW_RECORD]

FORINSERT

AS

updatesystem_books

setisborrowed=1

WHEREBOOKIDIN(SELECTBOOKID

FROMinserted)

UPDATEREADER

SETborrowednum=borrowednum+1

WHEREREADERIDIN(SELECTREADERID

FROMinserted)

-------------建立还书记录删除触发器

CREATETRIGGER[TR_DELLEND]ON[dbo].[return_record]

FORDELETE

AS

updatesystem_books

setisborrowed=0

WHEREBOOKIDIN(SELECTBOOKID

FROMdeleted)

UPDATEsystem_readers

SETborrowednum=borrowednum-1

WHEREREADERIDIN(SELECTREADERIDFROMdeleted)

-------------建立删除图

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2