UML

简介:
关系 
   关系式非常重要的语义,它抽象出对象之间的联系,让对象构成某个特定的结构。 

  关联关系(association) 
  A—B,它描述不同类的对象之间的结构关系,就像A知道B的存在一样。 

  依赖关系(dependency) 
  A----->B 它描述一个对象的修改回导致另一个对象的修改这样的关系。犹如B的修改会导致A的修改。 

  扩展关系(extends) 
  它特别用于在用力模型中说明向基本用例中的某个扩展点插入扩展用例。就像一个用例的“支流”一样。比如,你在接电话的时候,这时候有另一通电话打进来,这时候你而已选择保持通话去接这个刚来的电话,这个保持通话就是一个扩展,它是“可选”的,这与包含关系有区别。 

  包含关系(include) 
  它和扩展关系的唯一不同就在于他是必选的,例如你去银行办理业务的时候,无论是取钱,转账,查看账户资料的时候,都必须经过一个身份的验证,这一个验证的过程就是一个包含用例。 

  实现关系(realize) 
  用于在用例模型链接用例和用例实现,说明基本用例的一个实现方式。例如交纳电话费这个用例,可以选择营业厅交费,银行交费,预存话费,这3种方式都是交纳电话费的一个实现途径,所以他们是实现用例。 

  精化关系(refine) 
  用于用例模型,精化关系表示由基本对象可以分解为更明确,精细的子对象,这些子对象并没有增加,减少,改变经本对象的行为和属性。例如预存话费这个用例,可以分解为开立账户,存入现金,转账,支付划账等精化用例。 

  泛化关系(generalization) 
  泛化关系表示面向对象里面的继承。 

  聚合关系(aggregation) 
  用于类图,表达整体部分的语义,且部分可以单独存在,例如一个部门由许多人员构成,但部门解散了,人员依然存在。 

  组合关系(composition) 
  和聚合关系不同,如果整体部分消失,分部也消失,不能单独存在。 
相关文章
|
7月前
|
JSON 测试技术 网络安全
Apifox工具让我的 Socket.IO 测试效率翻倍
用了 Apifox 测试 Socket.IO 后,我整个人都升级了!不仅操作简单到令人发指,功能还贼全面,真的是 提升开发效率的神器 !
|
SQL 测试技术 OLAP
现代化实时数仓 SelectDB 再次登顶 ClickBench 全球数据库分析性能排行榜!
现代化实时数仓 SelectDB 在时隔两年后再次完成登顶,在全部近百款数据库和数十种机型中,性能位居总榜第一!
668 1
现代化实时数仓 SelectDB 再次登顶 ClickBench 全球数据库分析性能排行榜!
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】第五部分:ChatGPT的实际应用案例和未来发展方向
【人工智能】第五部分:ChatGPT的实际应用案例和未来发展方向
598 3
|
存储 API 数据库
对象存储数据库
【5月更文挑战第14天】对象存储数据库
454 1
|
存储 弹性计算 固态存储
阿里云服务器租用收费价格,X86计算架构云服务器收费标准参考
X86计算架构阿里云服务器有通用算力型u1、通用型g7、共享标准型s6、计算型c7、通用型g8i、计算型c8i等实例规格可选,不同实例规格的租用收费价格是不一样的,本文为大家汇总了目前基于X86计算架构下的各个实例规格的阿里云服务器收费标准,以供参考。
阿里云服务器租用收费价格,X86计算架构云服务器收费标准参考
|
Kubernetes 网络协议 Linux
Cilium 系列 -4-Cilium 本地路由
Cilium 系列 -4-Cilium 本地路由
|
前端开发 JavaScript 定位技术
Flutter vs 前端 杂谈:SliverAppBar、手动实现Appbar、前端Html+JS怎么实现滚动变化型Appbar - 比较
Flutter vs 前端 杂谈:SliverAppBar、手动实现Appbar、前端Html+JS怎么实现滚动变化型Appbar - 比较
278 0
|
存储 数据挖掘
第五章:MATLAB的输入和输出
第五章:MATLAB的输入和输出
762 0
|
机器学习/深度学习 人工智能 计算机视觉
LabVIEW中使用opencv快速实现视频的读写
LabVIEW中使用opencv快速实现视频的读写
850 0
LabVIEW中使用opencv快速实现视频的读写
|
域名解析 存储 Kubernetes
Kubernetes理论介绍
本文主要是对Kubernetes理论介绍
2292 1
Kubernetes理论介绍