Closed. This question is opinion-based 。它目前不接受答案。












想改善这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答。

6年前关闭。



Improve this question




我目前面临的情况是,我作为测试驱动开发的倡导者必须与模型驱动软件开发(MDSD)/模型驱动架构(MDA)的倡导者竞争。

在我看来,代码生成是我工具箱中的一个宝贵工具,我在需要时大量使用模板和自动化。当我认为这有助于理解内部工作或在白板上讨论架构时,我也会在 UML 中创建图表。但是,我强烈怀疑通过 UML 创建软件(创建状态图和序列图以创建工作代码而不仅仅是代码框架)对于多层应用程序(数据库层、业务/领域层和 Gui,甚至可能是分布式的)更有效。在我看来,当谈到 MDSD 时,CASE 工具突然不再只是一个工具,而是一个值得满足的东西:正如我所见,一方面,MDSDevelopers 从 UML 给他们的更高抽象中获利,但在与此同时,他们正在努力修改代码生成器/模板/引擎以满足他们的需求,如果使用他们工具箱中的另一个工具(VisualStudio、Eclipse 等),这些需求可能很容易实现(和测试)。

所有这一切让我想知道是否有一个成功的故事(成功是产品及时推出,在预算范围内,只有很少的错误和软件的一部分后来被重用)用于现实世界的应用程序这个 creteria 是使用严格的模型驱动方法开发的:
  • 与对象管理组 (OMG) 或与 MDSD/MDA/SOA/
  • 相关的顾问无关
  • 应用程序与业务流程建模无关,也不是 CASE 工具本身
  • 最终用户积极使用该应用程序
  • 它至少有三层,包括一个用户界面,它不仅仅是显示原始表值,而且不是常见的 MDA/MDSD 示例之一(“如何建模咖啡机、交通灯、洗碗机”)。
  • 最佳答案

    模型驱动软件网络上发布了一个关于 MDSD 使用的微小但仍然有用的推荐:

    http://www.modeldrivensoftware.net/profiles/blogs/viva-mdd-follow-up-building-a?xg_source=activity

    这是一个正在开发的相对较小的应用程序,但仍然是 MDSD 的一个很好的例子。

    Metacase 的站点 ( http://www.metacase.com/cases/index.html ) 上列出了更多成功案例。 Metacase 销售 MetaEdit+,它实现了 DSM(Domain-Specific Modeling)。 DSM 只是 MDSD 的一种形式。

    我也在开发 ABSE(基于原子的软件工程),另一种形式的 MDSD,非常接近 DSM。 ABSE 概述于 http://www.abse.info

    关于mda - 是否有真实世界应用程序的 MDSD/MDA 成功案例?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3096702/

    10-12 19:02