DSM:使用MetaEdit+编写Family Tree Modeling Language

在信息系统开发平台OpenExpressApp - 总体架构的由来中说到MetaEdit+是全球DSM领域内著名的产品,OpenExpressApp将借鉴它的思想来形成自己的模型引擎,本篇介绍一下如何使用MetaEdit+来建立一个家族模型语言,这个也是MetaEdit+提供的一个示例,通过家族树语言的生产来加深对MetaEdit+的了解。如果你也想开发自己的建模工具,那么推荐你也去研究一下。

MetaEdit+下载

去官方网站MetaCase下载Free 31-day evaluation version of full MetaEdit+ Workbench,它自带一些示例模型,例如UML示例的一个图的界面如下:

需求

对家族树进行建模,图形建模后如下:

时间: 2024-11-01 03:27:33

DSM:使用MetaEdit+编写Family Tree Modeling Language的相关文章

从WPF Diagram Designer Part 1学习控件模板、移动、改变大小和旋转

由于上周主要做了项目组产品架构.给公司新员工培训以及其他会议等事情,在OpenExpressApp对建模支持的初步计划中我列了一些建模任务还没有开展,其中参考部分在以前的blog中都已经介绍了(MetaModelEngine:元模型引擎开发思路.DSM:使用MetaEdit+编写Family Tree Modeling Language.读书笔记:Visual Studio DSL工具特定领域开发指南).今天手头上没有其他重要事情了,可以开始进行学习WPF的图形设计器了,这也就是我在WPF -

MetaModelEngine:元模型引擎开发思路

在DSM:使用MetaEdit+编写Family Tree Modeling Language中介绍了MetaEdit+的一个家族树模型语言应用示例,通过示例的学习掌握了基本的概念,本篇将介绍一下OpenExpressApp的元模型引擎MetaModelEngine的应用思路. 为何借鉴MetaEdit+思想 我在软件产品线工程方法 - 四个主要方法原则提到产品线带来的几个好处:减少成本,快速上市,减少风险和提高质量,这些都是我们在做软件产品时都期望达到的.在我以前blog中也有一个软件工厂的图

A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python)

  A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python)   MACHINE LEARNING PYTHON R   SHARE      MANISH SARASWAT , APRIL 12, 2016 / 52     Introduction Tree based learning algorithms are considered to be one of the best and mostly u

使用UML编写Java应用程序

引言 统一建模语言(Unified Modeling Language,简写为UML)是一种通用的模拟语言,它可以用于确定.展示和记录软件系统的设计过程.统一建模语言中的图形标记,尤其是用于面向对象的软件设计.它有两大优点: (1)UML是国际软件工业界广泛认可的标准,它统一了对象模拟的标记和含义,使软件设计工具能发挥更大的功用,同时,现有的对象设计也能更容易地被重新使用. (2)UML博采众长,设当地平衡了简洁性和具体化两个总之,UML已经成为一种单独的系统来演化,不像以前的多种标准的体系引起

三种属性操作性能比较:PropertyInfo + Expression Tree + Delegate.CreateDelegate

在<上篇>中,我比较了三种属性操作的性能:直接操作,单纯通过PropertyInfo反射和IL Emit.本篇继续讨论这个话题,我们再引入另外两种额外的属性操作方式:Expression Tree(这和IL Emit基本一致)和通过Delegate的静态方法CreateDelegate创建相应的委托进行属性的赋值和取值.[源代码从这里下载] 目录 一.定义测试相关的接口.类型和委托 二.通过Expression Tree的方式创建用于属性操作的委托 三.编写属性赋值操作测试方法 四.编写属性取

编写手机端自适应页面案例,springMVC代码,SpringMVC上传代码,去掉input框中原有的样式,使ios按钮没有圆角,css中的border-radius类似

1.编写的页面 <%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <!DOCTYPE html PUBLIC "-/

《PHP精粹:编写高效PHP代码》——1.3节对象的继承

1.3 对象的继承继承是类之间相互结合的方式.如同我们从父母那里继承他们的生物学特性,我们可以设计一个类从另一个类继承(这比女儿遗传父亲的卷发更具预见性).类可以从一个父类那里继承或扩展.而类并不知道其他类从它这里继承,因此一个父类可以有多少子类且没有限制.一个子类拥有父类的所有特性,我们可以增加或修改子类中的任意元素,使其变得与众不同.以Courier类作为例子,在应用程序里为每个Courier创建子类.在图1.1中,Courier类有两个子类,每个子类都有各自的ship()方法. 图1.1使

一起谈.NET技术,三种属性操作性能比较:PropertyInfo + Expression Tree + Delegate.CreateDelegate

在<上篇>中,我比较了三种属性操作的性能:直接操作,单纯通过PropertyInfo反射和IL Emit.本篇继续讨论这个话题,我们再引入另外两种额外的属性操作方式:Expression Tree(这和IL Emit基本一致)和通过Delegate的静态方法CreateDelegate创建相应的委托进行属性的赋值和取值.[源代码从这里下载] 目录 一.定义测试相关的接口.类型和委托 二.通过Expression Tree的方式创建用于属性操作的委托 三.编写属性赋值操作测试方法 四.编写属性取

MetaDiff——一个模式比较框架

比较 MetaDiff-一个模式比较框架 (翻译草稿,待审校)  译者注:这是来自瑞典斯得哥尔摩大学计算机和系统科学系的一篇硕士论文,由Mark Kofman撰文,导师为Erik Perjons.本文的中文译者为山东大学计算机科学与技术学院的本科生周翔.中文译文中省略了原文中的目录部分.  摘要  在软件开发中,开发模式重要性的日益提高产生了许多新的关注和挑战.本论文主要讨论了在模式驱动开发的环境中模式比较的问题.本论文的目的是为了描述一个名为MetaDiff的模式比较框架的需求分析,以及怎样来