首页 > 编程知识 正文

用例图包括哪四种元素,uml用例图模型元素

时间:2023-05-05 14:37:56 阅读:38566 作者:3180

为什么要使用用例图,通常是软件系统的用户数量庞大(或者用户类型多),每个用户只知道自己是如何使用系统的,但没有人确切地知道整个系统的运行。 因此,用用例模型代替传统的功能说明往往能更好地了解用户的需求,并回答了“系统应该为每个(或每个类)用户做什么”这个问题。

用例模型描述了外部代理理解的系统功能。 用例模型的建立是系统开发人员和用户反复讨论的结果,表明开发人员和用户就需求规格达成了一致。

用例图有哪些要素? 用例图中包含的模型元素包括系统、使用者、用例和用例之间的关系。 图1是自动售货机系统的用例。 图中方形表示系统,椭圆表示用例,销售、供货、取现是自动售货机系统的典型用例。 匹配者代表行为者,它们之间的连接代表关系。

图1是自动售货机系统的用例图【1】系统被认为是提供用例的黑匣子,内部如何工作、用例如何实现对建立用例模型并不重要;

表示系统的边框表示系统的边界,用于限定系统的功能范围,定义系统具有的功能。 描述该系统功能的用例在块内,表示外部实体的行为者在块外。

【2】用例一个用例是行为人感知到的系统的完整功能。 UML将用例定义为系统完成的一系列动作,使特定代理可以观察动作的结果。 这些操作包括完成系统内部的计算和工作,以及与某些代理的通信。 通过将用例与使用者相关联,以关联的方式展示用例与哪些使用者交互。 这种相互作用是双向的。

用例具有以下特征:

用例表示特定用户可见的功能,而实现特定用户目标的用例始终由使用者启动。 此外,为使用者提供可识别值的用例必须是完全谨慎的。 用例是类,表示功能的类,而不是使用该功能的特定实例。 用例实例是系统的实际使用方法,通常将用例实例称为位脚本。 脚本是系统的具体运行过程。 例如,在自动售货机系统中,xndkl投币购买矿泉水,系统收钱后送矿泉水。 上述过程是脚本。 顺利的羊投入硬币买可乐,但是可乐和卖完了。 于是,系统发出提示信息,将钱还给顺利的羊,这一过程是另一个脚本。

【3】行为人行为人是指与系统相互作用的人或者其他系统,表示外部实体。 使用用例并与系统交互的人和物都是行为者。

行为人表示作用,不是特定的人或物。 例如,在自动售货机系统中,使用销售功能的人可以使用xndkl (买矿泉水)、买顺利的羊,但不能将xndkl或顺利的羊这样的个体对象称为行为者。 事实上,特定的人可以扮演各种各样的角色。 例如,一个人可以向售货机添加商品(执行商品提供功能),从售货机取钱(执行取钱功能)。

用例图中用直线连接行为人和用例,表示两者之间交换信息,称为通信联系。 行为人触发(激活)用例,与用例交换信息。 一个行为人可以联系多个用例,相反,一个用例也可以联系多个行为人。 即使是同一用例,根据行为者的不同作用也不同。 行为人可以分为主行为人和副行为人,也可以分为主动行为人和被动行为人。

实践表明,行为人对确定用例非常有用。 在大型复杂的系统中,创建用例列表可能很困难。 首先,创建代理列表,然后为每个代理创建用例。 这样做可以相对容易地创建用例模型。

【4】用例之间的关系UML用例之间主要有扩展和使用两种关系,它们是泛化关系的两种不同形式。

(1)在有扩展关系的用例中添加一些动作来构成另一个用例。 这两个用例之间的关系是扩展关系,后者继承了前者的一些行为,通常将后者称为扩展用例。 例如,在自动售货机系统中销售”是基本的用例,顾客只要购买罐装饮料,销售功能就会顺利完成,但如果想要购买装在纸杯里的散装饮料,就无法执行该用例提供的正常动作,必须进行某些变更人们可以修改销售用例,使其既能提供卖罐装饮料的正常动作,也能提供卖散装饮料的非常规则的动作,这将这个用例与一些特殊的判断和逻辑混合在一起,使正常的流程难以理解。 在图2中,将通常的动作放在“销售”的用例中,将不合规则的动作放在“散装饮料”的用例中。 这两个用例的关系是扩展关系。 在用例图中,用例之间的扩展关系显示了版本化类《扩展》的泛化关系。

)使用关系如果一个用例使用另一个用例,则在这两个用例之间配置使用关系。 一般来说,如果多个用例中具有相同的动作,则可以提取它们相同的动作并分别构成一个用例(称为抽象用例)。 这样,如果在一个用例中使用该抽象用例,就好像该用例包含抽象用例中的所有行为一样。 例如,在自动售货机系统中,在“供货”和“收取货款”两个用例中,第一个动作是摘机打开,但最后一个动作是关机保险。 从这两个用例中,可以将第一个动作抽象为“打开机器”的用例,将最后一个动作抽象为“关闭机器”的用例。 因此,“交货”和“取钱”用例在运行时必须使用上述两个抽象用例,它们之间构成了使用关系。 在用例图中,用例之间的使用关系用带版类《使用》的泛化关系表示,如图所示

图2请注意用例图扩展和使用的异同:包括扩展和使用的关系。 这两种关系都意味着从几个用例中提取它们的共同行为,并将其放在其他用例中使用或扩展的一个独立用例中,但使用和扩展的目的不同。 通常在描述一般行为变化时采用扩展关系; 两个或多个用例发生重复

描述又想避免这种重复时,可以采用使用关系。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。