UML(Unified Modeling Language,统一建模语言)是一个通用的模型驱动的开发语言,适用于软件系统的制作和文档描述。用例图是 UML中最常用的模型之一,其主要用于描述系统功能和角色之间的联系。在用例图中,用例表示系统或软件的某个功能,角色表示参与该功能的实体,关联表示用例和角色之间的连接关系。
一、用例和角色的关联
用例和角色之间的关联关系是用例图中的基本元素之一,通常表示为一个实线连接。用例和角色之间的关联表明它们之间的协作,即系统在完成某个功能时所涉及到的外部实体。
在一个用例上如果有多个角色,代表这个用例有多种形式的执行,并且与多个外部实体互动。例如,一个在线购物网站的用例图中,有一个“购物”用例,跟它关联的角色可能是“顾客”和“管理员”,顾客通过购物可以买到商品,管理员通过购物管理网站的商品和订单。
二、用例之间的关联
除了用例和角色之间的关联之外,用例之间的关联在用例图中也非常重要。有三种主要的用例之间的关联:依赖,扩展和泛化。
1. 依赖 - 这是一个用于描述一个用例需要另一个用例的情况。当一个用例需要另一个用例提供服务或者信息时,就需要使用依赖关系来说明这种情况。这种关系通常表示为一个虚线箭头指向被依赖的用例。
例如,在一个语音识别软件的用例图中,“翻译”用例依赖于“识别”用例,因为它需要对录音识别结果进行翻译。
2. 扩展 - 扩展用例可以为另一个用例提供可选的或条件性的额外功能。扩展用例是通过另外一个用例作为基础,但是只有在某些条件下才会被激活。扩展用例通常表示为带有虚线的刻度线箭头,通常伸出至被扩展的用例。
例如,一个银行柜员的用例图中,“插入银行卡”和“输入密码”用例将作为“查询余额”的扩展用例。如果顾客想要查询余额,他们必须插入银行卡和输入密码。如果没有插入银行卡或输入密码,则该用例将不会扩展。
3. 泛化 - 泛化用例是指与基础用例相同的用例,只是在某些方面存在差异。泛化用例是指用例之间的继承关系,基础用例中定义的属性和行为可以在泛化用例中进行修改和扩展。泛化用例通常表示为一个空心箭头,箭头的连线从泛化用例指向基础用例。
例如,在一份旅游app的用例图中,“查询周边景点”用例是“旅游”用例的泛化用例,因为查询周边景点只是旅游中的一个功能,旅游用例中还包含了其他的功能,例如查询酒店和购买门票等等。
扫码咨询 领取资料