zoukankan      html  css  js  c++  java
  • UML 构件图(组件图)

    image

    •什么是构件

    构件和构件的要素

    •构件是系统中可替换的物理部分,它包装了实现而且遵从并提供一组接口的实现

    •规格说明:对于构件,必须有一个它所提供服务的抽象描述。通俗地说,每个构件都必须提供特定的服务

    •一个或多个实现:构件是一种物理概念,必须被一个或多个实现所支持,当然这些实现都必需符合规格说明

    •受约束的构件标准:每一个构件,在实现时必须遵从某种构件标准

    •封装方法:也就是构件遵从的封装标准

    •部署方法:当件要运行时,首先要部署它

    构件的类型

    •实施构件:这类构件是构成一个可执行系统必要和充分的构件,例如动态链接库(dll)、可执行文件(exe),另外还包括如COM+、CORBA及企业级Java Beans、动态Web页面也属于实施构件的一部分

    •工作产品构件:这类构件主要是开发过程的产物,包括创建实施构件的源代码文件及数据文件。这些构件并不是直接地参与可执行系统,而是用来产生可执行系统的中间工作产品

    •执行构件:作为一个正在执行的系统的结果而被创建的,例如由DLL实例化形成的COM+对象

    构件及构件接口表示法

    image 

    提供和请求(使用或者称为依赖)的3种表示法

    组件图的组成

    组件图由,组件,接口,实现和依赖四部分组成

    组件

    描述了系统的一个可执行程序,一个库,一个Web程序等,如上面图中的方框图型都是组件的表示形式。

    接口

    接口是组件所提供服务,可以理解为一个方法,一个WebService,一个WCF,或者一个UI界面,接口可以有多个,但至少有一个,在UML中表示为一个圆形,可以在类图中对其进一步描述

    这个接口代表一种交互方式,而在.Net 中对于接口有另一种解读,就是一个精确的协议,用来指定一组操作或者属性定义

    image

    实现

    实现就是,组件与接口元之间的连线,代表谁实现了这个接口

    依赖

    就是指组件使用了另一个组件的接口,依赖于另一个接口的存在。

    image image

    •如何阅读构件图

    阅读基本构件图

    image

    阅读嵌套构件图

    image

    上图描述

    1.销售管理服务器包括两个组件,交易处理程序和财务接口

    2.财务接口需要财务系统的支持,可以说财务接口依赖财务系统的存在,交易处理程序,使用财务接口,依赖财务接口,并为收银机系统提供销售信息。

    •如何绘制构件图

    确定子系统对外的接口

    •将整个“在线酒店预订子系统”作为一个构件,考虑其对外接口。显然它首先需要提供用户界面;其次还需要与加盟的酒店系统连接,完成预订工作

    就是提供了,接入和输出接口

    image

    确定子构件和接口

    •显然要有一个构件来实现用户界面,一个构件来完成与酒店系统的连接和预订,另外还应该有一个负责将用户的需求与酒店的供给进行匹配的“调度程序”

    image

    •构件图应用说明

    对可执行程序的结构建模(都有哪些项目

    •首先识别你想建模的构件集合

    •考虑集合中各构件的不同类型

    •对这个集合中的每个构件,分析它们之的关系

    image

    上面的exe,依赖两个dll库

    对源代码建模(都有哪些代码文件

    •识别出感兴趣的相关源代码文件的集合,并把它们建模为构件;

    •对于较大的系统,利用包(文件夹)来进行分组

    •通过约束来表示源代码的版本号、作者和最后修改日期等信息

    •用依赖关系来表示这些文件间编译的依赖关系 ,箭头指向为谁依赖谁

    image

    •本章小结

    •首先介绍了构件的定义以及构件的五要素

    •在了解了构件基础知识之后,分别结合实例说明了基本构件图和嵌套构件图的阅读技巧,然后再阐述了嵌套构件图的绘制步骤

    •在本章的最后,还对构件图的适用领域进行了说明,并对最为常见的两种场景进行了举例说明:可执行程序结构建模、源代码建模

    内容出自:UML面向对象设计PPT

    冯瑞涛
  • 相关阅读:
    使用DirectX作渲染过程
    记于来北京两个星期
    添加 node mocha 测试模块
    for-of循环
    app-web 开发 追溯debug
    cmd关闭被占用的端口命令及教程详解
    vue使用element-ui的el-input监听不了键盘事件解决
    Nodejs 进阶:Express 常用中间件 body-parser 实现解析
    nodejs设置允许跨域
    nodejs 全局变量和全局对象
  • 原文地址:https://www.cnblogs.com/finehappy/p/1609352.html
Copyright © 2011-2022 走看看