[摘]UML学习一:标准建模语言UML的内容

[摘]UML学习一:标准建模语言UML的内容

统一建模语言(UML:Unified Modeling Language)
作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分

(1) UML语义 描述基于UML的精确元模型定义。
(2) UML表示法 定义UML符号的表示法,
    为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
    这些图形符号和文字所表达的是应用级的模型,
    在语义上它是UML元模型的实例。

标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义:
第一类是用例图,
      从用户角度描述系统功能,并指出各功能的操作者。
第二类是静态图(Static diagram),
      包括类图、对象图和包图。
      其中类图描述系统中类的静态结构。
          不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,
          也包括类的内部结构(类的属性和操作)。
          类图描述的是一种静态关系,在系统的整个生命周期都是有效的。
      对象图是类图的实例,几乎使用与类图完全相同的标识。
          他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。
          一个对象图是类图的一个实例。
          由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
      包由包或类组成,表示包与包之间的关系。
          包图用于描述系统的分层结构
第三类是行为图(Behavior diagram),
      描述系统的动态模型和组成对象间的交互关系。
          其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。
              通常,状态图是对类图的补充。
              在实用上并不需要为所有的类画状态图,
              仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。
          而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,
              有利于识别并行活动。
第四类是交互图(Interactive diagram),
      描述对象间的交互关系。
          其中顺序图显示对象之间的动态合作关系,
              它强调对象之间消息发送的顺序,同时显示对象之间的交互;
          合作图描述对象间的协作关系,
              合作图跟顺序图相似,显示对象间的动态合作关系。
              除显示信息交换外,合作图还显示对象以及它们之间的关系。
          如果强调时间和顺序,则使用顺序图;
          如果强调上下级关系,则选择合作图。
          这两种图合称为交互图。
第五类是实现图( Implementation diagram )。
          其中构件图描述代码部件的物理结构及各部件之间的依赖关系。
              一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。
              它包含逻辑类或实现类的有关信息。
          部件图有助于分析和理解部件之间的相互影响程度。
          配置图定义系统中软硬件的物理体系结构。
              它可以显示实际的计算机和设备(用节点表示)以及它们之间的连接关系,
              也可显示连接的类型及部件之间的依赖性。
              在节点内部,放置可执行部件和对象以显示节点跟可执行软件单元的对应关系。

从应用的角度看,当采用面向对象技术设计系统时,
首先是描述需求;
其次根据需求建立系统的静态模型,以构造系统的结构;
第三步是描述系统的行为。
其中在第一步与第二步中所建立的模型都是静态的,
包括用例图、类图(包含包)、对象图、组件图和配置图等五个图形,
是标准建模语言UML的静态建模机制。
其中第三步中所建立的模型或者可以执行,
或者表示执行时的时序状态或交互关系。
它包括状态图、活动图、顺序图和合作图等四个图形,
是标准建模语言UML的动态建模机制。
因此,
标准建模语言UML的主要内容也可以归纳为
静态建模机制和动态建模机制两大类。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111103.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于权限表的基本设计[通俗易懂]

    关于权限表的基本设计[通俗易懂]对于一个系统,必须严格的控制权限,权限表的设计是基本的。基本的权限表有五个,即用户表,角色表,权限表,用户角色表,角色权限表。下面介绍下基本字段用户表  useruser_iduser_namepassword角色表  role role_idrole_name权限表 permissionpermission_idpermission用户角色表 

    2022年9月27日
    1
  • python激活码 2021【注册码】

    python激活码 2021【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    92
  • url转换_图片在线转换url免费

    url转换_图片在线转换url免费//转换URL地址exchangeUrl(url){if(typeofurl'string'){returnurl.replace('?',&#

    2022年8月4日
    9
  • 如何求原根_求模47的所有原根

    如何求原根_求模47的所有原根说这种最好就是举个例子比如说求81的所有原根 先说欧拉函数通式:通式:φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中p1,p2……pn为x的所有质因数,x是不为0的整数。φ(1)=1(唯一和1互质的数(小于等于1)就是1本身)。(注意:每种质因数只一个。比如12=2*2*3那么φ(12)=12*(1-1/2)*(1-1/…

    2025年7月5日
    2
  • CefSharp 与 js 相互调用「建议收藏」

    CefSharp 与 js 相互调用「建议收藏」CefSharp与js相互调用一.CefSharp调用jsCefSharp.WinForms.ChromiumWebBrowserwb;…方式1.ExecuteScriptAsync方法使用方式与js的eval方法一样,异步执行,无返回值。//xxx为js的方法名称wb.ExecuteScriptAsync(“xx

    2022年9月19日
    2
  • C语言中u8 u16 u32含义,有关stm32的问题,程序里面的u8、u16这些是什么意思啊「建议收藏」

    C语言中u8 u16 u32含义,有关stm32的问题,程序里面的u8、u16这些是什么意思啊「建议收藏」u8是unsignedchar,u16是unsignedshort,u32是unsignedlong。u8,u16,u32都是C语言数据类型,分别代表8位,16位,32位长度的数据类型,一个字节是8位,所以u8是1个字节,u16是2个字节,u32是4个字节。可以在stm32库头文件中找到数据类型的声明在stdint.h中:typedefunsignedcharuint8_t;typed…

    2022年10月9日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号