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