UML之构件图
构件图,英文名曰:Component Diagrams用于描述一组构件之间的组织和依赖关系,用于建模系统的静态实现视图,构件可以是可执行程序、库、表、文件和文档等,她包含了逻辑类或者逻辑类的实现信息,因此结构模型视图和实现之间存在映射关系。
构件图中也可以包括或子系统,她们都用于将模型元素组织较大的组块。构件是系统中逻辑的并且可替代的部分,她遵循并提供对一组接口的实现,好的构件用定义良好的接口来定义灵活的抽象。例如,可以为逻辑模型中的一个类定义一个接口,而这同一个接口将延续到一些实现她的设计构件。接下来,我们一起来学习一下构件图,她在UML中发挥着怎样的作用,又是如何成为我们的得力助手呢?首先,我们来看一下这一章知识的总体蓝图:
接着,我们开始来了解构件图的一些基本知识:
基础知识有利于我们对构件图的理解,可以促进我们对构件图进一步研究,接下来,我们来看看构件图的接口,关系以及有着怎样的要求:
基础知识的掌握,以及接口、关系等的认识,还有重要的一点就是,我们该如何绘制我们的构件图:
纸上得来终觉浅,绝知此事要躬行,理论与实践相结合,方能让知识在尘埃中开出花朵,以学生管理系统选课为例,看看我们的构件图是如何被应用的完美无瑕:
再以我们的机房收费系统为例,我们的构件图:
构件图在我们的生活中也有着广泛的应用,比如当我们建造一所房屋的时候,可能会选择安装一套家庭娱乐系统,这个时候,我们可以购买一个单件套,包括显示器,电视机、DVD、VCR播放器、扬声器等,如果这些满足了我们的要求,当然再好不过,可是理想很丰满,现实很骨感,有时候买一个单件套不够灵活,在购置这一套系统之前,我们还需要把厂商提供的各种特征综合起来考虑。
这个时候,一个比较灵活的办法是把娱乐系统分成单独的部件,每个部件着重一种功能,显示器显示画面,扬声器播放音乐,并且可以放在屋子中能听到声音的任何地方,DVD和VCR都是独立的个体,她们的性能可以根据我们的实际需求来考虑,我们可以把她们放在想放的地方并用电线把她们连接起来,而不是以一种固定的方式把他们锁定在一起,每根线都有适合一个部件的特定插头,因此不会把扬声器的线插到视频的输出端。
我们的软件也是一样,我们可以把应用程序做成一个单一的大单元,但是当需求改变时,她太僵化并很难修改,此外,也无法利用一些现有的功能,即使一个现存的系统有很多我们需要的功能,当然软件不可能完美无瑕,也存在着我们不想要的功能,并且不可能被剔除,这个时候,我们需要把程序做成可灵活连接起来,定义良好的构件,当需求发生变化时,这些构件可以单独被替换,做到真正的以人为本,UML之旅,未完待续......
UML之构件图的更多相关文章
- 【UML】构件图Component diagram(实现图)(转)
http://blog.csdn.net/sds15732622190/article/details/49048887 前言 下面要介绍UML中的构建图,它属于实现图的一种,五种静态图之一. 定义 ...
- UML,构件图与部署图
一.构件图概述 1.概念 用来显示一组构件之间的组织及其依赖关系 2.基本元素 (1)构件:定义了良好接口的物理实现单元. ● 配置构件:形成可执行文件的基础,如:动态链接库(DLL).ActiveX ...
- UML的概念模型
为 了理解UML,需要形成该语言的概念模型,这要求学习建模的3个要素:UML的基本构造块.支配这些构造块如何放在一起的规则和一些运用于整个UML的公 共机制.如果掌握了这些思想,就能够读懂UML模型, ...
- uml系列(八)——部署图与构件图
之前说了uml的设计图,现在说一下uml的最后两种图:构件图.部署图.这两种图之所以放在一起是因为它们都是软件的实现图. 构件图 构件图是描述一组构件之间的组织与依赖关系的模型.那 ...
- ****** 五十 ******、软设笔记【UML分析和意义】-类图、对象图、状态图、活动图、顺序图、协作图、构件图、部署图,动静态模式
一.类图(Class Diagram) 描述一组类.接口.协作已经它们之间的图,用来显示系统中各个类的静态结构图. 类之间的关系(relationship) *依赖(dependency) *泛化(g ...
- 构件图(Component Diagram)—UML图(八)
构件图是显示代码自身结构的实现级别的图表.构件图由诸如源码文件.二进制代码文件.可运行文件或动态链接库 (DLL) 这种构件构成,并通过依赖关系相连接 以下这张图介绍了构件图的基本内容: 以下这张图是 ...
- UML——构件图
宏观导图: 细节探究: 一.What 构件:是一个应用很广的名词,在建筑工程.机械工程.软件工程中等都有该概念.其实,说道底表达的都是一个意思.就像是标准化生产出来的零部件一样,具有可替换性.同质性, ...
- UML课程复习重点
第一章 一.UML图示建模工具 二.UML--统一建模语言,以图形符号为基础,描述软件模型既简洁又清晰.它不是开发方法,是独立于任何开发方法之外的语言.它用于描述软件系统分析.设计和实施中的各种模型. ...
- 浅谈UML的概念和模型之UML九种图
1.用例图(use case diagrams) [概念]描述用户需求,从用户的角度描述系统的功能 [描述方式]椭圆表示某个用例:人形符号表示角色 [目的]帮组开发团队以一种可视化的方式理解系统的功能 ...
随机推荐
- Android 6.0出现的init: cannot execve(‘XXX’):Permission denied问题:禁止SELINUX的权限设置
最近在开发MTK的相关项目,需要将一些可执行文件添加到init.rc文件里去,但是开机后发现,这个bin文件没有权限不能执行,于是我就在init.rc中对相应的bin文件增加了权限.后来发现,改了也没 ...
- 剑指Offer——顺丰笔试题+知识点总结
剑指Offer--顺丰笔试题+知识点总结 情景回顾 时间:2016.10.16 19:00-20:40 地点:山东省网络环境智能计算技术重点实验室 事件:顺丰笔试 知识点总结 快排 霍尔排序(快排) ...
- ROS机器人程序设计(原书第2版)补充资料 (拾) 第十章 使用MoveIt!
ROS机器人程序设计(原书第2版)补充资料 (拾) 第十章 使用MoveIt! 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. MoveIt ...
- scheme深拷贝和浅拷贝探索
> (define a '(1 2 3)) > (define b (cons a '())) > b (( )) > (set-car! (car b) ) > b ( ...
- 文件自动备份和同步bypy和syncthing
http://blog.csdn.net/pipisorry/article/details/52464402 Linux定时备份数据到百度云盘 sudo pip3 install requestss ...
- Android实现自动更新功能
Android实现自动更新功能 Android自动更新的功能可以使用第三方的SDK来实现,但是类似友盟,就不支持x86手机的自动更新,科大讯飞,弹窗是全局的,小米手机就会默认把弹窗权限关掉不允许弹出提 ...
- 电脑hash破解
我一直在想,到底用什么样的方式才能较长时间地控制已经得到了权限的目标呢?留后门,种木马,甚至是Rootkit?留的Webshell痕迹太明显,哪怕是一句话的Webshell,都极容易被管理员清除.放了 ...
- 【移动开发】binder阻塞/非阻塞与单向/双向的问题
The client thread calling transact is blocked by default until onTransact has finishedexecuting on t ...
- 嵌入式LINUX环境下视频采集知识
V4L2是Linux环境下开发视频采集设备驱动程序的一套规范(API),它为驱动程序的编写提供统一的接口,并将所有的视频采集设备的驱动程序都纳入其的管理之中.V4L2不仅给驱动程序编写者带来极大的方便 ...
- iOS中 HTTP/Socket/TCP/IP通信协议详解 韩俊强的博客
每日更新关注:http://weibo.com/hanjunqiang 新浪微博 简单介绍: // OSI(开放式系统互联), 由ISO(国际化标准组织)制定 // 1. 应用层 // 2. 表示层 ...