软件工程形考三基于UML的图书馆管理系统.docx
- 文档编号:24734139
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:23
- 大小:756.30KB
软件工程形考三基于UML的图书馆管理系统.docx
《软件工程形考三基于UML的图书馆管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程形考三基于UML的图书馆管理系统.docx(23页珍藏版)》请在冰豆网上搜索。
软件工程形考三基于UML的图书馆管理系统
基于UML的大学图书馆图书
信息管理系统设计实验
系统简介
本系统为一个小型的图书管理系统,需完成以下工作:
(1)借书、还书
(2)在图书馆中增加或删除一本书
(3)按照作者或者专业领域查找一批书
(4)找出被某位读者借出的一批书
(5)找出最近借出某本书的读者
系统的用户有两类:
图书管理员和普通读者。
功能
(1)
(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。
本系统需满足以下限制:
(1)图书馆中所有未借出的书可供读者随时借阅
(2)在同一时刻,一本书不能既被借出又可供阅读
(3)一个读者一次借出图书的数目不能超过预定值
1、用例分析与设计
从以上系统简介内容中可以看出,本系统有以下几类参与者:
图书管理员Admin
读者Reader
读卡器CardReader
服务器SyStem
在上述参与者中,图书管理员和读者与系统进行交互,通过对交互场景进行归类和抽象,本系统应具有以下用例:
借书IendBook
还书returnBook
增加图书addBook
删除图书deIBook
按作者、专业检索图书findBook_AUthOr
按读者检索图书findBook_Reader
按书检索读者findReader_Book
2.1生成用例图
由以上用例分析可生成用例图,如图2.1所示
IendBOok
ne⅛jrπBook-
O
P-
fιndBookAuthor
findReader_BOOk
图2.1系统用例图
2.2用例的顺序图
为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例
进行细化,如下所示。
1、借书
:
ifMax()
5:
RetUrTI(VUei
6:
IerldBooko
∣4^RetUrnReaderlnfo(
7:
IendBOOk(String)
"T
fi:
UlPdateo
9.RetUrnReaderlnfOc
图2.2借书顺序图
函数说明:
InSertCard():
刷卡
ReadCard():
读卡
ifMax()判断借书数量是否达到上限
RetUrnReaderInfo()返回读者信息
RetUrn(true):
该读者可继续借书
IendBook():
输入借书信息
UPdate()更新数据库
2、还书
AClmln
:
returnWindo
1:
BOoOkInfOo
>rι
2BooklnfO(Stnng)
>rl
;4:
RetUrnReadertnfOo
Q⅛*・・*-■
I
I
■
I
图2.3还书顺序图
函数说明:
BOOklnfo():
输入还书信息
UPdate():
更新数据库
图2.4增加图书顺序图
RetumReaderlnfo():
返回读者信息
函数说明:
addBook():
输入增加的图书信息
ifAllowsAdd():
判断是否允许添加
UPdate():
更新图书信息
RetUrn(true):
返回添加成功
4、删除图书
:
Admin
tdelBook()
4:
IfSireO
JC
5:
RetUrn(true)
□pdate()
G:
7:
RetUm(true)
图2.5删除图书顺序图
函数说明:
delBook():
输入删除的图书信息
ifAllowsDel():
判断是否可以删除
ifSure():
是否确定删除
RetUrn(true)5:
确定删除
UPdate():
更新图书信息
RetUrn(true)7:
返回删除成功
5、按作者检索图书
图2.6按作者或专业检索图书顺序图
函数说明:
findBook_Author():
管理员或读者选择按作者或专业检索图书
AUthOr(String):
输入作者或专业信息
returnBookInfo():
返回图书信息
6、按读者检索图书
管理员部分:
:
Admin
4:
findBQ0kRm自dorp、
2:
ReaderlD(>
T3;TeturnBcokInfcO]
读者部分
函数说明:
findBook_Reader():
选择按读者检索图书Readerld():
输入读者编号
ReaderIdandPass():
输入读者编号密码returnBooklnfo():
返回书籍信息
7、
图2.9按图书检索读者顺序图
函数说明:
findReadeLBOOk():
选择按图书检索读者
BOOkID():
输入图书编号
returnReaderInfo():
返回读者信息
2、概念模型和顶层架构设计
3.1概念模型设计
图3.1系统概念模型一一分析类图
说明:
表示控制类
表示实体类
表示边界类
3.2顶层架构设计
Card
CardReader
用户交互层
Jr、
-VJ
AdminWindows
ReaderWindows
T
业务逻辑层
IendBook
returnBookaddBookdeiBook
indReader_Book
ifMaxfindBook_AUthOrfindBook_Reader
SeSSiOn
OPeratiOn
网络服务层
SyStem
LlSeFlnft)
3、用户界面设计
4.1界面变化分析
根据管理员的功能分析,与管理员相关的主要界面有以下10个:
AdminWelcome:
管理员主界面
findReader_Book:
按读者检索图书界面
IendBook:
借书界面
returnBook:
还书界面
addBook:
增加图书界面
deIBook:
删除图书界面
findBook_AUthOr:
按作者或专业查找图书界面
findBook_Reader:
按读者检索图书界面
USerInfo:
显示读者信息界面
BookInfo:
显示图书信息界面
各界面之间的转换如状态图4.1所示
findReaderBODk-
tendB∞kretum0θD<
Adnlin
WetDlTle
deiBook
1iridBook_Read
er
ReaderWelcome:
读者主界面
findBook_Author:
按作者或专业查找图书界面findBook_Reader:
按读者检索图书界面
InPUtPaSs:
读者验证账户名密码界面
BookInfo:
显示图书信息界面
各界面之间的转换如状态图4.2所示
4.2界面的类图表示
针对每个屏幕的结构及功能,采用类图对其进行详细说明,如下所示
1、借书界面
此界面包含一个图书编号文本框、一个读者编号文本框、一个借书按钮以及一个取
消按钮,如图4.3所示
1<
TeXtBoxBooklD
<
TeXtBaXReaderID
2、还书界面
此界面包含一个图书编号文本框、一个还书按钮以及一个取消按钮,如图4.4所示
VVWindow>>
TeXtBQX_BQQkID
1I
图4.4还书界面结构类图
3、增加图书界面
此界面包含一个图书编号文本框、一个图书名称文本框、一个图书作者文本框、个增加按钮以及一个取消按钮,如图4.5所示
1VVWindow>>
TeXtBOxBooklD
VVWindQw>>
TeXtBQXName
图4.5增加图书界面结构类图
4、删除图书界面
此界面包含一个图书编号文本框、一个删除按钮以及一个取消按钮,如图4.6所示
1
VVWindow>>
BnCancle
图4.6删除图书界面结构类图
5、按作者或专业查找图书界面
此界面包含一个作者姓名本框、一个查找按钮以及一个取消按钮,如图4.7所示
丨1
VVWindow>>
BnCanCle
图4.7按作者或专业查找图书界面结构类图
6、按图书查找读者界面
此界面包含一个图书编号文本框、一个查找按钮以及一个取消按钮,如图4.8所示
VVSCreen>>
findReaderBook
~1
VVWindow>>
TeXtBQX_Book
1-
1
VVWindow>>
VVWindow>>
BnFind
BnCancle
7、按读者查找图书界面
4.9所示
此界面包含一个读者编号文本框、一个查找按钮以及一个取消按钮,如图
图4.9按读者查找图书界面结构类图
8、读者验证账户名密码界面
此界面包含一个读者编号文本框、一个读者密码文本框、一个查找按钮以及一个取
消按钮,如图4.10所示
1
VVWindow>>
TeXBQXID
1
VVWindow>>
TeXtBQXPaSS
图4.10读者验证账户名密码界面结构类图
4.3界面包图的设计
1、管理员界面包图
管理员界面
VVSCreen>>
addBook
VVSCreen>>
delBook
VVSCreen>>
returnBookInfo
VVSCreen>>
IendBook
VVSCreen>>
findReaderBook
VVSCreen>>
findBookAUthOr
VVSCreen>>
findBookReader
图4.11管理员界面包图
2、读者界面包图
读者界面
VVSCreen>>
InPUtPaSS
图4.12读者界面包图
4、类设计
5.1类的属性和操作设计
5.1所示。
经过分析,系统主要的类、类的属性及操作以及它们之间的关系如图
Admin
©AdminlD
⅜>AdmιπName
⅜create()
¼delete()
⅛dateLencldate=Cumentdate毎BcoKlD:
Stnng
^Reade(ID:
BoCllean
¾x⅛ate-RefclT:
String
⅜delete()
♦addO
⅜1ind^ReaderlD(J
⅜find7BooklD()
图5.1系统类图
5.2类的行为模型设计
单单用类图对类进行描述并不能表示各实体类的动态行为,在这里我们进一步用状
态图对书籍和读者两个实体类进行分析
1、书籍的类的状态图
NeWBOOk:
新书状态;书籍在新增后进入此状态
AVailabIe:
可借阅状态
Lened:
已借出状态
DeIete:
已删除状态
书籍在刚增加后进入新书状态,可供借阅;在发生借阅事件后进入已借出状态;当书籍归还,又转化为可供借阅状态;删除后进入已删除状态。
状态图说明:
NeWReader:
新读者账户
AVailabIe:
可借阅状态
UnAVilable:
不可借阅状态
DeIete:
已删除状态
新增的读者为新读者账号状态,可借阅图书;当借书数量达到最大值时转化为不可借阅状态;当有图书归还后又进入可借阅状态;当账号被删除,转化为已删除状态。
5、小结
以上就是本小组经过详细分析、精心设计的一个图书管理系统。
经过小组的讨论以及分工合作,使得我们每个人对该系统有了比较全面的了解。
我们采用UML分析方法
对系统进行分析设计,通过对用例的分析、概念模型和顶层架构的分析、界面设计以及类的分析设计让整个系统的架构更加清晰明了。
在描述各个架构及功能时我们采用了各种图,包括状态图,类图,包图,顺序图等等,全面而详细的将图书管理系统整体到部分功能形象地展示出来。
UML统一建模课程是我们组成员设计的知识基础,通过对rose软件的实践应用,成功地完成本次软件设计的具体工作。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 形考三 基于 UML 图书馆 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)