go back

LLM as a code generator in Agile Model Driven Development

Ahmed Sadik, Sebastian Brulin, Markus Olhofer, Antonello Ceravola, Frank Joublin, "LLM as a code generator in Agile Model Driven Development", Springer , 2024.

Abstract

Leveraging Large Language Models (LLM) like GPT-4 in the auto-generation of code represents a signifi cant advancement, yet it is not without its challenges. The ambiguity inherent in natural language descriptions of software poses substantial obstacles to generating deployable, structured artifacts. This research champions Model-Driven Development (MDD) as a viable strategy to overcome these challenges, proposing an Agile Model-Driven Development (AMDD) approach that employs GPT-4 as a code generator. This approach enhances the flexibility and scalability of the code auto-generation process and offers agility that allows seamless adaptation to changes in models or deployment environments. We illustrate this by modeling a multi-agent Unmanned Vehicle Fleet (UVF) system using the Unifi ed Modeling Language (UML), significantly reducing model ambiguity by integrating the Object Constraint Language (OCL) for code structure meta-modeling, and the FIPA ontology language for communication semantics meta-modeling. Applying GPT-4’s auto-generation capabilities yields Java and Python code that is compatible with the JADE and PADE frameworks, respectively. Our thorough evaluation of the auto-generated code verifies its alignment with expected behaviors and identifies enhancements in agent interactions. Structurally, we assessed the complexity of code derived from a model constrained solely by OCL meta-models, against that influenced by both OCL and FIPA-ontology meta-models. The results indicate that the ontology-constrained meta-model produces inherently more complex code, yet its cyclomatic complexity remains within manageable levels, suggesting that additional meta-model constraints can be incorporated without exceeding the high-risk threshold for complexity.



Download Bibtex file Per Mail Request

Search

Cookies preferences

Others

Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.

Necessary

Necessary
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.

Advertisement

Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.

Analytics

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.

Functional

Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.

Performance

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.