模型驱动开发:低代码的基础

Model-Driven Development

低代码开发有几个基本原则。 虽然所有这些都是必不可少的,但有一个原则,没有它就不会有低代码开发:模型驱动的开发。

什么是模型驱动的开发?

模型驱动的开发是低代码开发的基础。该方法抽象了开发应用程序的技术部分(逻辑、数据模型、用户界面等),并将它们转换为可视化的拖放组件。

使用可视化构建块,需求方可以向开发人员展示问题或业务需求。 然后,开发人员可以向需求方展示什么是可能的以及如何解决问题。

因此,失误要少得多,开发过程更快,成品更加准确无误。 实现了最佳的商业价值。 这是一个双赢的局面。

为什么模型驱动的开发是必要的?

协作和沟通很困难,因为业务和IT的语言不一样。 而传统的瀑布式开发过程只会加剧这个问题。

以下是传统开发过程的通常情况:

  • 业务专家用他们的语言描述业务需要什么。
  • 开发人员试图通过软件语言和IT架构的过滤器来理解业务需求。 因此,他们可能只听到业务专家所描述的部分内容。
  • 然后,业务和IT在开发过程中并没有更多的沟通和交流。
  • 交付的解决方案没有达到要求。

可以肯定地说,大多数开发人员都没有上过商学院。 大多数商学院毕业生都不懂计算机代码。 他们都学习了不同的语言——这些语言是他们在工作中做到最好所需要的。 但模型驱动的开发创建了一种任何人都能理解的共享可视语言。

什么是模型驱动的体系结构?

模型驱动的开发为用户提供了一个可视化界面。 但正是视觉效果背后的东西让一切变得不同。 (你可以有一个非低代码的可视化界面,但低代码必须要有可视化的界面。)

对于低代码,模型从代码中抽象出来。你有构建块或“预构建的应用程序组件”,而不是使用严格语法的复杂语言。 每个都有自己领域的特定语言 (DSL),处理应用程序的所有技术方面(逻辑、数据模型、用户界面、安全性、集成等)。

这些组件或“功能片段”被抽象并以可视化方式呈现给用户。 这创建了一种通用语言,从业务领域专家到核心开发人员,团队中的每个人都能理解。

在一起探索解决方案时,他们可以理解彼此在谈论什么,排列或重新排列组件,然后快速测试应用程序。

这种神奇之处在于自动化,这是模型驱动开发的另一个基本方面。 拖放可视化开发顶层下面的流程都是自动化的,包括:

  • 配置
  • 测试和质量保证
  • 集成
  • 各种各样的日常事务

专业开发人员可以从一些乏味的任务中解脱出来。 这是低代码如何提高生产力和加速开发过程的一个主要例子。

如何在没有代码的情况下构建模型驱动的应用程序

在这一点上,许多人的问题是:我如何使用模型驱动的开发来构建一个没有代码的应用程序?

低代码平台是专门为帮助您构建无代码应用程序而设计的。 但事实是,有些低代码平台仍然依赖代码。 一些可视化模型被解释为成为应用程序的代码。 随之而来的是所有的传统陷阱,比如典型的代码密集型应用程序的质量和操作问题。

在真正的模型驱动的应用程序中,模型本身可以在运行时执行,而不需要代码。 当您不必编写和排除代码故障时,开发过程会成倍地加快,完成的应用程序质量也会更高。

如果您需要预构建组件中不可用的功能,专业开发人员可以编写代码来构建自定义组件。 然后,您可以通过低代码平台的市场(即Mendix marketplace)将该组件提供给社区中的其他开发人员。

模型驱动开发和BizDevOps

从定义上讲,模型驱动的低代码让BizDevOps的想法不假思索地变得生动起来。

由于直观的可视化建模工具消除了代码的奥秘,业务专家是流程中不可或缺的一环。 他们甚至可以自己构建应用程序。 即使没有任何代码知识,他们也可以拖放到工作应用程序。

得益于可视化模型,开发团队在速度和生产力方面得到了很大的提升。 通过自动化,他们可以摆脱那些影响生产力和士气的平凡而重复的日常事务。

开发人员不必花太多时间来选择语言、数据结构、逻辑流和体系结构,因为模型为他们做出了正确的选择。

从运营的角度来看,由于模型中内置了自动化流程、质量检查和按钮部署,一切都变得更快、更容易。

开放和可扩展的模型驱动开发

随着技术在眨眼之间发生变化,新工具席卷全球——物联网、人工智能、增强现实、区块链、边缘等——软件面临的挑战是适应和集成。

模型驱动的低代码平台是处理未来创新的理想工具。 例如,使用Mendix进行模型驱动的开发在各个级别都是开放和可扩展的。 这使专业开发人员能够增强应用程序功能,并开发更复杂的业务解决方案。 开发人员可以使用我们的Model API和软件SDK轻松地将Mendix与现有工具和技术集成在一起。

全部抽象出来

使用模型从较低级别的代码中抽象出来,使团队中的每个人都能够专注于更高级别的概念和解决方案。 自动化还通过以下方式提高了应用程序的质量:

  • 提高生产力
  • 减轻平凡重复任务的负担
  • 减少人为错误

从传统系统到新兴技术,开放性确保了与所有事物的连接。 结果是更相关、更强大的应用程序,构建速度比以代码为中心的平台更快。 这就是模型驱动的低代码开发的力量。

看看Mendix低代码平台有什么可能性