用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。

1.新建用例图

2.用例图工具:

3.一个简单用例:

用例图所包含的元素如下:

1. Actor:参与者

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

使用者是系统的一个用户 ;用户可以意味着人类的用户,一台机器,或甚至另一个系统或子系统模型中。任何从外面或系统边界与系统交互的东西被称为一个使用者。使用者通常与用例相关联。

使用者可以使用系统,通过图形用户界面、 批处理接口或一些其他媒体。在用例的情况下,系统必须提供功能的详细信息记录和一个使用案例与使用者的互动来满足用户的要求。

使用者也代表了在序列图中,可以显示这些用户的角色并使用矩形表示法。Enterprise Architect 业务建模支持构造型的使用者元素。业务建模元素还将使用者表达作为构造型对象。

2. 用例(Use Case)

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

用例 是 一UML 建模元素,用来描述一个拟议系统的用户是如何与系统交互的,以执行离散的功能单元。它描述,并表示为最终用户 (人员、 机器或其它系统) 的意义,须离开系统中完成状态的时间单相互作用:

互动已完成或回滚到用例初始状态:

  • 通常具有要求和约束,描述用例的基本特征和规则
  • 可以有相关联的序列图说明行为的随时间的变化,谁给谁在做什么,何时做的
  • 通常情况下有场景与之相关联, 描述工作流随时间产生的结果。已关联可选择的工作流 (例如,要捕的异常) 也会启用

3. 关系

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

     a. 关联(Associate)

         

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

     b. 泛化(Generalize)

        

       

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

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

     c. 包含(Include)

         

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

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

     d. 扩展(Extend)

       

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

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

   e. 依赖(Dependency)

     

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

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

4. 包含(include)、扩展(extend)、泛化(Generalize) 的区别:

  条件性:泛化中的子用例和include中的被包含的用例会无条件发生,而extend中的延伸用例的发生是有条件的;

  直接性:泛化中的子用例和extend中的延伸用例为参与者提供直接服务,而include中被包含的用例为参与者提供间接服务。

  对extend而言,延伸用例并不包含基础用例的内容,基础用例也不包含延伸用例的内容。

  对Inheritance而言,子用例包含基础用例的所有内容及其和其他用例或参与者之间的关系;

UML建模—EA创建Use Case(用例图)的更多相关文章

  1. UML建模—EA创建Class(类图)

    1.新建类图 2.添加类或接口 在类图可以捕获系统-类-和模型组件的逻辑结构.它是一个静态模型,描述存在什么,有哪些属性和行为,而不管如何去做. 说明关系之间的类和接口; 泛化. 聚合和关联是在分别反 ...

  2. UML建模—EA的使用起步

    Enterprise Architect(EA) 是一个功能比较强悍的建模工具. 对于一个软件设计者来说,从需求分析到业务设计.类模型设计.数据库设计到测试.发布.部署等一系列软件设计必须的操作都可以 ...

  3. EA UML 建模——类图

    Enterprise Architect(EA) 是一个功能比较强悍的建模工具,本篇文章仅使用其 UML 建模功能,其他更多功能,可以Google. 一.简单梳理C#中类与类.类与接口.接口与接口的关 ...

  4. EA创建用例图步骤详解

    EA创建用例图步骤详解 1 创建一个项目 2 选择需要的模型 3 新建模型包 4 新建图表 5 新建模型包 6 创建用户角色Actor 7 新建用例 8 关联用户和用例 9 最后整个项目浏览器目录结构 ...

  5. 【UML】NO.46.EBook.5.UML.1.006-【UML 大战需求分析】- 用例图(Use Case Diagram)

    1.0.0 Summary Tittle:[UML]NO.46.EBook.1.UML.1.006-[UML 大战需求分析]- 用例图(Use Case Diagram) Style:DesignPa ...

  6. 使用Visio进行UML建模

    http://www.qdgw.edu.cn/zhuantiweb/jpkc/2009/rjkf/xmwd/Visio_UmlModel.htm#_Toc80417837 内容提纲: 1.VISIO中 ...

  7. UML建模文章总结

    一.为什么要学习UML UML是Unified Modeling Language(统一建模语言)的简称.UML是对软件密集型系统中的制品进行可视化.详述.构造和文档化的语言.制品{Artifact} ...

  8. Enterprise Architect UML建模

    UML建模 前言 UML建模资料已经很多了,有人想用有人不用,有人会用也有人不会用,本文只是作者的一篇UML建模总结,不想去写太细,因为真正的你去用下,去画下就基本都会了.工具毕竟是工具,设计和思想才 ...

  9. 三大UML建模工具Visio、Rational Rose、PowerDesign的区别

    本文源自http://developer.51cto.com/art/201006/207993.htm UML建模工具Visio .Rational Rose.PowerDesign的比较   RO ...

随机推荐

  1. 三、Node.js-HelloWorld案例

    之前我们编写的JavaScript代码都是在浏览器中运行的,因此,我们可以直接在浏览器中敲代码,然后直接运行. 在Node,我们编写的JavaScript代码将不能在浏览器环境中执行了,而是在Node ...

  2. cinder create volume的流程-scheduler调度

    创建 Volume 时,cinder-scheduler 会基于容量.Volume Type 等条件选择出最合适的存储节点,然后让其创建 Volume. 1.cinder-scheduler配置相关项 ...

  3. django中ImageField模块使用

    https://blog.csdn.net/meylovezn/article/details/47124923

  4. php代码审计7审计csrf漏洞

    跨站请求伪造,也有人写出xsrf,黑客伪造用户的http请求,然后将http请求发送给存在csrf的网站,网站执行了伪造的http请求,就引发了跨站请求伪造 漏洞危害:攻击者盗用了你的身份信息,以你的 ...

  5. map/fileter

    一.生成器,generator,节省内存,但是增加了CPU的计算时间 (下节课讲函数怎么变成生成器) 每次循环的时候,就按照这个规则(自己定义的逻辑)去生成一个数据. res = [ 'a','1' ...

  6. VS2013安装及破解教程

    https://blog.csdn.net/qq_33742119/article/details/80075352 软件下载的百度云链接,也可以在官网直接下载 链接:https://pan.baid ...

  7. maven项目运行找不到类的错误

    Maven项目 eclipse工具 错误: [INFO] -------------------------------------------------------------[ERROR] CO ...

  8. APUE第八章-进程控制

    一.进程标识 二.函数fork 1.写时复制,copy-on-write 2.文件共享,父进程等待子进程完成,子进程结束后,它对任一共享描述符的读写操作的文件偏移量已做相应的更新,同时操作时,可以考虑 ...

  9. 洛谷 P1486 [NOI2004]郁闷的出纳员

    题目描述 OIER公司是一家大型专业化软件公司,有着数以万计的员工.作为一名出纳员,我的任务之一便是统计每位员工的工资.这本来是一份不错的工作,但是令人郁闷的是,我们的老板反复无常,经常调整员工的工资 ...

  10. Python之freshman01

    列表与元组.字典 1.列表list:["ele1","ele2","ele3","ele0"] 列表是一组任意类型的值, ...