在版本控制模型领域做了哪些工作?

发布于 2024-10-09 13:21:39 字数 257 浏览 7 评论 0原文

我们有一个来自模型实验室的人关于模型驱动架构的相当精彩的讲座。 让我感兴趣的一件事是模型的版本控制(不要与不同模型的版本控制混淆)——或者缺乏版本控制。他所说的模型版本控制是指一种对 XML、EMF 文件进行版本控制并保留其语义的方法。

所以,我对该领域迄今为止所做的事情很感兴趣(他提到了一些关于 SVN 和 Moodle 的内容,尽管我可能听错了)。谷歌搜索没有任何结果,所以我转向 Stack Overflow 的智慧。

我主要寻找书籍、文章、链接形式的信息。

We had a rather nice lecture about Model driven architecture by a guy from Model Labs.
One thing that got me intrigued was the version control for models ( not to be confused with different models of version control) - or the lack of thereof. By version control for models he meant a way to version XML, EMF files which preserves their semantic.

So, I'm interested in what has been done so far on that field (he mentioned something about SVN and Moodle, though I could have misheard him). The Google search yielded nothing so I'm turning to the wisdom of the Stack Overflow.

I'm looking mostly for information in the form of books, articles, links.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

狼性发作 2024-10-16 13:21:39

我不知道有专门用于模型的 VCS,因为基于模型的设计通常是需要保持同步的所有文档链的一部分。
即(不是详尽的列表):

  • 需求文档(从中开始建模)
  • 源代码和文档(从模型生成和实现)

另外,我从未见过 GUI 方面在这些工具中完全解决(一个模型以某种方式精心组织)可能会在没有布局信息的情况下进行版本控制,并以另一种方式恢复组织)。

据我所知,覆盖所有这些开发流程的一个工具是 Modelio,其中包括“团队合作经理"

alt text


另一个例子(我不太了解)是 metaCASE,其中有一篇有趣的论文“模型存储库:不仅仅是版本控制下的 XML",关于 DSM(特定领域建模)。

DSM:基于模型的软件开发方法,使用可视化模型作为开发过程中的主要工件。
DSM 通过使用问题域中的概念和规则的语言(域特定语言 (DSL))直接指定解决方案,从而提高了普通编程语言的抽象级别。

它确实总结了这个问题:

建模领域越来越意识到需要
系统描述信息的中央存储库。
这是由于人们越来越认识到,只有拥有强大的中央存储库才能集成建模工具,应对大型项目,提供完整的生命周期支持,生成完整的文档,执行系统范围的验证和验证,并充分地控制项目。

I don't know of a VCS alone dedicated to Model, because Model-base design is often part of a all chain of documents that need to be kept in sync.
Namely (not an exhaustive list):

  • requirements documents (from which you start modeling)
  • source code and documentations (generated and implemented from the model)

Plus, I never saw the GUI aspect fully solved in those tools (one model painstakingly organized a certain way might be versioned without layout information, and restored organized another way).

One tool I know of which covers all of those development processes is Modelio, which includes a "teamwork manager"

alt text


Another example (which I don't know as much about) would be metaCASE, which has an interesting paper "The Model Repository: More than just XML under version control", about DSM (Domain-Specific Modeling).

DSM: model-based software development approach that uses visual models as primary artifacts in the development process.
DSM raises the level of abstraction beyond normal programming languages by directly specifying the solution in a language that uses concepts and rules from the problem domain – a Domain-Specific Language (DSL).

It does summarize the problem:

There is increased awareness within the modeling arena of the need for
a central repository of system description information.
This is brought on by a growing recognition that only with a strong central repository can modeling tools be integrated, cope with large projects, provide full life-cycle support, produce complete documentation, perform system-wide validation and verification, and adequately control a project.

挽你眉间 2024-10-16 13:21:39

模型版本控制工具的完整列表可以在这里找到:http:// /modeling-languages.com/content/version-control-tools-modeling-artifacts

A full list of version control tools for models can be found here: http://modeling-languages.com/content/version-control-tools-modeling-artifacts

眼睛会笑 2024-10-16 13:21:39

检查 EMF 框架 Edapt

它提供以下功能:

Edapt IDE 工具:

  • Ecore 编辑器增强功能,用于创建和维护Ecore
  • 操作浏览器的历史记录,用于在 Ecore
  • 发布工具上执行重构,以从 Ecore 历史记录中准备迁移插件
  • 自定义迁移支持

Edapt 运行时:

  • 用于检测给定模型实例版本的 API
  • 用于使用已注册迁移插件迁移模型实例的 API

Check EMF framework Edapt

it provides the following features:

Edapt IDE Tooling:

  • Ecore Editor enhancement to create and maintain the history of an Ecore
  • Operation-browser to execute refactorings on an Ecore
  • Release Tooling to prepare a migration plugin from the Ecore history
  • Custom Migration Support

Edapt Runtime:

  • API to detect version of given model instances
  • API to migrate model instances with registered migration plugins
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文