如何理解UML2.5.1(01篇)

news/2024/4/26 16:32:21/文章来源:https://blog.csdn.net/Down345/article/details/128111707

        多年之前就接触到过MOF,MOF是“Meta Object Facility”,翻译过来就是“元对象工具”。并且研读了1.4.1版本。最近又再次接触到MOF,不过这一次是2.5.1版本。
        2.5.1版是MOF的最新版本。MOF2的所有版本都与与之对应的UML2的版本高度集成,MOF2完全借用UML2进行各种建模操作,而其自身仅提供了反射、标识、扩展这三大能力。这就是为什么MOF2只有80多页而UML2有将近800页的缘由。
        MOF2被划分为EMOF和CMOF,前者是后者的子集。前者仅用于建模,而后者则可以用于构建例如元数据存储库等可以运行的系统。

        如果大家对MOF2.5.1感兴趣,推荐大家研究一下其第15章中的Figure15.1,如果这个图能够研究透彻,那么MOF2.5.1中两大难点之一就被解决了。MOF2.5.1的另一大难点在于下面这句话:
        By having both MOF and instances of MOF be rooted in class Element, MOF supports any number of meta layers as described in Clause 7.
        翻译过来就是:
        通过让MOF和MOF的实例都根植于类Element中,MOF支持如第7章所述的任意数量的元层。
        如果能够理解了上述两个难点,则MOF2.5.1就算是理解的比较透彻了。

        下面将MOF2.5.1中的一段话摘抄过来,大家就可以知道MOF的大致用途。
        The Meta Object Facility (MOF) provides an open and platform-independent metadata management framework and associated set of metadata services to enable the development and interoperability of model and metadata driven systems. Examples of systems that use MOF include modeling and development tools, data warehouse systems, metadata repositories, etc.
        翻译过来就是:
        元对象工具(MOF)提供了一个开放的、平台独立的元数据管理框架和相关的一组元数据服务,以支持模型和元数据驱动系统的开发和互操作性。使用MOF的系统包括建模和开发工具、数据仓库系统、元数据存储库等。

        从上面的内容可以看到,MOF的主要用途与一般的信息系统的构建并无很大关系。而这正是我决定将重点放在UML2.5.1中的缘故:与其将重点放在与一般信息系统构建无关的MOF上,不如将重点放在与一般信息系统构建更紧密一些的UML上。
        那么我们到底能够从UML上获取哪些对信息系统构建有帮助的内容呢?通过观察UML2.5.1,本人发现了一个可以借鉴UML2.5.1的地方,那就是其中花样繁多的类图,尤其是被称为“抽象语法”的类图以及大量的类图例子。因为这些类图都是对建模领域所需要解决的问题的高度抽象,如果我们也能够掌握这种抽象能力,那将会使我们对所要构建的信息系统的建模工作大有裨益。而本文章系列的重点就在于通过对一些UML类图实例的理解来帮助那些对UML2.5.1中类图感到一筹莫展的读者进行学习和理解。
        一般而言,任何一门技术都可以归为两类中的一类:入门容易,提高难;入门难,提高容易。UML则是一种比较典型的入门难但提高相对容易的技术。本人就是希望能够通过对UML类图的一些解读来帮助对UML有兴趣的初学者尽快地跨过入门这一环节,从而能够快速地进入相对容易的提高阶段,进而从个人角度讲可以很快地提高个人的建模水平,从更大的角度讲则可以为促进中国软件产业的技术发展贡献绵薄之力。

        下一篇文章将通过一个很简单的例子来说明一下在UML2.5.1中普遍存在的一种表达方式。明白了这种表达方式,UML2.5.1的很多地方理解起来就会比较容易。

参考文献:
MOF2.5.1
UML2.5.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_39191.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字化门店| 美业/医美门店管理系统 | 医美小程序

近些年来,随着人们消费升级和颜值经济的不断驱动,美业发展非常迅速,而医美行业也顺势规模增长。 当今互联网时代,各行业都在开展门店数字化转型,而这也让不少医美医院愿意构建基于门店会员管理的O2O闭环,并…

Web进阶

目录 DOM节点操作(上) 一、任务目标 二、任务背景 三、任务内容 1、DOM结构及节点 DOM节点操作(下) 一、任务目标 二、任务背景 三、任务内容 1、DOM修改 DOM控制CSS样式 一、任务目标 二、任务背景 三、任务内容 …

element实现el-progress线形进度条渐变色

实现效果&#xff1a; 实现前&#xff1a; 网上查progress找到的方法都是环形进度条的&#xff0c;且实现得贼复杂&#xff0c;要么封装一个新组件要么修改一串svg&#xff0c;其实线形进度条改成渐变色的方法非常简单&#xff0c;直接在css上修改就行了&#xff1a; <div…

5-UI自动化-三大切换,iframe如何定位,窗口新开、alert弹窗如何进行元素定位

5-UI自动化-三大切换&#xff0c;iframe如何定位&#xff0c;窗口新开、alert弹窗如何进行元素定位新开一个窗口如何定位元素switch_to方法iframe定位元素alert弹窗如何定位元素上篇介绍4-UI自动化-selenium三大等待操作 web测试过程中有没有遇到以下问题&#xff1a; 1、测试…

使用 Hibernate Envers 进行实体审计

业务应用程序中的常见要求是在特定数据更改时存储版本控制信息;当某事发生变化时&#xff0c;谁改变了它&#xff0c;改变了什么。在这篇博文中&#xff0c;我们将介绍Hibernate Envers&#xff0c;它是Hibernate JPA库的一个组件&#xff0c;它为实体类提供了一个简单的审计/版…

期中考试【Verilog】

期中考试【Verilog】前言推荐期中考试一. 单选题&#xff08;共10题&#xff09;二. 填空题&#xff08;共5题&#xff09;三. 简答题&#xff08;共3题&#xff09;四. 其它&#xff08;共4题&#xff09;最后前言 编写于2022/11/30 13:30 以下内容源自Verilog期中试题 仅供…

GeoServer服务迁移出现 EncryptionOperationNotPossibleException 错误的解决方案

目录1.前言2.GeoServer服务迁移一般流程3.遇到问题4.原因分析5.解决办法6.根本原因分析7.总结1.前言 这几天我在迁移 GeoServer 服务的时候发现&#xff0c;报了一个错&#xff0c;EncryptionOperationNotPossibleException &#xff0c;这个错误的大概意思是加密操作不可用异常…

Faster RCNN全文翻译

Abstract—State-of-the-art【最先进的】 object detection networks depend on region proposal algorithms to hypothesize【假设、推测】 object locations.Advances like SPPnet [1] and Fast R-CNN [2] have reduced the running time of these detection networks, expos…

Redis集群方案备忘录

文章目录哨兵模式官方Redis ClusterJedis&#xff08;客户端分片&#xff09;Codis&#xff08;代理分片&#xff09;哨兵模式 优点 哨兵模式是基于主从模式的&#xff0c;解决可主从模式中master故障不可以自动切换故障的问题。缺点 &#xff08;1&#xff09;是一种中心化的…

一些跨平台技术方案的经验参考

今天就站在一个小开发的视角分享一下一个小项目是如何进行跨平台方案选型的 本系列文章先站在公司的的角度对产品技术选型进行分析&#xff0c;然后再根据我们项目实际开发经验进行汇总&#xff0c;供大家参考。 目前大前端技术也非常丰富&#xff0c;可以实现&#xff0c;一…

【uniapp】利用Vuex实现购物车功能

实战项目名称&#xff1a;实现购物车功能 文章目录一、实战步骤1. 先编辑store.js文件2. 定义方法和基本的结构3. 编写SETSHPPING二、在项目中调用1. 触发相应的mutations2. 利用computed计算数量和总价的方法提示&#xff1a;本实战内容大部分为具体实现的思路&#xff0c;界面…

FRED应用:激光二极管的模拟

简介 当提及模拟激光二极管时&#xff0c;FRED软件具有极大的灵活性。在这篇应用笔记中&#xff0c;将会描述简单到详细的激光光源模型。最基本的模型是高斯TEM0,0模。更高级的模型包括在束腰上偏移和发散中的像散光束。激光也可以使用其M2因子表示。最后&#xff0c;可以创…

猿如意开发工具|Sublime Text(4126)

文章目录 一、猿如意是什么&#xff1f; 二、如何使用猿如意下载安装Sublime Text 三、总结 一、猿如意是什么&#xff1f; 猿如意是一款面向开发者的辅助开发工具箱&#xff0c;包含了效率工具、开发工具下载&#xff0c;教程文档&#xff0c;代码片段搜索&#xff0c;全网搜…

Azure DevOps Server 用户组加入 Azure AD Domain Service 管理用户

一&#xff0c;引言 今天我们继续讲解 Azure DevOps Server 的内容&#xff0c;对于管理用户组除了在 Azure DevOps Server 服务器上添加管理员方式外&#xff0c;还有没有其他方式&#xff0c;Azure DevOps 需要加入Azure ADDS 服务域后&#xff0c;Azure DevOps Server 的管理…

oh-my-zsh 为 ls 命令自定义颜色

ls 命令默认显示的颜色是&#xff1a; 白色&#xff1a; 表示普通文件 蓝色&#xff1a; 表示目录 绿色&#xff1a; 表示可执行文件 红色&#xff1a; 表示压缩文件 蓝绿色&#xff1a; 链接文件 红色闪烁&#xff1a;表示链接的文件有问题 黄色&#xff1a; 表示设备文件 灰…

深入理解SR-IOV和IO虚拟化

一、背景 SR-IOV&#xff08;Single Root I/O Virtualization&#xff09;是由PCI-SIG组织定义的PCIe规范的扩展规范《Single Root I/O Virtualization and Sharing Specification》&#xff0c;目的是通过提供一种标准规范&#xff0c;为VM&#xff08;虚拟机&#xff09;提供…

ProcessDB实时/时序数据库——ODBC之连接数据库

目录 前言 一、安装ProcessDB-ODBC驱动 1.下载ProcessDB-ODBC驱动 2.安装ProcessDB-ODBC驱动 二、配置ProcessDB数据源 三、JAVA连接ProcessDB数据库 前言 ProcessDB实时/时序数据库支持ODBC连接数据库&#xff0c;接下来将和大家分享下如何使用ODBC操作ProcessDB实时/时…

基于Java Web的传智播客crm企业管理系统的设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

tinymce富文本编辑器做评论区

今天分享一下tinymce富文本编辑器做评论区的全过程。 文章目录一、介绍1.最终效果2.功能介绍3.主要项目包版本介绍&#xff1a;二、每个功能的实现1.自定义toolbar的功能区①对应的样式以及意义②对应的代码实现【忽略了一切非实现该功能的代码】2.展示、收起评论区①对应的样式…

软件测试面试技巧:如何提高面试通过率?这3点一定要做到

对于想要进入到软件测试岗的新手人员来说&#xff0c;面试这一关是非常重要的&#xff0c;它直接关系着你的去留&#xff0c;也关系后续的期待遇问题&#xff0c;那么&#xff0c;有没有什么技巧可以帮忙提高面试通过率呢&#xff1f; 关于这一问题答案&#xff0c;我从这几个方…