8-构件图
?
?什么是构件构件和构件的要素
?构件是系统中可替换的物理部分,它包装了实现而且遵从并提供一组接口的实现
?规格说明:对于构件,必须有一个它所提供服务的抽象描述。通俗地说,每个构件都必须提供特定的服务
?一个或多个实现:构件是一种物理概念,必须被一个或多个实现所支持,当然这些实现都必需符合规格说明
?受约束的构件标准:每一个构件,在实现时必须遵从某种构件标准
?封装方法:也就是构件遵从的封装标准
?部署方法:当件要运行时,首先要部署它
构件的类型
?实施构件:这类构件是构成一个可执行系统必要和充分的构件,例如动态链接库(dll)、可执行文件(exe),另外还包括如COM+、CORBA及企业级Java Beans、动态Web页面也属于实施构件的一部分
?工作产品构件:这类构件主要是开发过程的产物,包括创建实施构件的源代码文件及数据文件。这些构件并不是直接地参与可执行系统,而是用来产生可执行系统的中间工作产品
?执行构件:作为一个正在执行的系统的结果而被创建的,例如由DLL实例化形成的COM+对象
构件及构件接口表示法
?
提供和请求(使用或者称为依赖)的3种表示法
组件图的组成
组件图由,组件,接口,实现和依赖四部分组成
组件
描述了系统的一个可执行程序,一个库,一个Web程序等,如上面图中的方框图型都是组件的表示形式。
接口
接口是组件所提供服务,可以理解为一个方法,一个WebService,一个WCF,或者一个UI界面,接口可以有多个,但至少有一个,在UML中表示为一个圆形,可以在类图中对其进一步描述
这个接口代表一种交互方式,而在.Net 中对于接口有另一种解读,就是一个精确的协议,用来指定一组操作或者属性定义
实现
实现就是,组件与接口元之间的连线,代表谁实现了这个接口
依赖
就是指组件使用了另一个组件的接口,依赖于另一个接口的存在。
?如何阅读构件图
阅读基本构件图
阅读嵌套构件图
上图描述
1.销售管理服务器包括两个组件,交易处理程序和财务接口
2.财务接口需要财务系统的支持,可以说财务接口依赖财务系统的存在,交易处理程序,使用财务接口,依赖财务接口,并为收银机系统提供销售信息。
?如何绘制构件图确定子系统对外的接口
?将整个“在线酒店预订子系统”作为一个构件,考虑其对外接口。显然它首先需要提供用户界面;其次还需要与加盟的酒店系统连接,完成预订工作
就是提供了,接入和输出接口
确定子构件和接口
?显然要有一个构件来实现用户界面,一个构件来完成与酒店系统的连接和预订,另外还应该有一个负责将用户的需求与酒店的供给进行匹配的“调度程序”
?
?
?构件图应用说明对可执行程序的结构建模(都有哪些项目)
?首先识别你想建模的构件集合
?考虑集合中各构件的不同类型
?对这个集合中的每个构件,分析它们之的关系
上面的exe,依赖两个dll库
对源代码建模(都有哪些代码文件)
?识别出感兴趣的相关源代码文件的集合,并把它们建模为构件;
?对于较大的系统,利用包(文件夹)来进行分组;
?通过约束来表示源代码的版本号、作者和最后修改日期等信息;
?用依赖关系来表示这些文件间编译的依赖关系 ,箭头指向为谁依赖谁
?本章小结
?
?
?
?
?
?
?
?首先介绍了构件的定义以及构件的五要素
?在了解了构件基础知识之后,分别结合实例说明了基本构件图和嵌套构件图的阅读技巧,然后再阐述了嵌套构件图的绘制步骤
?在本章的最后,还对构件图的适用领域进行了说明,并对最为常见的两种场景进行了举例说明:可执行程序结构建模、源代码建模