UML(二)component 组件图
组件图即是用来描述组件与组件之间关系的一种UML图。组件图在宏观层面上显示了构成系统某一个特定方面的实现结构。
组件图适用于基于组件的开发模式(Component-Based Development, CBD),它通过组件,及组件的接口、端口来表达组件的构成及其关系。当我们使用 CBD 进行开发时,其实是对行为进行了抽象,一个组件提供了若干的行为,组件图通过接口、端口的方式来表达组件间的连接,很形象的表达出组件是可被替换的概念,一个组件可以被另一个提供了相同接口的组件替换。因此,当我们通过组件进行建模时,能够设计出一个扩展性良好的系统。
基于组件的开发基于这样的假设,即以前构建的组件可以被重用,并且如果需要,组件可以被一些其他“等效”或“一致”组件替换。
组件图是用于描述系统的物理、逻辑结构的,他关注组件间的关联(使用什么接口,通过什么端口通讯),强调通过接口来描述组件行为
component, [interface, provided interface, required interface], class, port, connector, artifact, component realization, dependency, usage
component 组建的一般表示
提供接口 (provided interfaces)
提供接口表明该组件实现的接口,表示该组件能够提供的行为,即该组件可对外提供的服务。 比如上图的例子中,表明了天气服务组件,提供了天气预报的接口,即说明天气服务组件拥有天气预报的行为(能力)
需求接口(required interfaces)
需求接口表明该组件执行过程中,需要使用到具有某个行为的组件,即声明该组件依赖的行为。
需求接口(半圈)和提供接口(圆圈)的图设计得很有意思,一般两个组件连接,即一个组件的提供接口连接另一个组件的需求接口,这样表现出来的就是一个半圆半包裹着一个圆圈,很形象的表明类似插座,或者可互相嵌入的接口,所以从图中我们能够很直观的感受到组件之间是通过接口连接的,只要使用相同的接口,组件间可以随意替换。
伸手要钱 提供的接口是 钱
自己掏腰包 提供的接口是 钱
所以可以互相取代
端口 (port)
端口 表明组件对外提供接口的交互点,和网络中的端口概念相似,它定义了组件对外的出口。通过端口,我们可以限制组件的外部可见性,其他组件与该组件交流,只能通过对应的端口,因此我们通过端口了解到一个组件能够支撑的功能范围。
组建可以替换,前提是接口相同,
连接器(connector)
组建间的连接,通信。
UML 中的依赖关系
例子
网购组建图
第一层次 有哪些顶层组建
有三大组建 WebStore ,Warehouses,accounting
第二层次 — 顶层组建的接口和连接(WebStore 详细写)
1 WebStore 提供的接口(服务) 产品搜索,在线购物,用户接口
输入接口 搜索仓库(依赖于仓库提供的接口) ,购物车输入(依赖于账户管理提供的操作),用户接口
2. Warehouses仓库 提供的服务 搜索库存,管理库存
3. 账户 提供的服务 操作服务,消费者管理
第三层 顶层组建的内部 连接和接口
例子二 类视图
UML(二)component 组件图相关推荐
- UML 构件图(组件图)
UML 构件图(组件图) •什么是构件 构件和构件的要素 •构件是系统中可替换的物理部分,它包装了实现而且遵从并提供一组接口的实现 •规格说明:对于构件,必须有一个它所提供服务的抽象描述.通俗地说,每 ...
- 捣鼓PlantUML(二、组件图)
简单介绍 为什么先讲组件图,是因为我是由于需要画组件图所以才去找的这个工具.组件图实质就是将一个大系统,拆分为若干功能相对独立,互相之间存在关联依赖关系的组件集合.然后由一张图列出所有组件及它们之间的 ...
- UML实现图 组件图、配置图
在学习UML实现图的时候发现书上和视频里对实现图的叫法不一样,但是它们所描述的功能是一样的,在视频中称"组件图"为"构件图":称"部署图"为 ...
- UML图详解(五)组件图
一.概念 组件图(Component Diagram)又称为构件图,他描述的是在软件系统中遵从并实现一组接口的物理的.可替换的软件模块. 构件图 = 构件(Component) + 接口(Interf ...
- powerdesigner画UML组件图初步
组件图 组件图是用来描述组件与组件之间关系的一种UML图,组件图在宏观层面上显示了构成系统某一特定方面的实现结构. 组件图可以用来显示组件之间的依赖关系,以及组件的接口和调用关系. 组件图由组件,接口 ...
- UML——实现图(组件图、部署图)
在进行完前面的系统逻辑设计之后,下一步我们就需要定义设计的物理实现,如可执行文件.库.表.文件和文档等.UML的实现图又分为了:组件图和部署图两部分 一.组件图 1.组件图: 用来描述软件组件以及组件 ...
- 第3讲:组件图(Component Diagram)
组件图又称为构件图,组件图中包含组件.接口以及依赖关系. 一.元素 1.1.组件(Component) 系统功能的可重用部件 1.2.提供的接口 表示某个组件实现的且其他组件或者外部系统可以调用的一组 ...
- UML 对象图、时序图、活动图 、状态图、协作图 、包图、组件图及部署图
UML 对象图.时序图.活动图 .状态图.协作图 .包图.组件图及部署图 目录 对象图 时序图 活动图 状态图 协作图 包图 组件图 部署图 对象图 对象图是类图的一个实例,用于显示系统执行时的一个可 ...
- Salesforce Lightning开发学习(二)Component组件开发实践
lightning的组件区分标准组件.自定义组件和AppExchange组件.标准组件由SF提供,自定义组件由developer自行开发,AppExchange组件由合作伙伴建立.下面我们写一个简单的 ...
最新文章
- 大叔手记(10):别再让面试官问你单例
- python 图片base64 编解码,转换成Opencv,PIL.Image图片格式
- Echarts给坐标轴添加自定义属性
- 【杭电多校2020】Go Running【几何】【最小点覆盖】
- KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200)题解
- AspNetForums中基于角色的权限控制
- vue 深度拷贝数组_前端深拷贝和浅拷贝
- 深入JavaScript之获取cookie以及删除cookie
- 华为云服务之弹性云服务器ECS的深度使用和云端实践
- LayoutManager实现翻页动画
- Sniffing and sending packets is not available: winpcap is not installed
- ESP8266入门教程11:连接MQTT服务器
- 欢迎大家访问我的网站
- 理科爱好者杂志理科爱好者杂志社理科爱好者编辑部2022年第3期目录
- 基于STM32F407的人脸追踪
- autojs上传蓝奏云UI模板
- ubuntu相关命令速记
- 2345浏览器兼容性设置在哪里
- First love
- ubuntu16.04为chrome浏览器安装flash插件(Adobe flash play不是最新版本)