基于UML的大学图书馆图书信息管理系统设计实验
系统简介:
本系统为一个小型的图书管理系统,需完成以下工作:
借书、还书
在图书馆中增加或删除一本书
按照作者或者专业领域查找一批书
找出被某位读者借出的一批书
找出最近借出某本书的读者
系统的用户有两类:图书管理员和普通读者。功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。
本系统需满足以下限制:
图书馆中所有未借出的书可供读者随时借阅
在同一时刻,一本书不能既被借出又可供阅读
一个读者一次借出图书的数目不能超过预定值
1、用例分析与设计
从以上系统简介容中可以看出,本系统有以下几类参与者:
图书管理员Admin
读者Reader
读卡器CardReader
服务器System
2、在上述参与者中,图书管理员和读者与系统进展交互,通过对交互场景进展归类和抽象,本系统应具有以下用例:
借书lendBook
还书returnBook
增加图书addBook
删除图书delBook
按作者、专业检索图书fndBook_Author
按读者检索图书findBook_Reader按书检索读者findReader_Book
2.1生成用例图
图2.1系统用例图
2.2用例的顺序图
为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。
1、借书
图2.2借书顺序图
函数说明:
InSertCard():刷卡
ReadCard():读卡
ifMax()判断借书数量是否达到上限
RetUrnReaderlnfo()返回读者信息
RetUrn(true):该读者可继续借书
lendBook():输入借书信息
UPdate()更新数据库
2、还书
图2.3还书顺序图
函数说明:
BOOkInfo():输入还书信息UPdate():更新数据库
RetumReaderlnfo():返回读者信息
3、增加图书
图2.4增加图书顺序图
函数说明:
addBook():输入增加的图书信息
ifAllowsAdd():判断是否允许添加UPdate():更新图书信息RetUrn(true):返回添加成功
4、删除图书
图2.5删除图书顺序图
函数说明:
delBook():输入删除的图书信息ifAllowsDel():判断是否可以删除
ifSure():是否确定删除
RetUm(true)5:定删除
UPdate():更新图书信息RetUmn(true)7:返回删除成功
5、按作者检索图书
图2.6按作者或专业检索图书顺序图
函数说明:
findBook_Author():管理员或读者选择按作者或专业检索图书
AUthOr(String):输入作者或专业信息
returnBooklnfo():返回图书信息
6、按读者检索图书
图2.7按读者检索图书顺序图
图2.8读者检索个人借阅图书顺序图
函数说明:
findBookReader():选择按读者检索图书
Readerld():输人读者编号
ReaderldandPass():输人读者编号密码
returnBooklnfo():返回书籍信息
图2.9按图书检索读者顺序图
函数说明:
findReadeLBOOk():选择按图书检索读者
BOOkID():输人图书编号
returnReaderinfo():返回读者信息
3、概念模型和顶层架构设计
3.1概念模型设计
图3.1系统概念模型-一分析类图
3.2顶层架构设计
图3.2系统顶层架构
用户界面设计
4.1界面变化分析
根据管理员的功能分析,与管理员相关的主要界面有以下
AdminWelcome:管理员主界面
findReaderBook:按读者检索图书界面
lendBook:借书界面
returnBook:还书界面
addBook:增加图书界面
delBook:删除图书界面
findBookAUthOr:按作者或专业查找图书界面
findBookReader:按读者检索图书界面
USerInfo:显示读者信息界面
BookInfo:显示图书信息界面
各界面之间的转换如状态图4.1所示
图4.1管理员屏幕变化状态图
根据读者的功能分析,与读者相关的主要界面有以下
findBook_Author:按作者或专业查找图书界面
findBook_Reader:按读者检索图书界面
InputPass:读者验证账户名密码界面
BookInfo:显示图书信息界面
图4.2读者屏幕变化状态图
4.2界面的类图表示
针对每个屏幕的结构与功能,采用类图对其进展详细说明,如下所示。
1、借书界面
图4.3借书界面的结构类图
2、还书界面
此