在模型驱动工程中结合通用语言和领域特定语言
- 来源:新浪科技 作者:苹果 时间:2008-04-23 10:18:00
-
【IT168 技术文档】
Mendix公司的CTO Johan den Haan在最近的一篇博客中问了模型驱动方式(架构、开发、工程)中的一个关键问题:
模型驱动工程(Model Driven Engineering)的基本原则是“所有东西都是模型”。模型及模型的组成元素属于一等公民。最根本的改变是模型不再只作为文档供程序员阅读,它们可以直接用来驱动软件开发。
……当为了MDE而定义一种语言的时候,不免会遇到疑问——某个特定元素到底应该用领域特定语言还是通用语言来定义呢?
Johan认为:
在大多数情况下都是通用语言和领域特定语言两者择一,但我想两种方式可以结合起来各展所长。
这篇文章还很有知识性。它首先给出了模型和元模型的清晰定义,清楚地展示了OMG定义的M0、M1、M2和M3级的模型驱动架构。Johan还界定了语言学元模型(linguistic metamodel)和本体论元模型(ontological metamodel)的区别:
语言学元模型定义一个模型的语言(包括抽象句法、类型语义、静态语义和动态语义),本体论元模型定义模型的内在语义。内在语义描述被建模的资源的“内部含义”,为概念的推演提供基础。
他总结说:
本体论是定义描述性语言的基础,例如一些定义“what”而非“how”的语言。完整的建模手段两个方面[语言学和本体论]都需要。
Johan还解释了本体论元模型层次(hierarchies)的重要性。他认为这个层次应该以技术层面为底层,支撑着上一层的领域本体论,再支撑着更上一层的模型。随后他把语言学元模型和软件工件的生成联系在一起。
对于面向对象,Johan主张:
- 保持语言定义小而简单,
- 保持虚拟机稳定,即使在重大的(库)概念重组的情况下,
- 给用户最大程度的剪裁能力(用户可以改变或者扩展一个库,但不可以改变核心的语言概念)
接着Johan举了“业务过程建模”的例子:
对于将BPMN(OMG,2006)和BPEL4WS(OASIS,2007)作为业务过程建模的通用语言,有着许多讨论。BPMN被用于定义分析和文档方面的业务过程,BPEL4WS则被用于定义可执行的业务过程。
他在例子中描述了一个严格的元模型层次,组成部分有一个模型层、一个领域层、一个服务层,BPEL作为抽象的、平台无关的概念,BPMN则作为语言层。他认为:
这个元模型层次使得定义一种“BPMN和BPEL之间的”变换非常容易。
Johan最后总结:
“他所作的”设计决策非常有利于定义领域特定语言。首先,最终得到的DSL很容易变换成可工作的软件。其次,“他所”演示的方法可以结合来自通用语言和领域特定语言的概念。
【文章出处】 -
0
- [收藏] [推荐] [评论] [打印] [关闭] 点击:
软件
评论:在模型驱动工程中结合通用语言和领域特定语言
查看所有评论(共0条)
相关推荐阅读
- 数据库产业商业模式大猜想 1970-01-01 08:00:00
- 在模型驱动工程中结合通用语言和领域特定语言 2008-04-23 10:18:00
- 【IT168 技术文档】 Mendix公司的CTO Johan den Haan在最近的一篇博客中问了模型驱动方式(架构、开发、工程)中的一个关键问题: 模型驱动工程(Model Driven Engineering
- Vista旗舰版新的声音和梦幻桌面内容下载 2008-04-23 09:08:01
- Vista的最高版本是Ultimate终极旗舰版,这个版本包含了其他版本的所有功能,而且还加入了一个Extras扩展包,至于这些扩展是什么,微软也不知道,因为他们也在不停的更新。
- 用快车下BT不再慢 优化快车BT下载 2008-04-23 08:26:01
- 文/郑掣 如今是BT下载的时代,连使用人数最多的下载工具--快车,自去年推出的新版,最大的改变,就是支持BT下载。由于BT下载是点对点的下载,所以要想让快车BT下载如飞的话
- 删除多余的Windows Vista启动菜单 2008-04-23 08:25:07
- 网友问题:我安装过两次Windows Vista,其中一个已经废弃,可能是没删除干净,每次开机进入系统前都会出现两个Vista启动菜单。请问如何删除多余的那个Vista菜单项? 答案:
- IRC构架的流行聊天室工具XChat 新版发布 2008-04-23 08:24:08
- XChat是流行的聊天室软件,类似于Windows 下的mIRC( 下载 ),MS Chat等软件。利用它你可以登陆到任何的IRC 服务器和别人交流。xchat 运行在X11 环境下,有着良好的用户界
- FTP服务器搭建工具Serv-U更新到7.0.0.3 2008-04-23 08:23:08
- Serv-U是Rob Beckers开发的一个功能强大的、简单易用的、成熟的FTP服务器,FTP服务器用户通过Internet的FTP协议共享文件。Serv-U不仅仅能100%适用于标准的FTP,同样也包括
- Vista快速启动工具 Start++ 0.8 版发布 2008-04-23 08:21:03
- 在 Windows Vista 中,开始功能表(Start Menu)用上一个全新的设计,而当中最大改变是增设了一个搜寻栏,用户可直接输入要搜寻的档案和程序。Start++就是建基于这个搜寻栏所