1、1,软件工程概论 UML建模案例之,图书管理系统建模实例,2,一、目的,通过“图书管理系统”UML建模的过程了解面向对象的系统分析与设计方法。,3,二、建模工具,Rational Rose Office Visio,4,三、步骤,1 图书馆管理系统的需求分析,产生用例图。 2 根据需求建立系统的静态模型,构造系统的结构,产生:类图,对象图,组件图,部署图。 3 描述系统的动态行为,产生:状态图,活动图,时序图,协作图。,5,1 图书馆管理系统的需求分析,系统的功能需求主要包括以下几个方面: 借阅者可以通过网络查询书籍信息和预定书籍。 借阅者能够借阅书籍和还书。 图书管理员能够处理借阅者的借阅和
2、还书请求。 系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。 系统管理员还可以查询书籍信息和借阅者信息。,面向结构的分析、设计如何实现?画出顶层数据流图。设想下与用例图的关系。,7,2 系统的UML基本模型,2.1 系统的用例图 2.2 系统的类图 2.3 系统的时序图 2.4 系统的协作图 2.5 系统的状态图 2.6 系统的活动图 2.7 系统的组件图 2.8 系统的部署图,8,2.1 系统的用例图,创建用例图之前首先需要确定参与者。 系统的参与者主要有三类: 读者(也可称为借阅者) 图书馆管理员 图书馆管理系统维护者,9,2.1 系
3、统的用例图,(1) 借阅者请求服务的用例图 (2) 图书馆管理员处理借书、还书等的用例图 (3) 系统管理员进行系统维护的用例图,10,(1) 借阅者请求服务的用例图,11,(2) 图书馆管理员处理借书、还书等的用例图,12,(3) 系统管理员进行系统维护的用例图,13,2.2 系统的类图,(1) 系统中主要的类 (2) 各个类之间的关系,14,(1) 系统中主要的类,参与者相关的类 系统中用到的其他类,15, 参与者相关的类,16, 系统中用到的其他类,return():Boolean,return():Boolean,17,(2) 各个类之间的关系,18,2.3 系统的时序图,(1) 系统
4、管理员添加书籍的时序图 (2) 系统管理员添加借阅者帐户的时序图 (3) 系统管理员删除书目的时序图(4) 图书管理员处理书籍借阅的时序图 (5) 图书管理员处理书籍归还的时序图(6) 借阅者查询书籍信息的时序图 (7) 借阅者预订书籍的时序图,19,(1) 系统管理员添加书籍的时序图,20,(2) 系统管理员添加借阅者帐户的时序图,21,(3) 系统管理员删除书目的时序图,22,(4) 图书管理员处理书籍借阅的时序图,23,(5) 图书管理员处理书籍归还的时序图,24,(6) 借阅者查询书籍信息的时序图,25,(7) 借阅者预订书籍的时序图,theItem: Item,26,2.4 系统的协
5、作图,(1) 系统管理员添加书籍的协作图 (2) 系统管理员删除书籍的协作图(3) 图书管理员处理借书的协作图 (4) 图书管理员处理还书的协作图(5) 借阅者预留书籍的协作图,27,(1) 系统管理员添加书籍的协作图,28,(2) 系统管理员删除书籍的协作图,如何修改这张图? 注意书目(title)与书籍(item)的区别,29,(3) 图书管理员处理借书的协作图,留作练习!,30,(4) 图书管理员处理还书的协作图,31,(5) 借阅者预留书籍的协作图,32,2.5 系统的状态图,(1) 书的状态图 (2) 借阅者帐户的状态图,33,(1) 书的状态图,34,(2) 借阅者帐户的状态图,3
6、5,2.6 系统的活动图,(1) 图书管理员的活动图(2) 借阅者的活动图(3) 系统管理员的活动图,36,(1) 图书管理员的活动图,37,(2) 借阅者的活动图,如何改进?考虑借书、还书留作练习。,38,(3) 系统管理员的活动图,系统管理员维护借阅者帐户的活动图 系统管理员进行书目信息维护的活动图 系统管理员维护书籍信息的活动图,39,系统管理员维护借阅者帐户的活动图,40,系统管理员进行书目信息维护的活动图,41,系统管理员维护书籍信息的活动图,42,2.7 系统的组件图,(1) 业务对象组件图 (2) 用户界面的组件图,43,(1) 业务对象组件图,44,(2) 用户界面的组件图,45,2.8 系统的部署图,