Oct, 2023

设计驱动编程:GPT-4 推动敏捷模型驱动开发

TL;DR使用大型语言模型(LLMs)如 ChatGPT 从自然语言中生成代码似乎是开创性的。然而,随着更广泛的使用,显然这种方法有自己的局限性。本研究提出了一种敏捷模型驱动开发(MDD)方法,使用 OpenAI 的 GPT-4 来增强代码自动生成。我们的工作强调 “敏捷性” 是对当前 MDD 方法的重要贡献,特别是当模型发生变化或需要部署到不同的编程语言时。因此,我们展示了一个案例研究,展示了无人驾驶车队的多代理仿真系统。在我们的方法的第一层和第二层,我们使用统一建模语言(UML)图示构建了案例研究的文本表示。在下一层中,我们引入了两组约束,以最小化模型的歧义性。对象约束语言(OCL)被应用于微调代码构建细节,而 FIPA 本体论用于塑造通信语义和协议。最后,利用 GPT-4,我们的最后一层自动生成 Java 和 Python 两种代码。Java 代码在 JADE 框架中部署,而 Python 代码在 PADE 框架中部署。在研究的结论部分,我们进行了对生成代码的全面评估。从行为角度来看,自动生成的代码与预期的 UML 顺序图完全一致。结构上,我们比较了仅受 OCL 约束的从 UML 图中导出的代码与既受 OCL 又受 FIPA 本体论影响的代码的复杂性。结果表明,本体论约束的模型产生了固有更复杂的代码,但仍然可管理并且对进一步的测试和维护风险较低。