用例图初学笔记
来源:互联网 发布:linux 修改profile 编辑:程序博客网 时间:2024/05/01 03:52
用例建模是UML建模的一部分,它也是UML里最基础的部分。用例建模的最主要功能就是用来表达系统的功能性需求或行为。
用例图是用来描述什么角色通过某某系统能做什么事情的图,用例图关系的是系统的外在表现,系统与人的交互,系统与其它系统的交互。
将系统看做黑盒,从外部执行者的角度来理解系统。
其实用例就是对系统功能的描述而已,不过一个用例描述的是整个系统功能的一部分。这一部分一定要是在逻辑上相对完整的功能流程。
一、元素
1. 参与者
参与者不是特指人,是指系统以外的,在使用系 统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。
参与者在画图中用简笔人物画来表示,人物下面附上参与者的名称。
2. 用例
用例是参与者想要系统做的事情。对于对用例的命名,我们可以给用例取一个简单、 描述性的名称,一般为带有动作性的词。
用例在画图中用椭圆来表示,椭圆下面附上用例的名称。
3. 系统边界
系统边界是用来表示正在建模系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。
4.线条
箭头用来表示参与者和系统通过相互发送信号或消息进行交互的关联关系。箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。
有箭头的线条,表示角色与系统交互的过程中,数据的流向,如果箭头指向用例,就说明角色需要往系统输入数据,如果箭头指向角色,说明系统往角色输出数据。
而没有箭头的线条,则没有明确表示数据的流向,一般情况下不需要明确表示数据的流向,只需要画无箭头的线条就可以了。
5. 关系
a. 关联(Association)
表示参与者与用例之间的通信,任何一方都可发送或接受消息。
b. 泛化(Inheritance)
就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。
c. 包含(Include)
包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。
d. 扩展(Extend)
扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
e. 依赖(Dependency)
以上4种关系,是UML定义的标准关系。但VS2010的用例模型图中,添加了依赖关系,用带箭头的虚线表示,表示源用例依赖于目标用例。
6. 项目
用依赖关系把某个用例依赖到项目上:
然后把项目-》属性 的Hyperlink设置到你的文档上;
这样当你在用例图上双击项目时,就会打开相关联的文档。
二、用例描述
用例图只是简单地用图描述了一下系统,但对于每个用例,我们还需要有详细的说明,这样就可以让别人对这个系统有一个更加详细的了解
简要说明:对用例作用和目的的简要描述。
前置条件:执行用例之前系统必须所处的状态。
事件流:包括基本流和备选流。基本流描述的是用例的基本流程,指用例正常运行时的场景。
用例场景:用例的实例。
特殊需求:一个用例的非功能性需求和设计约束。例如法律法规方面、执行标准等。
后置条件:用例执行完毕后系统可能处于的一组状态。例如,必须执行另一用例等。
三、实例整理:
被包含用例的事件流会被插入到基础用例的事件流中。
ATM中查询,取款,转帐都会有一个打印回执,我们就可以把“打印回执”做为一个用例提取出来,而原来的查询,取款,转账三个用例都会包含这个用例。一般的画法是多个用例公共的包含一个用例。
扩展用例的事件流在一定条件下按照扩展点插入到基础用例的事件流中,即根据一定的条件来判断是否要插入到基础用例的事件流中,并且扩展点可以用多个。
如基本通话这个用例上可以有”呼叫等待”,”呼叫转移”的扩展的功能用例。如果对方通话正忙着,可以用呼叫等待,如果对方不方便接电话,也可以用呼叫转移。
泛化关系代表一般于特殊的关系。它的意思和面向对象程序设计中的继承的概念是类似的。
四、原则
要绘制一个外观整洁的图,您应该避免:
◆大小不一的框
◆对角线
◆交叉线
◆曲线
◆混乱的图
◆不必要的细节
五、一般构建用例图的步骤:
1.定义系统和系统边界
2.确定参与者及其目标
3.确定用例
4.确定用例和参与者之间的关系
*************************************************************************************************************
六、用VISIO建立用例图
1.新建UML模型图。
2.新建包、图来得到下图结构:
3.建立角色:右击包Actors -> 新建 -> 角色
4. 建立用例:右击Usecases -> 新建 -> 用例
5. 建立关系:在左边的“UML用例图”选项卡中选择所需的关系连线。
~~TIPS~~!!!!!!
右键可以选择曲线连接、直线连接等!!!~~~~
通常使用“通信”连线会出现 在线的两侧有*号标记和“结束1”这样的文字~~要除去它们可以右击该线 -> 形状显示选项。
把端选项的勾去掉。
6. 我的一个练习图:(原图来自百度文库)
############################################################################################################################
更新时间:2014-5-20 15:38
VISIO用例图中没有include关系的解决方法:
- 用例图初学笔记
- 初学笔记
- 初学笔记
- 802.11 初学笔记
- Java初学笔记
- Java数据结构初学笔记
- Ror初学笔记
- mysql初学笔记
- 初学汇编之笔记!
- 初学orcale笔记
- orge 初学笔记一
- C++初学笔记
- ajax初学笔记
- 初学unix命令笔记
- Oracle-初学笔记
- JavaScrip 初学笔记
- VB+SQL初学笔记
- C++ Primer 初学笔记
- Linux Centos6.4 用户本地不能登录
- Pig Latin基础2 函数清单
- 关于fork和缓冲区的问题
- ubuntu 12.04新安装好后需要进行的包升级和清理工作
- 不借助中间变量实现两个变量值得互换
- 用例图初学笔记
- RSPAN 中 reflector port 使用
- java:File类中对文件或目录进行操作的常用方法以及遍历文件夹下面的文件
- 快的打车降低补贴 快的降至10元嘀嘀调4元
- Linux上mysql 数据库修改编码格式
- 数据挖掘的R包和函数的集合
- 数组名和数组名取地址的区别
- Java动态代理之JDK
- Codeforces 399A Pages(水题)