资源描述
设计题目:图书管理系统设计
设计目的:
1、巩固和加深课堂所学知识;
2、掌握面向对象的开发思想,提高软件开发技能;
3、考查对软件开发工具(UML)的掌握程度。
设计任务:
对根据给出的需求,对图书管理系统进行UML建模。
具体要求:
软件需求:
图书管理系统中,管理员要为每个读者建立借阅账户,并给读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。
借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息,供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对.最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。
图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销。
一、图书馆管理系统需求分析
1。1、系统目标设计
系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索.
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息.
提供方便的查询方法.如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息;按照图书类型查找(学术论文,电子期刊,馆藏图书)
提供对书籍进行的预先预订的功能.
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
1。2、系统功能需求分析
(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注.
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4) 系统管理:包括用户权限管理,数据库数据的管理
满足以上需求的系统主要包含有一下几个子系统
(1) 基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2) 基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能.
(3) 信息查询子系统:包含了多功能的查询书籍信息和读者信息.
(4) 数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
、用例图
该图书馆管理系统的用例图如下:
书籍增删改
图1:图书馆管理系统的用例图
从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
管理员所包含的用例有:
(1) 登录系统:管理员可以通过登录该系统进行各项功能的操作
(2) 书籍管理:包括对书籍的增删改等.
(3) 书籍借阅管理:包括借书、还书、预订、书籍逾期处理和书籍丢失处理等等。
(4) 书籍查询:按照书籍不同的类型进行查询如:学术论文,电子期刊,馆藏图书
(5) 读者管理:包含对读者的增删改、读者信息的查询等操作。
读者所包含的用例有:
(1) 登录系统
(2) 借书:进行借书业务。
(3) 还书:读者具有的还书业务.
(4) 查询:包含对个人信息和书籍信息的查询业务,查询书籍的时候可以通过学术论文,电子期刊,馆藏图书不同的图书类型进行快捷查询。
(5) 预订:读者对书籍的预订业务。
(6) 逾期处理:就是书籍过期后的缴纳罚金等.
(7 )书籍丢失处理:对书籍丢失后的不同措施进行处理。
(8) 密码修改:用户可以对自己的密码进行修改。
(9) 用户注销:用户完成自己所需的事物后注销登录。
、系统的顺序图
顺序图是显示对象之间交互的图,这些对象是按时间顺序排列的。该图书馆管理系统主要含有以下几个重要的顺序图,其他对象的顺序图和这些也类似。
其中包含:借书顺序图、还书顺序图、罚款顺序图
1、借书顺序图
:rtddec
:Item
:book
:rtMiYJiion
借书界面
:boirow :「亭日召
k
II
bl
器与堵N:管理 I
1. logm() i
2: checkstu_card() ,l
shoV'nformatio r l
4: borroi?if
6: return va
;chackrcserv^tion
9: geinore^ervatior^
10' cteate[borrcwer.: item)
11:昼示借节加或J
广 1
图2:图书馆管理系统借书顺序图
顺序图说明:
(1 ) login ():登录系统。
(2 ) checkstu_card():对读者信息进行验证,检查是否符合本图书馆借书条件.
(3)showinformation():显示该读者的基本信息函数.
(4)borrow():读者借书函数。
(5)getreaders():取得读者信息函数。看该读者是否符合借书条件,若符合,则返回可借信息.
(6)gettitle():取得书目信息.
(7)getreservation():检验书籍是否被预订函数。
(8)getnoreservation():书籍没被预订或取消预订函数.
(9)create( borrower, item):创建书籍外借函数。
(10)借书时,读者先将书拿予管理员,管理员对书籍和读者进行检验,若书籍和读者都符合借书条件,则借书成功。
2、还书顺序图
番与喜j :浅#. 甜写括M:曾崖苟 |匪书舞皿||:1t亡E|:bull。*
还书界面
E「rw 而
:itsm
掺与者1:谟者鑫与料管理 ::
111^ ——2. :login() '
扫与'1 3扫描书籍条枷:
希4::getitem
=<
1
1
5削、
r
•
e updataf)
1i
1
ii
ii
—
T :updata(J
ii
•
i&还书成功
i0
忙一…
L
J...11
图3:图书馆管理系统还书顺序图
顺序图说明:
(1 ) login():登录系统。
(2 ) getitem():取得书籍条目信息。
(3) update():对图书馆书籍条目和借阅者信息进行更新条目。
(4) 还书时,读者先将书交给管理员,由管理员扫描书籍,若书籍没有过期等违规现象,则对书目和读者借阅信息进行更新,同时还书成功。如果书籍过期则要进行罚款处理。
3、罚款顺序图
bDrroifu_rfo
:boirDiid M 写 3M:穴者
:bci trow
1.扫描显匚
2显示过期书籍
u:s
3'提示应变罚款金额
4:交罚金
5 updataf)
6' u.';data
图4:图书馆管理系统的罚款顺序图
顺序图说明:
(1) updata ():对图书信息和读者数据库中信息进行修改完成罚款处理。
管理员扫描图书,图书显示过期天数,罚款金额按过期天数累加,读者缴纳罚金过后才可以完成还书业务。
三、系统的状态图
图5:图书馆的书籍状态图
状态图说明:
书籍在未变成图书馆在库书籍时,为新加书籍状态。书籍处于在库状态时既可以预订也可以外借,外借后变为借出状态。处于预订状态时也可以外借,超出预订时间期限则从预订状态直接转为可用状态.借阅者在规定的预订时间内也可以考虑取消预订,取消预订后书籍的状态转为可用。外借书籍归还后变为可用状态.书籍丢失要进行相应的赔偿处理。
四、系统的活动图
活动图描述的是某流程中的任务的执行,活动图描述活动是如何协同工作的,当一个操作必须完成一系列事情,而又无法确定以什么样的顺序来完成这些事情时,活动图可以更清晰地描述这些事情。在本图书馆管理系统中,我们主要描述了图书馆系统的借书、还书和预订的活动图。
图6:图书馆管理系统的借书活动图
1.借书活动图
管理员首先要扫描读者的借书证,检验证件是否符合图书馆借书条件,若该读者的借书数量还未达到最大规定数量,并且其所借书籍均未属于过期范围,则符合借书条件.则再扫描书籍条形码,检查书籍是否是不可借书籍或者已经被预订,若被预订,则取消预订,方可借书.在这些条件都符合时则更新书籍信息和读者的借阅信息,记录好借书的时间.图书6所示。
2、还书活动图
图书管理员对书籍进行扫描,若书籍已经过期,则要求读者还请欠款才能还书,读者缴应交罚款后,更新书目信息和读者信息。如图7所示.
图7:图书馆管理系统的还书活动图
3、预订图书活动图
读者先进入系统查询自己所需要的书籍,显示书籍信息,检验书籍是否属于可预订书籍,若符合条件则检查书籍是否已经被预订或已经被外借,若都未成立,则读者登录系统,并对该书籍进行预订.如图8所示.
登陆系统
显示书籍
图8:图书馆管理系统预订书籍活动图
五、图书馆管理系统的类图
图书馆管理系统的类图如图9所示:
(1 ) readers类是借阅者的类,它的属性很多,包括借阅者的账户ID(reader_id)、姓名(reader_Name)、性别(sex)、年龄(age)、地址(Address)、班级(class)、所借书籍的书目(borrowed)、联系电话(tel_phone)等。其中主要操作有借书(addborrowed)和还书(deleteborrowed)和预订(reservation)等.
(2) admin类是管理员类,他有编号(admin_id)和姓名(admin_name)、密码属性,操作主要是书籍的增删改和读者的增删改等等.
(3) Books类是记录书目信息的类,包括书籍的名字(name)、作者(author)、书籍编号
(book_id )等属性。
(4) Item类是具体某本书的类,属性包括书籍号(item_id).操作包括预订(title)、按书目查找(Borrowed)等。
(5 )borrow类是某本书的借阅信息类,包括所借阅书籍的item、借阅的时间(date )等。
(6 ) Reservation类是预订信息类,每个预订信息包括所预订书籍的名称(Books)、预订书籍的用户ID ( reservation )等属性。
(7) persistent store类是书籍永久的存储类,在数据库中的存储数据,其他对与书籍有关的活动都要经过其存储类.
readers
d imegeri^>reader_nafMe - String务s孙.byteinteger
^;I-3se-. StengCollege : ShingQMeljilinnE' - mleger^addrass . Siring: Variant
S^orrowed : booksReservation : rese^lion
*readar_ifD()
•mddbiirra 加的*ijelElEhDrrowedO^getban-iowedO^addrQGQfvatioriij^delElEresErYatian()钮rusdicinO•qi」町byn 日nwl]^"qijeryhvreader_id(5^querynaineD*-setname()
*5etse^0^setageQ•知旧舞国J*aettel_phDnE(]^getnamel)^getageQ*getclaEE<|♦硕eQ*read()
bg屈
^»hciok_ID inl&g&r
^HrUe: String
^>ai.dhor: String
防type : Stringt
勒如is : tern
^•r&setvaliDn=.: reE-Brnatnn
^bpri典:Double
1*book0
*querybybook_idO
*queiybytitie|)
,卵6四血。「0
JgeittteQ
*g e-taut hor(]
勺etimk顶[)
:gettyp©
*gednrreO
*selbookjdf)
•喝岫。
^sefautbor(|
^sEdprcef)
^ddteriQ
Widd 旧 sewaliDnO
^debteitamO
*d elet eresetvationO
•而0
♦ eadQ
图9:图书馆管理系统的类图及关系
五、数据库概念设计
图书档案实体
图书档案实体包括编号、条形码、书名、类型、作者、出版社、价格、页码、书架、库存总量、录入时间、操作员和是否被删除等属性。
图10:图书档案实体E-R图
读者档案实体
读者档案实体包括编号、姓名、性别、条形码、出生日期。有效证件。证件号码、电话、电子邮件、登记日期、类型和备注等属性。
图11:读者档案实体E-R图
借阅档案实体
借阅档案实体包括编号、读者编号、图书编号、借书时间、应还时间、操作员和是否归还等属性
图12:借阅档案实体E-R图
归还档案实体
归还档案实体包括编号、读者编号、图书编号、借书时间、应还时间、操作员和是否归还等属性
图13:归还档案实体E-R图
tk-rmb] istiiiiE I tfiRf d:靖息)
[SEX wclaj (30)
^buj-H. -urar.^laj〔50 J
ad ttec w gaar』禺批丁 4jii>
life veichir 130.1
i BJIMMjrfeT-l;胃崖 K借.ft)
ii npci fBHij 瓦田1日1
la-rc >z3Z,clar 1网)
TflTi raclir 150)
twlxro一
tbL-njvLwi Ifite'l
Lil | L?) ^jiL^
CTCEd 1 +3XJT.B+ I L)
TEnjexac fc iairxni I L.l
t&bLce t +3XTT.B+ | L)
折电冒扇』tilTLUt I Lj
土,玄日11* I L.I
t*h_luALnii^ 1.囹书皓.亶)
id
LDltKrllOL <lil>
ixsi
irnt id
iicEnifid iitewi
Ci&blvx
园 J
jarfluir (30)
的
JcxcLar 150 J
pr lh
日5〔艮R
网曲
mAicnibd :ini哙工
bfr-Q-Urri-L
oeb3 |ud a&iapx
iiTm
date
虫 Ke**"
varvlor [54]
dtl
L哼呼ktmnc
UlRue i僧IB塔息J
*uc]@cd. xsi-a r-&r 女垃
rt*itT id
uisLEtel LDlerer
K=Jod
淑叩 XX〔L[|J
burTg—Tima
LdcIiTlie
dabs
bE*TS.fcbT
IWElxBEr(3D)
L山上
4 LS^-XD-I L L)
Lb.lxivLLnK曲书毙型I
lJ. na虹r<z C
tTwiant ijarclar IWJ
dajsi KUSia tied axkccu
Lb^Ecolcr 1 rj 昔佶息 J
诅
nan*
rarclHLr [50J
rarbinarpM)
ti-: :- d-
〔50J
<arclai [SO
bu
lai-s.
rwwrTpiM
irarclaj [KO
VWTclsZZ [50J
-imr-rlEu- jsO〉
°=mi£L L
vwrdszz [50^
unmEmw.
OCHJatOl
•rarclaj (K)
r=mr j
tm id
LittBertlO^
b^i^'bod I 反制:息}
lA nnEn E*』:iH±*w・!T Cjdr>
j±si3±iLd lute ftr 1,10.1
b&i&had in.-i:4i ipar(!]
,btLcVTint dale
:ptra^r !.sr-:iar C54.I
1— ♦ 〜土包 项星E占
uarc -iForbaur 150)
eudtImt Lnt*r*T (iCCl
图14 :图书管管理系统的数据库模型图
(1 ) tb_manager (管理员信息表)管理员信息表主要用来保存管理员信息。
(2)tb_purview(权限表)权限表主要用来保存管理员的权限信息.
(3)tb_booktype(图书类型表)图书类型表主要用来保存图书类型信息。
(4)tb_bookcase(书架信息表)书架信息表主要用来保存书架信息.
(5)tb_bookinf(图书信息表)图书信息表主要用来保存图书信息.
(6)tb_borrow图书借阅信息表)图书借阅信息表主要用来保存图书借阅信息。
(7)tb_givebac(图书归还信息表)图书归还信息表主要用来保存图书归还信息。
(8)tb_publishing出版社信息表)出版社信息表主要用来保存出版社信息.
(9)tb_readei(读者信息表)读者信息表信息表主要用来保存读者信息。
(10)tb_readertype读者类型信息表)读者类型信息表信息表主要用来保存读者类型。
(11 ) tb_parameter参数设置表)参数设置表信息表主要用来保存办证费及书证的有效期限等信息。
展开阅读全文