学习UML --用例图

用例图用于描述系统提供的系列功能。使用用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求。用例图对系统的实现不做任何说明,仅仅是系统功能的描述。

用例图主要在需求分析阶段使用,用于描述系统实现的功能,方便与客户交流,保证系统需求的无二性。

用例图有四部分用例,角色,系统边界,关系。

1、角色

与系统交互的一个实体。这个实体可以是用户、组织或者外部系统等。用一个小人表示。

image

2、用例

代表系统提供的一个服务或者系统提供的一个功能模块。个人理解就是系统对角色提供的服务(系统的一个功能或者多个功能组成的一个功能模块)。以一个椭圆表示,用例的名称放在椭  圆的中间或者下面。

image

3、系统边界

指系统与系统之间的界限。并把系统边界以外的同系统相关联的其他部分称为系统环境。系统边界用方框来表示,同时附上系统的名称,角色画在边界的外面,用例画在边界里面。因为系  统边界的作用有时不是很明显,所以可以省略。

image

4、关系

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

如下表所示:

image

a、关联

表示角色和用例之间的通信,任何一方都可以发送和接收消息。

【箭头指向】消息的接收方。

image

b、泛化

泛化可以理解为代码中的继承。父用例或者父角色具有一般性,子用例(或者子角色)具有特殊性。子用例(或者子角色)继承父用例(或者父角色)的行为、结构和关系。子用例(或者子角色)可以使用父用例(或者父角色)的部分行为,也可以重载它。父用例通常是抽象的。

【箭头指向】父用例。

image
image

c、包含

包含是指一个用例包含另一个用例。一般用于将复杂的用例所表示的功能分解成若干个简单的用例或者将若干个用例的公共部分分离出来,使其成为可以复用的用例。

【箭头指向】被包含的用例。

image
image

d、扩展

扩展关系表示在一个用例对话流程中,可能会根据条件插入另外一个用例,前者称为基础用例,后者称为扩展用例。相当于为基础用例提供一个附加功能。

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

image

系统中允许用户对用户查询的结果进行导出和打印,对于查询而言,能不能导出和打印查询结果都行一样的。导出、打印和查询是相互对立的,而且导出、打印为查询添加了新的行为。

5、泛化、包含、扩展之间的关系

条件性:泛化中的子用例和包含关系中被包含的用例呼无条件的发生,扩展关系中的扩展用例的发生是需要条件的。

直接性:泛化中的子用例和扩展关系中的扩展用例为角色提供直接服务,而包含关系中被包含的用例为角色提供间接服务。

对扩展关系而言,扩展用例不包含基础用例的内容,基础用例不包含扩展用例的内容。

对泛化关系而言,子用例包含父用例的全部内容,包括父用例和其他用例和角色的关系。

引用:

https://baike.baidu.com/item/%E7%94%A8%E4%BE%8B%E5%9B%BE/9531932?fr=aladdin#1_3

www.cnblogs.com/13062225wmx/p/5432356.html

http://www.cnblogs.com/Yogurshine/archive/2013/01/14/2859248.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、什么是用例图 用例图源于Jacobson的OOSE方法,用例图是需求分析的产物,描述了==系统的参与者与系统进...
    liumw1203阅读 11,715评论 0 18
  • 概念 所谓用例,是对一组动作对象的抽象描述,系统执行这些操作,产生相应的结果。而所谓的用例图就是由参与者(Acto...
    淡定丶说的是阅读 1,791评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 137,173评论 19 139
  • 共性:都是从现有的用例中抽取出公共的那部分信息,作为一个单独的用例,然后通后过不同的方法来重用这个公共的用例,以减...
    atok阅读 767评论 0 2
  • ——记 巷深几米 晚霞唏嘘 温酒酿故里 风声几许 靡靡之音 贪恋复归去 晨光熹微 巷头巷尾 故人不复归 不知蒙昧 ...
    温水遣茶v阅读 364评论 0 0

友情链接更多精彩内容