建模UML用例图使用原理总结分析

 更新时间:2021年09月09日 16:20:03   作者:tianhai110  
这篇文章主要介绍了建模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而言,子用例包含基础用例的所有内容及其和其他用例或参与者之间的关系;

一个用例图示例:

牢骚:

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

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

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

用例描述表:

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

以上就是建模UML用例图使用原理总结分析的详细内容,更多关于UML用例图原理总结的资料请关注脚本之家其它相关文章!

相关文章

  • 建模UML用例图使用原理总结分析

    建模UML用例图使用原理总结分析

    这篇文章主要介绍了建模UML用例图使用原理总结分析,文中对uml所包含的元素以及关系类型作了详细的概括,有需要的朋友可以借鉴参考下
    2021-09-09
  • 详解为什么现代系统需要一个新的编程模型

    详解为什么现代系统需要一个新的编程模型

    如今高要求的分布式系统的建造者遇到了不能完全由传统的面向对象编程(OOP)模型解决的挑战,但这可以从Actor模型中获益。
    2021-05-05
  • Scala函数式编程专题--函数思想介绍

    Scala函数式编程专题--函数思想介绍

    这篇文章主要介绍了Scala函数式编程的的相关资料,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • 分享5个实用的vs调试技巧

    分享5个实用的vs调试技巧

    vs 是我们平时编写代码时的首选工具,相信也是大多数小伙伴儿的首选调试工具,因为实际操作起来太方便了,代码编写完,一个 F5 就可以愉快的调试了。今天我想向大家推荐几个非常值得了解 vs 调试技巧。
    2020-09-09
  • 一个能生成精美代码图片的工具Carbon!让看代码成为一种享受

    一个能生成精美代码图片的工具Carbon!让看代码成为一种享受

    当我们想展示自己写的代码给别人看的时候,希望让代码保持原有的格式,并且要美观一点,有一个强大的在线工具可以帮助我们实现,而且支持多种主题,他就是Carbon,需要的朋友可以参考下
    2021-05-05
  • 详解软件系统稳定性的三大秘密

    详解软件系统稳定性的三大秘密

    随着软件复杂性越来越高,稳定性的保障越来越难,随着服务规模越来越大,稳定性的重要性越来越高。工程师在设计和开发软件的时候,要坚持底板思维。
    2021-05-05
  • bilibili弹幕转ass程序制作思路及过程

    bilibili弹幕转ass程序制作思路及过程

    本文主要是为了方便线下播放Bilibili的弹幕,而专门制作的一款将弹幕转换为ASS的程序,介绍了程序制作的思路及过程,有需要的朋友可以参考下
    2014-09-09
  • 怎样制作“别人家的”Chrome插件

    怎样制作“别人家的”Chrome插件

    Chrome插件有很多实用API可以让我们使用,通过Chrome插件我们还可以做很多的事情,例如翻译网页文字等。本文将教你怎样制作“别人家的”Chrome插件,感兴趣的小伙伴一起来看看吧
    2021-08-08
  • 人人都是开发者:7款傻瓜式APP开发工具

    人人都是开发者:7款傻瓜式APP开发工具

    国外的营销工作者和技术开发者开发了许多能帮助企业创建简单APP应用的工具,通过这些工具,就算是一个对程序一窍不通的普通网民都可以很容易的创建一个企业的APP程序,并可以对程序进行应用更新维护,开展营销等活动
    2013-11-11
  • Scala函数式编程专题--scala集合和函数

    Scala函数式编程专题--scala集合和函数

    这篇文章主要介绍了scala集合和函数的的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06

最新评论