UML图画法_画用例图的步骤

UML图画法_画用例图的步骤一.用例图的作用用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。二.用例图包含的元素 1.参与者(Actor)  表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个小…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一.用例图的作用

         用例图主要用来描述“用户、需求、系统功能单元”之间的关系。

          它展示了一个外部用户能够观察到的系统功能模型图。

          【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求

二.用例图包含的元素

 

     

 1. 参与者(Actor)

  表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。

           UML图画法_画用例图的步骤

 

 2. 用例(Use Case)

   用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示。

 

       UML图画法_画用例图的步骤

 3. 容器

代表着一个系统

  UML图画法_画用例图的步骤

 

 4. 关系

  用例图中涉及的关系有:关联、泛化、包含、扩展。

  如下表所示:

 

          UML图画法_画用例图的步骤

 

 a. 关联(Association)

  表示参与者与用例之间的通信,任何一方都可发送或接受消息。

  【箭头指向】:指向消息接收方

UML图画法_画用例图的步骤

 b. 泛化(Inheritance)

  就是通常理解的继承关系子用例和父用例相似,但表现出更特别的行为子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的

  【箭头指向】:指向父用例

UML图画法_画用例图的步骤

 

 c. 包含(Include)

  包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。

  【箭头指向】:指向分解出来的功能用例

 

UML图画法_画用例图的步骤

d. 扩展(Extend)

  扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。

  【箭头指向】:指向基础用例

 

       UML图画法_画用例图的步骤

 

e. 依赖(Dependency)

  以上4种关系,是UML定义的标准关系。但VS2010的用例模型图中,添加了依赖关系,用带箭头的虚线表示,表示源用例依赖于目标用例。

  【箭头指向】:指向被依赖项

 

 

                                   UML图画法_画用例图的步骤

一个用例图示例:

UML图画法_画用例图的步骤

感觉用例图还不成熟,并不能很好地表达系统的需求, 没有UML背景的用户几乎不知道画的是些什么。

  其次,包含关系、扩展关系的箭头符号竟然是同样的箭头,仅靠上方写个文字来加以区别,翻译成其他语言的话,几乎就不知道代表什么意思。扩展关系的箭头朝向也很难理解,为何要指向基用例,而不指向扩展用例。

  VS2010添加的“项目”元素,是个很好的创新,能够在用例图中关联word, excel这些文档。但为什么不把这些功能直接集成到用例里面,双击用例就弹出一份文档岂不更容易理解,非要画蛇添足地加一个元件,仅仅为了提供个链接功能。 

  用例描述表:

  鉴于用列图并不能清楚地表达功能需求,开发中大家通常用描述表来补充某些不易表达的用例,下图的表给大家提供一个参考:

UML图画法_画用例图的步骤

 

  UML图画法_画用例图的步骤UML图画法_画用例图的步骤

UML图画法_画用例图的步骤

UML图画法_画用例图的步骤UML图画法_画用例图的步骤

 

                    

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196272.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微元素——答题

    微元素——答题微元素——答题微元素每日任务,答题

    2022年4月28日
    43
  • android ListView 嵌套 ListView

    android ListView 嵌套 ListView实现的效果是这个样子的看上去效果还是不错,不过现在有个刷新问题一直没能解决,刷新的时候里面的adapter进行刷新的时候总是会让里面的listview消失掉,应该是父listview先刷新完后,子listview还未刷新完成,导致测量的高度不对,就会消失,像当前组已关闭这种,现在这个问题还没有想到办法解决的,试过比较多的方法,添加接口让子listview刷新完成后再去更新父…

    2022年7月16日
    20
  • 对标 VS Code,JetBrains 的下一代 IDE :Fleet[通俗易懂]

    对标 VS Code,JetBrains 的下一代 IDE :Fleet[通俗易懂]昨天(11月29日),JetBrains网站上出现了一个全新的IDE–Fleet它是谁呢?这软件的风格,怎么看都不像JB的亲儿子。。不过,我很负责任地告诉,这就是JetBrains的下一代IDE,妥妥的亲儿子。目前Fleet还处于开发阶段,还没有开放下载使用,如果你想尝鲜,可以通过这个链接(https://www.jetbrains.com/fleet/preview/)填写一下表格申请。看到这个消息,我就赶紧去申请了,但何时会通过,官方表示也不清楚。虽然还无法使

    2022年5月28日
    45
  • Fetch failed: unable to access http://dev.123.cn:123/git/123/213.git/

    Fetch failed: unable to access http://dev.123.cn:123/git/123/213.git/

    2020年11月9日
    208
  • Python基础知识归纳「建议收藏」

    Python基础知识归纳「建议收藏」Python基础教程Python基础教程Python简介Python环境搭建Python中文编码Python基础语法Python变量类型Python运算符Python条件语句Python循环语句PythonWhile循环语句Pythonfor循环语句Python循环嵌套Pythonbreak语句Python…

    2022年10月16日
    0
  • LeetCode–046–全排列(java)

    LeetCode–046–全排列(java)给定一个没有重复数字的序列,返回其所有可能的全排列。示例:无奈,用swap的方法从左向右滑动,直到最后结果和最初的一致停止,只适用于三位数。。。。(改进一下让每个数字作为第一位后面的进行滑动,应该

    2022年7月3日
    19

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号