1、武当山旅游门户网站()分类信息7.5用例图认识用例图借书者流通组工作人员借书还书预定取消预定查询用例角色关系注意:图中的虚线是解释武当山旅游门户网站()分类信息7.5用例图(续)用例图:用于描述一组用例、角色以及它们之间的关系。一个系统的用例图通常是概要地反映整个系统提供的外部可见服务和工作范围。用例图的基本元素:用例、角色和关系。进行需求分析时,通常将整个系统看作一个黑盒子,从系统外部的视点出发观察系统:它应该做什么?谁要它做?做了以后的结果
4、信息用例之间的关系包含关系包含关系用于构造多个用例共同的活动。例如,在ATM系统中,取钱、查询、更改密码等功能都需要验证用户名和密码。这种情况下应该将密码验证功能独立出来,便于复用、减少冗余。取钱查询更改密码验证用户密码includeincludeinclude武当山旅游门户网站()分类信息用例之间的关系(续)扩展关系允许一个用例扩展另一个用例的功能。例如,在图书信息管理系统中,读者还书时,系统检查所还图书是否有预订记录,如果有则执行“通知”用
5、例。在UML中扩展关系表示为箭头和extend形式。管理员还书通知读者extend武当山旅游门户网站()分类信息注意使用关系和扩展关系之间的区别,A使用B本质上是A一定使用B,同时增加自己的专属行为;而A被用例B扩展是说明A是一个一般用例,B是一个特殊用例,A在某些条件下可能使用B。武当山旅游门户网站()分类信息用例或角色之间的继承关系泛化关系有时角色或用例之间存在一种继承关系。例如,客户区分为公司客户与个人客户,公司客户又区分为政府机构和私人公司,
6、这时,描述角色之间的关系就可以用泛化关系表示。客户公司客户个人客户武当山旅游门户网站()分类信息注意用例之间的泛化关系就像类之间的泛化关系一样,子用例继承父用例的行为和含义。例如,一个银行系统中,有一个“验证用户”用例,用于验证用户的合法性,它有两个特殊的子用例,一个是“检查密码”,另一个是“检查指纹”,它们都有父用例“验证用户”的行为,并且可以出现在父用例出现的任何地方,还可以添加自己的行为。身份认证密码认证指纹认证武当山旅
7、游门户网站()分类信息用例图实例以前面图书信息管理系统为例,画出用例图。先找出参与系统地的角色:(1)读者描述:可以查询图书;预订和取消预订图书;(2)工作人员描述:帮助读者实现借书、还书、预订书、取消预订、查询操作;武当山旅游门户网站()分类信息接下来我们从角色入手寻找用例。主要角色“读者”通过“流通组工作人员”实现预订图书、取消预订、借书、还书等活动。由此,可以找出下面的一些用例:(1)预订图书本用例提供了预订图书的功能,读者可以通过浏览器直接
8、从网上预订图书;图书管理员也可以根据读者的要求预订某本图书。(2)取消预订本用例提供取消预订图书的功能。(3)还书完成还书任务,在还书是要检查所还的书是否超期、是否有其他读者预订,有的话要通知预订者。(4)借书提供借阅书功能。武当山旅游门户网站()分类信息分析这个用例图,发现“还书”用例应该被扩展,因为在还书时检查所还图书是否有预订记录,若有,则应该通知预订者前来借书。当欲借图书已全部被借出时,应该可以转向“预订”用例。读者可以直接从网上查询、预订或取消
11、务有人事信息的管理,包括人事规定的调动与聘任,职称评定,奖罚等,并且可以按照限查询人事信息,生成与输出统计报表等.该人事系统每月向公司的财务系统提供员工的工资,津贴等数据.武当山旅游门户网站()分类信息武当山旅游门户网站()分类信息7.6活动图描述从一个活动到另一个活动的流程,用于对系统的动态特性建模。在需求分析时用活动图描述一个用例内部活动流的操作步骤等。认识活动图图书馆图书信息管理系统借书活动图借书申请检查读者有效性读者信息借书记录读者无效图
12、书无效检查图书有效性检查预订预订记录清除预订记录图书信息借书记录修改图书信息创建借书记录图书信息读者无效/借书超期图书无效有预订读者流通组工作人员读者/图书编号武当山旅游门户网站()分类信息活动图中的主要图形元素泳道:活动图中的分隔线,说明谁负责执行该泳道中的活动。开始状态:活动流的开始点。表示符号为黑点。活动:活动流可能由多个活动组成,一个活动的表示符号为椭圆。操作:一个活动
13、可以有多个操作步骤,这些操作可能发生在进入活动时、退出活动时、活动内或特定的事件发生时。武当山旅游门户网站()分类信息对象:活动流影响的实体对象。活动可能会改变某个对象的状态,将活动影响的对象及其状态也标识在活动图中,使得活动图表示的信息更加完整。表示的符号为。用虚线表示哪个活动影响对象的状态。交接:是描述活动流如何从一个活动转移到下一个活动的。表示符号是活动之间的箭头线。决策:活动流中的分支判断点,在这点上根据条件判断活动流走哪个分支路径。表示符号为菱形。武当山旅游门户网站()分类信息同步:活动
14、流中多个活动可以同时发生。例如,下面的图示说明活动1、活动2和活动3是同时进行的,当三个活动完成之后,进行另一个同步,也叫做连接。结束点:活动流的结束点。武当山旅游门户网站()分类信息并发活动Action1Action2Action3武当山旅游门户网站()分类信息图书馆图书信息管理系统借书活动图的说明图中有两个泳道,说明借书用例所涉及的角色有两个:读者和图书馆工作人员。读者以“借书申请”活动开始这个工作流,这个活动将读者编号和图书编号传递给图书馆工作人员工作人员检查“读者
15、”类,看该“读者编号”是否存在;然后检查读者的借书数量是否已经超出限制,如果读者编号有效,并且借书数量没有超限,则检查图书是否在库中,否则,提示读者“读者无效”。如果欲借图书已经都被借出,则提示“图书已经被借出,是否预订?”当读者确认预订后,转去执行“预订处理”。如果库中有欲借图书,则首先检查“预订记录”,如果该读者已经预订了此书,则删除预订记录。修改此书在库数量,创建“借书记录”,结束借书过程。武当山旅游门户网站()分类信息注意:活动
17、.完成之后由销售人员关闭该订单.根据上面描述画出该公司销售过程的活动图.武当山旅游门户网站()分类信息武当山旅游门户网站()分类信息7.7状态图状态图用于对系统动态特征建模,主要是帮助理解反应型对象的行为变化。一个反应型对象是这样的对象,它的行为是通过对来自外部的事件作出反应来刻画的。状态图中主要描述一个对象的三种信息:1)对象的各种状态;2)引起状态变化的事件;3)每个状态改变时所发生的动作。编目阅览室书库借出注销书到有订单,发票/验收已编目/入
18、阅览室注销已批准/移出阅览室已编目/入库借书证件有效且库中有书/出库还书/入库遗失/处罚注销已批准/出库还书有预订/入库预订认识状态图武当山旅游门户网站()分类信息注意读者要注意状态图与活动图的区别,活动图反映控制流程,状态图反映一个对象的各个状态的变化。例如在图书管理信息系统中,我们可以对“读者”对象、“图书”对象的状态变化画出状态图;而对借书、还书、采购这些活动画出活动图。
19、武当山旅游门户网站()分类信息状态图中的转移可以由三部分组成:事件条件/动作其中的每一部分都可以省略。事件导致对象从一个状态变换到另一个状态,但有时也可以没有事件而自动发生对象的状态转移,这时对象可能在一个状态下完成某些活动后自动转移到其它状态。括号中的条件是控制转移发生的条件,例如,上图中借书的事件发生时,能否转移到借出状态,要先检查借阅者证件是否有效,并且书库有该书,满足了这些条件后,作出库动作,图书状态到达“借出”状态。练习:建模航班状态图创建一个状态图来描述航班如何从提出申请、制定航班计划、售票、起飞、飞行、到着陆的状态过程。练习步骤;1)标识出要建模的实体。2)标识出实体的状态。航班申请航班计划entry/发布航班信息do/检查当前日期批准航班计划不允许申请航班还有票航班票售完结束售票飞行准时到达目的机场延时到达目的机场售票/退票开始预售售最后一张票起飞前30分钟退票起飞前30分钟起飞天气非正常天气正常降落降落