ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

UML用例图学习笔记

2021-11-21 15:01:15  阅读:153  来源: 互联网

标签:关系 包含 扩展 笔记 用例 UML 执行 参与者


用例图学习笔记

什么是用例图?

  1. 概念:用例图是站在外部参与者的角度,描述其所能观察到的系统功能,主要用于对系统和子系统的功能建模。
  2. 作用:展示用例之间、用例与参与者之间是怎样相互通信的,展示了系统提供的功能。
  3. 用例图:参与者(人)、用例(椭圆框)、系统(矩形框)、通信(参与者与用例间的连接线)

注意事项:绘制用例图时,所有的用例应该绘制在矩形框内,所有的参与者应该会旨在方框外。

用例图中的元素

  1. 参与者:为实现某个目标,请求系统执行用例的一种类型或一种角色,而不是一个具体的对象。

参与者可能是人、硬件设备、外部系统或时钟。

表示方法:图标表示、人形表示
参与者分类:

  • 按参与者性质:外部系统、硬件设备、时钟、人
  • 按参与者重要性:主要参与者、次要参与者
  1. 用例:对一组场景的共同行为的抽象,(场景:用例的一次完整的、具体的执行路径,即一系列操作。是为了实现某个目标,按照某种顺序执行的一系列相关操作的集合 )用例与场景的关系可类比于类与对象的关系。
    表示方法:带名称(简单名(用例名)|全名(包名::用例名))的椭圆图形

用例图中的关系

  1. 参与者间的关系
    泛化关系(如:读者是学生、教师的父类)
  2. 用例间的关系
    - 包含关系(用构造型《include》表示,指在基本用例内部的某个位置上显式的调用另一个用例):一个用例调用另一个用例时,被调用的用例称为包含用例,调用包含用例的是基本用例。

包含关系中,虚线箭头由基本用例指向包含用例,基本用例执行时,必定调用包含用例。

       - 扩展关系(用构造型《extend》表示):两个相似用例A和B,B用例操作步骤中包含A用例的操作步骤。A用例定义为基本用例时,**B用例减去A用例后的剩余部分定义为扩展用例。**

扩展关系中,虚线箭头由扩展用例指向基本用例,基本用例执行时,只有满足特定条件才执行扩展用例。

       - 泛化关系(箭头指向:带空心箭头的实线,箭头指向父类):多个子用例中抽取共同行为组成父用例,子用例可以继承父用例的行为、关系、和通信链接。

扩展用例和包含用例统称为抽象用例,抽象用例没有参与者,由基本用例对抽象用例实例化。

  • 参与者和用例之间的关系
    关联关系(一条实线表示,参与者指向用例):表示参与者和用例间的通信,这种通信是双向的。

    什么是组织用例?

    1.概念:组织用例就是根据用例间(包含、扩展、泛化)的关系,把他们组织在一起。
    2.基本用例:能直接实现用户目标的用例,对用户而言有价值的用例。直接由参与者实例化。
    3.抽象用例:辅助用户实现其目标,如:包含用例、扩展用例。由基本用例实例化。
    4.实例化:执行用例的具体操作行为。

如何实现组织用例?

1.定义所有用例,
1.分组比较:首先在系统中识别出一组用例,进行比较,识别和提取抽象用例。
2.组内封装:

  • 如果一组中有相同的操作,就把相同的操作抽取出来封装为包含用例。
  • 若某个用例比其他用例多出部分操作,就把多出来的操作封装为扩展用例。
  • 最终系统由一组基本用例、包含用例、扩展用例组成。

什么是用例规格描述?

1.概念:对用例的详细执行流程进行描述。其中的事件流描述了用例执行的具体步骤。
2.组成元素:

  1. 事件流:用例执行操作时的有序集合(用例执行时,一系列操作组成的控制流)。

       -----基本事件流--------:事件正常并成功执行的控制流
       -----扩展事件流--------:事件执行出现意外情况时的控制流
    
  2. 用例模板:(用斜体字显示的项目为必须编写的部分)

       -----自然语言格式--------:
       -----表格形式--------:![图中还可以有:用力概述、用例的设计范围、主要参与者、次要参与者、项目相关人利益说明、规则与约束、非行为需求](https://www.icode9.com/i/ll/?i=0710078bde7040a68c713230f9e37cc8.png?,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAQFZpdmlf,size_20,color_FFFFFF,t_70,g_se,x_16)
    
  3. 用例优先级:高——中——低,首先开发优先级较高的用例,目的是尽可能早地降低风险和不确定性

  4. 用例粒度(指用例执行时包含的步骤有多少):概述级——用户目标级——子功能级,从左往右不断细化用例

用例与协作

  1. 实现(一条带虚线的空心箭头,用例图中,由协作指向用例)
    1.概念:用来描述类目间的语义关系,该关系中,一个类目描述合约,另一个类目实现这个合约。

  2. 用例与协作(用例由实线椭圆表示,协作由虚线椭圆表示,用力和协作都是类目)
    1.协作:描述一组群体对象对外表现出的整体行为。用来实现某个用例的功能。其中的对象既包含静态结构,也有动态行为。

常用建模技术

  1. 对系统语境建模
    存在于系统内部的事物的职责,正好是存在于系统外部的事物希望提供的行为,因此,存在于系统外部事物的集合,构成了系统的语境。
  2. 对软件需求建模

标签:关系,包含,扩展,笔记,用例,UML,执行,参与者
来源: https://blog.csdn.net/weixin_53083297/article/details/121451727

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有