资源描述
uml建模应用实例图书馆管理系统
———————————————————————————————— 作者:
———————————————————————————————— 日期:
22
个人收集整理 勿做商业用途
图书馆管理系统
UML建模分析与设计
一、图书馆管理系统的需求分析
系统的功能需求主要包括以下几点:
1. 借阅者可以通过网络查询书籍信息和预定信息;
2. 借阅者能够借阅书籍和还书;
3. 图书管理员能够处理借阅者的借阅和还书请求;
4. 系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者的账户,增加和删除书籍。
二、系统的用例图
1.借阅者请求服务的用例图
用例图说明:
search foe book:书籍查询用例。
reserve the book:书籍预定用例。
login the system:登录系统,用户可以登录系统以便进行借阅信息查询以及预定书籍等操作。
query info:查询借阅信息.
login the system:借阅书籍。
return the book:归还书籍.
return with fine:还书时交纳罚金,如果借阅者所借书籍超过借阅期限未还,还书时候就要交纳罚金.
2.图书馆管理员处罚借书、还书等的用例图
用例图说明
Get book: 书籍归还处理.
lend book:书籍借阅处理。
remove reservation: 删除书籍预定信息。
get with fine:还书时收取罚金。
check user count:检查用户借阅凭证的合法性。图书馆管理员在借阅者借书时候要检查用户借阅凭证的合法性.
3.系统管理员进行系统维护的用例图
用例图说明:
remove or update borrower:删除或更新借阅者账户信息。
add borrower:添加借阅者账户。remove book:删除书籍.
add book:增加书籍。remove or update title:删除或更新书目.add title:增加书目。query book info:书籍信息查询。
query borrower info:查询读者信息。
三、系统的时序图
1。系统管理员添加书籍的时序图
时序图说明:
Add item():添加书籍函数。find(string):根据书籍查找相应书目的函数。Creat(integer,title):修改书籍数目的函数.
2.系统管理员添加借阅者账户的时序图
时序图说明
creat (string,string):添加新的借阅者的账户的函数。
3.系统管理员删除书目的时序图
时序图说明:
find (string):书目类的查找函数。find on title(Title) :查找此类书目下书籍信息的函数。destroy():删除书籍信息的函数。destroy():删除书目信息的函数。
4.图书馆管理员处理书籍借阅的时序图
时序图说明:
find(string):查找书目的函数。find item():查找所要书籍的函数。find on title(Title):根据书目名从数据库中找到书目信息的函数。
identify borrower():验证借阅者身份的函数.find(string):根据借阅者的登录帐号找到借阅者信息的函数。creat(borroewr,item):修改借阅信息的函数。
5.图书馆管理员处理书籍归还的时序图
时序图说明:
check():检查书籍状况的函数。update():更新书籍类信息的函数。update():更新借阅者借阅信息的函数.
6。借阅者查询书籍信息的时序图
时序图说明:
find on title(Title):根据书目查找到相应的书籍信息.
7.借阅者预订书籍的时序图
时序图说明:
Login:登录系统的函数。find(string):查找相应书目的函数。Reserve():预订书籍的函数。
四、系统的协作图
1。系统管理员添加书籍的协作图
协作图说明:
Add item():添加书籍的函数。
Find(string):根据书籍名查找相应书目的函数。
Update():修改某类书目下书籍数量的函数。
2、系统管理员删除书籍的协作图
协作图说明:
Remove_item():删除书籍的函数。
Find(string):根据书籍名查找相应书目的函数。
Update():修改某类书目下书籍数量的函数。
3、图书管理员处理借书的协作图
协作图说明:
Identify_borrower():验证借阅者身份的函数.
Find_reservation():查找预订信息的函数。
Find(borrower,title):根据借阅者借阅的书籍名查找相应预订信息的函数。
Borrow():处理借书的函数。
Updat():更新某一书目下书籍数量的函数.
Check_if_max():检查借阅凭证所借书籍数目是否已经超过最大限额的函数.
4、图书管理员处理书籍归还的协作图
协作图说明:
Find_borrower():查找借阅者的信息的函数。
Find(string):根据借阅者查找借阅信息的函数。
Return_back():处理还书的函数。
Update():更新书记数目的函数。
五、系统的状态图
1、书的状态图
状态图说明:
new book:还未进库的新书。Avaiable:书籍处于可用状态。Delete:已从书库删除的书。Reserved:预定状态。Borrowerd:借出状态。
2.借阅者账户的状态图
状态图说明:
new borrower:新加入的借阅者的账户。account avaiable:借阅账户为可用状态,即未达到所规定的书籍借阅数目的上限。account unavailable:借阅账户为不可用状态,即已达到所规定的书籍借阅数目的上限,不能再借书了delete account:个人账户被删除的状态.
六、系统的活动图
1、借阅者的活动图
活动图说明:
Self-help Service:打开图书馆负责自助服务的计算机。
Search for books:查询需要的书籍。
Login登录管理系统。
View book information:查看书籍信息.
Reserve the book:预订书籍。
Exit System:退出系统。
Leave Computer:离开自助服务的计算机。
2。
图书管理员的活动图
活动图说明:
Login the system:图书管理员登录系统。
Get book:处理还书操作。
Lend book:处理借书操作。
Update borrower's information:更新借阅者借阅凭证的信息。
Accept money:收取罚金。
3。
系统管理员的活动图
系统管理员要处理的内容比较多,活动图也比较大,所以将其分为3个图。
(1) 系统管理员维护借阅者账户的活动图
(2) 系统管理员进行书目信息维护的活动图
(3)系统管理员维护书籍信息的活动图
活动图说明:
Login the system:登录系统。
Operation on borrower:对借阅者账户操作。
Operation on title:对书目进行操作.
Operation on book:对书籍进行操作
Query borrower info:查询借阅者信息。
New borrower:添加新的借阅者账户.
Remove or Update borrower:删除或更新借阅者账户。
Query title:查询书目信息。
New title:增加新的书目。
Remove or update title:删除或更新书目.
Add book:增加书籍信息。
Remove book:删除书籍信息。
Exit the system:退出系统。
七、类图的生成
在图书馆管理系统中用到的主要类有7个:Item,Title,Loan,Reservation,Borrower,Administrator,Librarian,前5个类有一定的关系。
1。参与者相关的类
说明:borrow类是借阅者的类。Librarian类是图书管理员的类。Administrator类是系统管理员的类。
2。系统中用到的其他类
Item 类是具体某本书的类。Title类记录书目信息的类。Loan类是某本书的借阅信息类.Reservation类是预订信息类。
3.各类之间的关系
Title类是书库里的一条记录,而item类则是具体的书籍。每条记录都会有多本书存在,所以Title 和item之间是一对多的关系;Title与reservation之间也是一对多的关系。也就是说Title可以有多个预订记录,但是也可以没有。Item与reservation之间是一对一的关系,不可能有同一本书被2个人预订的情况,borrower 与loan以及borrower与reservation之间是一对多的关系.如下图:
八、总结:
以图书管理系统的开发过程为主线,用UML模型元素表示了开发各阶段的中间产品,让我们在实际项目中,学会如何应用UML设计语言对软件产品进行建模。
展开阅读全文