1 包的概念

1.1 包的定义

包(Package): 是UML用来组织模型元素的模型元素。

包中可以包含类、接口、构件、用例、结点、活动、状态、包等其他模型元素。

包是对软件模型进行分解、组织的有效的模型元素。

1.2 包的表示

UML用带把的矩形框来表示包。

1.3 包的关系

  1. 依赖关系
  2. 泛化关系

1.4 包的设计原则

1、重用等价原则

把类放到包中时,尽量把包可以作为可重用的单元。包是可重用的包,包中的类是可重用的类。

2、共同闭包原则

把可能同时修改,同时维护的类放到一个包中,以便于维护,和升级。

3、共同重用原则

把将会同时,或使用时间相隔不长的建模元素放到同一个包中。

4、非循环依赖原则

包之间的依赖关系不要形成循环:即A依赖B,B依赖C,C又依赖A。

2 包图

包图由包和包之间的联系构成,包图中的图形元素是包,包之间用依赖关系或泛化关系连接。

包图是对系统结构建模的重要工具。

例如

Microsoft Office Visio Professional 之包图的更多相关文章

  1. Microsoft Office Visio Professional 2007密钥

    Microsoft Office Visio Professional 2007 产品密钥: W2JJW-4KYDP-2YMKW-FX36H-QYVD8

  2. Microsoft Office Visio Professional 之用例图

    1 用例 用例:表示参与者与系统的一次交互过程. 用例用椭圆来表示: 2 用例的特点 用例用于描述系统的功能,这个功能是外部使用者看到的系统功能,不反映功能的实现方式. 用例描述用户提出的一些可见需求 ...

  3. 以编程方式使用 Microsoft Office Visio 2003 ActiveX 控件

    以编程方式使用 Microsoft Office Visio 2003 ActiveX 控件 2007/10/29 Mark BukovecEmpire Down Development 适用于:Mi ...

  4. Microsoft Office 2007 Professional Plus+ 正版密钥

    Microsoft Office 2007 Professional Plus+  正版密钥         说微软原版,自有Microsoft官方MSDN网站有关下载的校验值为证(附后).密钥安装后 ...

  5. Microsoft Office Visio 2013 (安装 + 激活)

    Visio是一款能处理复杂信息.系统和流程进行可视化.分析和交流的软件,从“office 2003”以后,Visio作为一个单独软件发行,不再集成于office办公软件. 工具/原料 Visio 电脑 ...

  6. Microsoft Office Visio 2010如何创建UML 用例图

    转自:https://blog.csdn.net/mmoooodd/article/details/10513059 1..在Microsoft Office2010中打开Microsoft Visi ...

  7. microsoft office visio基本使用方法

    以下是画流程图.程序内存分配等等框图用到的点滴使用方法,记录在这里以备偶尔只需. 1.画大括号“{}” 在Visio操作界面下,依次点击“文件(File)”—“形状(Shapes)”--“其他Visi ...

  8. Visio Professional之活动图

    1 什么叫活动图? 活动图在本质上是一种流程图. 活动图(Activity diagram)是UML用于对系统的动态行为建模的一种常用工具,它描述活动的顺序,表示一个活动到另一个活动的控制流. 2.活 ...

  9. Microsoft Office Powerpoint、Visio 已停止工作解决办法

    现象:在使用visio的过程中经常会出现“Microsoft office visio已停止工作”只能将visio关闭:windows可以尝试恢复您的信息并重新启动该程序.office的其他组件不会出 ...

随机推荐

  1. 小程序开发之获取客户来源 scene 场景值 手机设备信息

    为什么要获取客户来源 用作数据分析,根据客户来源,做精准转化! 判断客户来源入口方式 1.通过官方的scene场景值 常见场景值 场景值ID 说明 1001 发现栏小程序主入口,「最近使用」列表 10 ...

  2. 【论文笔记】A review of applications in federated learning(综述)

    A review of applications in federated learning Authors Li Li, Yuxi Fan, Mike Tse, Kuo-Yi Lin Keyword ...

  3. Linux-3作业练习

    1.自建yum仓库,分别为网络源和本地源 请移步: yum源配置 2.编译安装http2.4,实现可以正常访问,并将编译步骤和结果提交. 请移步:http2.4编译安装       总结参照https ...

  4. gcc和g++是什么,有什么区别?

    点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 素材来源:C语言中文网 编辑整理:strongerHua ...

  5. 《手把手教你》系列基础篇(九十七)-java+ selenium自动化测试-框架设计篇-Selenium方法的二次封装和页面基类(详解教程)

    1.简介 上一篇宏哥介绍了如何设计支持不同浏览器测试,宏哥的方法就是通过来切换配置文件设置的浏览器名称的值,来确定启动什么浏览器进行脚本测试.宏哥将这个叫做浏览器引擎类.这个类负责获取浏览器类型和启动 ...

  6. Linux 设置开机自启动脚本(ES、MySQL、Nacos、Nginx)

    /etc/rc.d/init.d 中文件会在 Linux 系统各项服务都启动完毕之后再被运行 cd /etc/rc.d/init.d:新建xxx.sh文件. chmod +x xxx.sh,赋予可执行 ...

  7. axios源码解析 - 请求拦截器

    axios请求拦截器,也就是在请求发送之前执行自定义的函数. axios源码版本 - ^0.27.2 (源码是精简版) 平时在业务中会这样去写请求拦截器,代码如下: // 创建一个新的实例 var s ...

  8. Redis设计与实现3.3:集群

    集群 这是<Redis设计与实现>系列的文章,系列导航:Redis设计与实现笔记 集群中的节点 创建集群 通过 CLUSTER NODE 命令可以查看当前集群中的节点.刚启动时,默认每一台 ...

  9. 696. Count Binary Substrings - LeetCode

    Question 696. Count Binary Substrings Example1 Input: "00110011" Output: 6 Explanation: Th ...

  10. 找到占用CPU最高的Java线程

    一.找到java进程id jps查看当前运行的java进程id [root@localhost ~]# jps 18354 Jps 9381 Bootstrap 二.找到内存和CPU占用最高的线程pi ...