UML-Unified Model Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。

在UML系统开发中有三个主要的模型:

  功能模型: 从用户的角度展示系统的功能,包括用例图。 
  对象模型: 采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类图、对象图、包图。 
  动态模型: 展现系统的内部行为。 包括序列图,活动图,状态图。

UML的重要内容可以由以下五种类图定义

用例图:从用户角度描述系统功能,并指各功能的操作者。

静态图:包括类图,包图,对象图。

类图:描述系统中类的静态结构

包图:是包和类组成的,表示包与包之间的关系,包图描述系统的分层结构

对象图:是类图的实例

行为图:描述系统动态模型和对象组成的交换关系。包括状态图和活动图

活动图:描述了业务实现用例的工作流程

状态图:是描述状态到状态控制流,常用于动态特性建模

交互图:描述对象之间的交互关系

顺序图:对象之间的动态合作关系,强调对象发送消息的顺序,同时显示对象之间的交互

合作图:描述对象之间的协助关系

实现图:

配置图:定义系统中软硬件的物理体系结构

UML包括用例图、类图、构件图、部署图、顺序图、协作图、状态图、活动图

各个图简介:

用例图从外部用户的角度捕获系统的行为。他将系统功能划分为对活动者具有意义的事务。

类图描述类、接口、写作以及它们之间的关系的图

顺序图描述了随时间安排的一系列消息。每个分类角色显示为一条生命线,代表整个交互期间的角色。消息则显示为生命线之间的箭头。

协作图对交互中存在意义的对象和链建模

状态图用来描述一个特定对象所有可能的状态 以及由于各种事件的发 生而引起的状态之间的转移和变化。

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

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

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

  1. 参与者(Actor)

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

  2. 用例(Use Case)

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

  3. 子系统(Subsystem)

  用来展示系统的一部分功能,这部分功能联系紧密。

  4. 关系

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

  如下表所示:

  a. 关联(Association)

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

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

  b. 泛化(Inheritance)

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

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

  c. 包含(Include)

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

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

  d. 扩展(Extend)

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

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

  e. 依赖(Dependency)

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

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

  5. 项目(Artifact)

  用例图虽然是用来帮助人们形象地理解功能需求,但却没多少人能够通看懂它。很多时候跟用户交流甚至用Excel都比用例图强,VS2010中引入了“项目”这样一个元素,以便让开发人员能够在用例图中链接一个普通文档。

  用依赖关系把某个用例依赖到项目上:

  然后把项目-》属性 的Hyperlink设置到你的文档上;

  这样当你在用例图上双击项目时,就会打开相关联的文档。

  6. 注释(Comment)

  包含(include)、扩展(extend)、泛化(Inheritance) 的区别:

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

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

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

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

  一个用例图示例:

转载于:https://www.cnblogs.com/oakentree/p/4576633.html

UML系列图--用例图相关推荐

  1. UML系列图——用例图(Use Case)

    擂鼓备战:     UML语言(Unified model language)是用来对软件密集系统进行可视化建模的一种语言.说到可视化,那就是用图描述软件系统,达到语言表达不出来的抽象逻辑.这里我们先 ...

  2. [UML]UML系列——包图Package

    系列文章 [UML]UML系列--用例图Use Case       [UML]UML系列--用例图中的各种关系(include.extend)       [UML]UML系列--类图Class   ...

  3. [UML]UML系列——类图class的关联关系(聚合、组合)

    关联的概念 关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用. 程序演示:关联关系(code/assocation) 假设:一个公司 ...

  4. [UML]UML系列——状态机图statechart diagram

    [UML]UML系列--状态机图statechart diagram 原文:[UML]UML系列--状态机图statechart diagram 系列文章 [UML]UML系列--用例图Use Cas ...

  5. [UML]UML系列——用例图Use Case

    原文:[UML]UML系列--用例图Use Case 用例图的概念 用例图是描述用例.参与者以及它们之间关系的图. 用例图的作用 用例图是从用户的角度来描述对信息系统的需求,分析产品的功能和行为. 用 ...

  6. [UML]UML系列——时序图(顺序图)sequence diagram

    原文:[UML]UML系列--时序图(顺序图)sequence diagram 系列文章 [UML]UML系列--用例图Use Case [UML]UML系列--用例图中的各种关系(include.e ...

  7. UML系列——协作图(通信图)collaboration diagram

    转自:http://www.cnblogs.com/wolf-sun/p/3411175.html 系列文章 [UML]UML系列--用例图Use Case [UML]UML系列--用例图中的各种关系 ...

  8. UML系列——时序图(顺序图)sequence diagram

    点击查看博主技术栈 转自:http://www.cnblogs.com/wolf-sun/p/3411175.html 系列文章 [UML]UML系列--用例图Use Case [UML]UML系列- ...

  9. [UML]UML系列——用例图中的各种关系(include、extend)

    [UML]UML系列--用例图中的各种关系(include.extend) 原文:[UML]UML系列--用例图中的各种关系(include.extend) 用例图中的各种关系 一.参与者与用例间的关 ...

最新文章

  1. 三本+双非拿到小米offer,我的经验总结
  2. 2020-10-18C++笔记之C/C++之字符串赋值
  3. JUNOS LDP标签分发过程详解
  4. MySQL5.7登陆数据库管理控制平台问题 ERROR 1045(28000)
  5. hdu4861 找规律了
  6. 一键发布部署vs插件[AntDeploy]开源了
  7. 编写一个C程序,实现以下功能:动态申请长度为5的整数空间数组,用户输入5个整数;动态扩展数组空间为8,用户另外输入3个整数,最后输出扩展后的全部数组元素。
  8. 航测大数据量处理_揭秘航测局“航空摄影质量自动检查系统”的“黑科技”
  9. 学习C语言,要从入门到精通
  10. java递归遍历目录文件
  11. Java-程序的入口
  12. 微信二次“回应”iOS 13.2杀后台问题:已找到解决方案
  13. 一个导出类的内部函数的dll
  14. 第四季-专题13-总线设备驱动模型
  15. SSM毕设项目国有资产管理系统3c938(java+VUE+Mybatis+Maven+Mysql)
  16. 由于找不到 MSVCR120.dll,无法继续执行代码终极解决方法
  17. 计算机和我的关系 论文参考文献,近几年计算机学生参考文献 计算机学生期刊参考文献哪里找...
  18. 除了摆地摊or送外卖,程序猿如何体面的赚零花钱?
  19. 图片上传被旋转,golang Exif 判断.jepg图片原始信息Orientation方向,并旋转,
  20. 0基础java好学吗?完整学习路线图速收藏

热门文章

  1. MSRA20周年研究趋势文章|图像识别的未来:机遇与挑战并存
  2. MIT:机器学习预测2018世界杯冠军
  3. AI 与区块链:两大热门技术,会碰撞出什么样的火花?
  4. 马云出 1000 亿做阿里达摩院:产品卖到全球了,他说科学研究也要跟上
  5. 大厂不一定要进,算法必须要学!精选算法文章 89 篇
  6. 阿里“火拼”拼多多,要“1元”抢占下沉市场
  7. 关于jetbrains系列产品2018.1.5以后的使用(crack)方法
  8. 二十二:制作app的时候超出部分不能滑动
  9. Linux IPv6 地址配置
  10. Template Method(模板方法)模式