UML用例图:提示和常见问题解答

什么是UML用例图(UCD),何时应该使用它?

UML用例图可用于以水平方式描述系统的功能。也就是说,UCD不仅仅代表系统各个功能的细节,还可以用来显示其所有可用功能。但值得注意的是,UCD与序列图或流程图根本不同,因为它们不会尝试表示系统操作和子操作应执行的次序或次数。本常见问题解答中有许多图形示例; 你可能想看看它们以熟悉它们的外观。 

UCD只有4个主要元素:您描述的系统与之交互的角色系统本身,用例或系统知道如何执行的服务,以及表示这些元素之间关系的线。 

您应该使用UCD从上到下的角度来表示系统的功能(也就是说,系统的功能很明显,但所有描述都处于非常高的水平。稍后可以将更多详细信息添加到图表中阐明系统行为中的有趣点。) 
示例: UCD非常适合描述可以使用数据库系统完成的所有事情的任务(所有可能使用它的人员(管理员,开发人员,数据输入)人员。) 

您不应该使用UCD来表示异常行为(发生错误时)或尝试说明为完成任务必须执行的步骤序列。使用序列图显示这些设计功能。
示例: UCD不太适合描述TCP / IP网络协议,因为有许多异常情况,分支行为和条件功能(当数据包丢失或延迟时会发生什么,连接何时死亡?) 

你怎么知道演员在UCD中是谁?

在Action / Response表中工作时,对actor进行操作非常简单:行为出现在“Actor's Actions”列中的实体是actor,其行为出现在“System's Response”列中的实体是系统中的组件。 

如果您使用非正式叙述,序列图或场景描述,则actor通常是那些行为无法控制或更改的实体(即,不是您正在构建或描述的系统的一部分的代理。)最明显的演员候选人是系统中的人; 除非在极少数情况下,您所描述的系统实际上是一个人为过程(例如与员工应该遵循的客户打交道的具体方法),您必须与之互动的人才都是演员。如果您的系统与其他系统(数据库,由其他人维护的服务器,遗留系统)进行交互,您最好将这些视为演员,因为您不想描述他们的行为。 
例: 在添加新的数据库系统来管理公司的财务时,您的系统可能必须与现有的库存管理软件进行交互。由于您没有编写此软件,不打算替换它,只使用它提供的服务,因此该系统成为一个actor是有意义的。 

你怎么知道在“系统”框中输入什么?

系统框仅出现在顶层图上(请记住,典型的UML用例描述将由许多图表和子图组成),并且应包含用例椭圆,一个用于系统提供的每个 顶级服务对其演员。任何一种内部行为,你的系统可能有一个只能使用该系统的其他部分应该不会出现在系统框。考虑这些顶级服务的一种有用方法如下:如果用例表示顶级服务,那么与其交互的参与者在单个会话中请求您的系统服务是有意义的(无论何种意义上,“会话”在您的系统中都是可理解的。) 

示例:在下图中,我们想要表示相机的用例。假设我们选择“Open Shutter”,“Flash”和“Close Shutter”作为顶级用例。当然这些都是相机所具有的行为,但没有摄影师会拿起相机,打开快门&

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值