UML实验例子.docx
- 文档编号:1655135
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:23
- 大小:208.73KB
UML实验例子.docx
《UML实验例子.docx》由会员分享,可在线阅读,更多相关《UML实验例子.docx(23页珍藏版)》请在冰点文库上搜索。
UML实验例子
图书管理系统面向对象分析与设计
1图书管理系统需求分析
图书管理系统在启动时要求管理员输入用户名和密码,只有验证成功才可以进入系统。
图书管理系统为管理员提供主功能界面。
系统应为管理员提供添加、修改和删除图书的的相关信息,添加借阅者的相关信息,对借阅者预约图书处理、对借阅者图书借阅处理和对借阅者图书归还的处理。
借阅者可以借阅图书和还书。
系统的属于局域网系统,客户端在Windows平台下运行,数据库使用Oracle在UNIX平台下运行。
系统还需要有较好的安全性和可扩展性。
2图书管理系统分析建模
2.1系统参与者
由系统需求分析,经过候选和精化参与者,图书管理系统的主要参与者有:
1.Administrator:
管理员。
2.Borrower:
借阅者。
2.2系统用例
对于待开发的图书管理系统根据以上需求分析及图书管理中各种需求的处理流程经过候选和评估,可提取以下的几个用例:
借书(BorrowBook):
提供借阅图书的功能。
还书(ReturnBook):
提供归还图书的功能。
维护借阅者信息(MaintainBorrowerInfo):
提供创建和删除借阅者信息的功能。
维护书籍信息(MaintainBookInfo):
提供添加、修改、删除和查询图书功能。
系统登录(Login):
提供系统登录功能。
2.3系统用例描述
用例名称:
系统登录(Login)
描述:
(Login)必须允许管理员和用户进入这个系统。
登陆后才能操作。
前置条件:
无
部署约束:
必须允许管理在图书馆的前台机器上的客户端登录,而借阅者通过前台的读卡器刷卡登录。
正常事件流:
管理员或者借阅者的信息是有效的
1.当管理员登录系统时,用例启动。
2.系统提示管理员输入用户名和密码,借阅者刷卡。
3.系统验证管理员输入的用户名和密码,如正确,则管理员登录到系统中。
可选事件流:
无
异常事件流:
无效的验证信息
1.管理员输入用户名和密码。
2.系统提示输入的用户名和密码错误。
3.系统在日志中记录错误信息。
4.用户登录超过三次后关闭界面。
活动图:
非功能性需求:
用户密码不可以明文显示
说明:
借阅者用借阅卡登录进入系统
未解决问题:
无
用例名称:
借书(BorrowBook)
描述:
(BorrowBook)必须允许管理员对借阅者进行借书处理,借阅者通过刷卡登录后可以借书。
前置条件:
登录前管理员需要登录到系统中,借阅者在借书之前也要刷卡登录到系统中。
部署约束:
必须在图书馆内前台进行,并且需要扫描图书信息到系统中。
正常事件流:
用例成功后,系统创建并存储借阅记录
1.当借阅者借阅图书时,用例启动。
2.借阅者刷卡显示借阅者相关信息,管理员扫描图书,录入图书信息。
3.根据时间算法确定图书借出日期和归还日期。
4.创建借阅记录。
5.存储借阅记录。
6.管理员将图书借给读者。
可选事件流:
图书延期
1.借阅者将图书给管理员,办理延期。
2.借阅者刷卡,管理员扫描图书。
3.管理员更改借阅期限。
4.更改借阅记录。
5.管理员将图书还给借阅者,用例结束。
异常事件流:
借阅卡冻结,借书无效
1.借阅者刷卡后,提示借阅者已借图书到期超过5天,
2.或者借阅者的借书数量超过最大的借书数量。
3.图书扫描错误,系统不能读取图书信息。
4.取消借阅,用例结束。
活动图:
非功能性需求:
无
说明:
借阅者借书数量跟借阅者身份有关(学生、老师等)。
未解决问题:
借阅者卡损坏后通过临时卡记录借阅者信息进行借书
用例名称:
还书(ReturnBook)
描述:
(returnBook)必须允许管理员对借阅者进行还书处理。
前置条件:
登录前管理员需要登录到系统中。
部署约束:
必须在图书馆内前台进行,并且需要扫描图书信息到系统中。
正常事件流:
用例成功后,系统更改书籍状态
1.当借阅者归还图书时,用例启动。
2.管理员扫描图书,录入图书信息。
3.将图书状态设为已还。
4.根据时间算法确定图书归还的当前日期。
5.更改借阅记录,用例结束。
可选事件流:
无
异常事件流:
图书磁条损坏,扫描不成功。
活动图:
非功能性需求:
无
说明:
借阅者借书数量跟借阅者身份有关(学生、老师等)。
未解决问题:
无
用例名称:
维护借阅者信息(MaintainBorrowerInfo)
描述:
(MaintainBorrowerInfo):
必须为管理员提供创建和删除借阅者信息的功能。
前置条件:
登录前管理员需要登录到系统中。
部署约束:
必须在图书馆内前台进行,并且需要根据借阅卡添加借阅卡。
正常事件流:
用例成功后,系统修改相应信息
1.当管理员维护借阅者信息时,用例启动。
2.管理员登录系统。
3.如果选择“添加借阅者信息”,则执行可选事件流1:
添加借阅者信息。
4.如果选择“查询借阅者信息”,则执行可选事件流2:
查询借阅者信息。
5.如果选择“删除借阅者信息”,则执行可选事件流3:
删除借阅者信息。
6.添加或删除借阅者记录,用例结束。
可选事件流1:
1.根据借阅卡信息,录入系统,例如:
借阅者ID,姓名,身份等。
2.系统存储借阅者信息。
可选事件流2:
根据借阅者信息查询借阅者信息,系统显示借阅者信息。
可选事件流3:
根据借阅者信息,系统删除借阅者信息。
异常事件流:
1.如果借阅者已存在,则系统显示提示信息,用例被终止。
2.如果查找不到借阅者,则系统显示提示信息,用例被终止。
活动图:
非功能性需求:
校对借阅卡和借阅者信息,确保借阅卡可用。
说明:
借阅卡信息在未录入系统之前,借阅者不用借书。
未解决问题:
无
用例名称:
维护图书信息(MaintainBookInfo)
描述:
(MaintainBookInfo):
必须为管理员提供创建、修改、查询和删除图书信息的功能。
前置条件:
登录前管理员需要登录到系统中。
部署约束:
必须在图书馆内前台进行,通过扫描仪稻苗图书信息。
正常事件流:
用例成功后,系统修改相应图书信息
1.当管理员维护图书信息时,用例启动。
2.管理员登录系统。
3.如果选择“添加图书信息”,则执行可选事件流1:
添加图书信息。
4.如果选择“查询图书信息”,则执行可选事件流2:
查询图书信息。
5.如果选择“修改图书信息”,则执行可选事件流3:
修改图书信息。
6.如果选择“删除图书信息”,则执行可选事件流4:
删除图书信息。
7.添加、查询、修改或删除借阅者记录,用例结束。
可选事件流1:
1.根据图书信息,录入系统,例如:
图书ID,书名,出版社等。
2.系统存储图书信息。
可选事件流2:
根据借阅者信息查询图书信息,系统显示图书信息。
可选事件流3:
根据需要修改的图书信息,录入修改信息,系统修改图书信息。
可选事件流4:
根据图书信息,系统删除图书信息。
异常事件流:
3.如果图书已存在,则系统显示提示信息,用例被终止。
4.如果查找不到图书,则系统显示提示信息,用例被终止。
活动图:
非功能性需求:
确保图书的来源正规,图书均为正版书。
说明:
无
未解决问题:
无
2.4绘制用例图
BorrowBook(借书):
提供借阅图书的功能。
ReturnBook(还书):
提供归还图书的功能。
MaintainBorrowerInfo(维护借阅者信息):
提供创建和删除借阅者信息的功能。
MaintainBookInfo(维护书籍信息):
提供添加、修改、删除和查询图书功能。
Login(系统登录):
提供系统登录功能。
3图书管理系统设计建模
3.1分析类图
1.边界类(boundary)
2.控制类(control)
3.实体类(entity)
3.2时序图(按ABCE法则)
1.管理员登录成功的时序图
时序图说明:
getLoginForm():
为管理员提供登录窗口。
submitInfo():
将管理员输入的信息提交给控制类。
getSubmitInfo():
控制类获得提交信息的方法。
verity():
控制类信息验证方法。
verityLogin():
实体类验证用户名和密码是否正确的方法。
displayWelcome():
显示欢迎信息的方法。
2.管理员登录失败的时序图
时序图说明:
getLoginForm():
为管理员提供登录窗口。
submitInfo():
将管理员输入的信息提交给控制类。
getSubmitInfo():
控制类获得提交信息的方法。
verity():
控制类信息验证方法。
verityLogin():
实体类验证用户名和密码是否正确的方法。
displayErrorMsg():
提示错误信息方法。
3.管理员处理还书成功的时序图
时序图说明:
getBookInfo():
获得图书信息的方法。
submitBookInfo():
将管图书的信息提交给控制类的方法。
getSubmitInfo():
控制类获得提交信息的方法。
check():
控制类信息验证方法。
checkBook():
实体类验证图书信息是否正确的方法。
update():
实体类(BookInfo)更改借书记录的方法。
updateStatus():
实体类(BorrowBookInfo)更改图书借阅状态的方法。
displayBookInfo():
显示图书信息方法。
4.管理员维护书籍信息的时序图。
时序图说明:
getOperForm():
给管理员提供维护图书的界面的方法。
setBookInfoForm():
给管理员提供添加图书信息的界面的方法。
selectOper():
查询图书信息的方法。
removeOper():
删除图书信息的方法。
createOper():
添加图书信息的方法。
displaySuccessMsg():
提示管理员删除成功的方法。
displayBookInfo():
显示图书信息方法。
submitBookInfo():
将管图书的信息提交给控制类的方法。
getSelectInfo():
控制类获得查询操作的信息的方法。
select():
控制类查询操作的方法。
selectBook():
实体类查询图书信息的方法。
getRemoveInfo():
控制类获得删除操作的信息的方法。
delete():
控制类删除操作的方法。
deleteBook():
实体类删除图书信息的方法。
getCreateInfo():
控制类获得添加图书信息的方法。
create():
控制类添加图书操作的方法。
createBook():
实体类添加图书信息的方法。
getBookInfo():
获得添加图书信息的方法。
3.3协作图
1.管理员登录验证成功的协作图
2.管理员登录验证失败的协作图
3.管理员处理还书成功的协作图。
4.管理员维护图书信息的协作图。
3.4类图
还书的类图关系:
3.5包图
3.6部署图
4数据建模
图书管理系统包括四个表,如下图:
生成的SQL语句:
CREATETABLEAdminInfo(
AdminIDVARCHAR(10)NOTNULLUNIQUE,
AdminNameVARCHAR
(1)NOTNULL,
AdminPWDVARCHAR(12)DEFAULT123456NOTNULL,
AdminStatusBITDEFAULT1NOTNULL,
CONSTRAINTPK_AdminInfo0PRIMARYKEYNONCLUSTERED(AdminID)
)
GO
CREATETABLEBorrowInfo(
Borrow_IDVARCHAR(10)NOTNULLUNIQUE,
Borrow_nameVARCHAR(8)NOTNULL,
B_BookNameVARCHAR(16)NOTNULL,
BorrowStatusBITDEFAULT1NOTNULL,
CONSTRAINTPK_BorrowInfo3PRIMARYKEYNONCLUSTERED(Borrow_ID)
)
GO
CREATETABLEBorrowerInfo(
B_IDVARCHAR(10)NOTNULLUNIQUE,
B_NameVARCHAR(6)NOTNULL,
B_PWDVARCHAR(12)NOTNULL,
B_StatusBITDEFAULT1NOTNULL,
AdminIDVARCHAR(10)NOTNULLUNIQUE,
AdminInfo_AdminIDVARCHAR(10)NOTNULLUNIQUE,
CONSTRAINTPK_BorrowerInfo1PRIMARYKEYNONCLUSTERED(B_ID)
)
GO
CREATETABLEBookInfo(
BookIDVARCHAR(10)NOTNULLUNIQUE,
BookNameVARCHAR(16)NOTNULL,
BookPublishVARCHAR(16)NOTNULL,
BookISDNVARCHAR(18)NOTNULL,
BookAuthorVARCHAR(8)NOTNULL,
BookPriceFLOAT(38)NOTNULL,
BookCaseVARCHAR(8)NOTNULL,
BookStatusBITDEFAULT1NOTNULL,
AdminIDVARCHAR(10)NOTNULLUNIQUE,
AdminInfo_AdminIDVARCHAR(10)NOTNULLUNIQUE,
CONSTRAINTPK_BookInfo2PRIMARYKEYNONCLUSTERED(AdminID,BookID)
)
GO
ALTERTABLEBorrowerInfoADDCONSTRAINTFK_BorrowerInfo7FOREIGNKEY(AdminInfo_AdminID)REFERENCESAdminInfo(AdminID)
GO
ALTERTABLEBorrowerInfoADDCONSTRAINTFK_BorrowerInfo1FOREIGNKEY(AdminID)REFERENCESAdminInfo(AdminID)
GO
ALTERTABLEBookInfoADDCONSTRAINTFK_BookInfo6FOREIGNKEY(AdminInfo_AdminID)REFERENCESAdminInfo(AdminID)
GO
ALTERTABLEBookInfoADDCONSTRAINTFK_BookInfo0FOREIGNKEY(AdminID)REFERENCESAdminInfo(AdminID)
GO
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UML 实验 例子