Abstract
In this paper we show how our approach of extending Language Driven Engineering (LDE) with natural language-based code generation supports system migration: The characteristic decomposition of LDE into tasks that are solved with dedicated domain-specific languages divides the migration tasks into portions adequate to apply LLM-based code generation. We illustrate this effect by migrating a low-code/no-code generator for point-and-click adventures from JavaScript to TypeScript in a way that maintains an important property: generated web applications can automatically be validated via automata learning and model analysis by design. In particular, this allows to easily test the correctness of migration by learning the difference automaton for the generated products of the source and the target system of the migration.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Angluin, D.: Learning regular sets from queries and counterexamples. Inf. Comput. 75(2), 87ā106 (1987)
Raffelt, H., et al.: Dynamic testing via automata learning. Int. J. Softw. Technol. Transf. (STTT) 11(4), 307ā324 (2009). ISSN 1433-2779. https://doi.org/10.1007/s10009-009-0120-7
WindmĆ¼ller, S., et al.: Active continuous quality control. In: Proceedings of the 16th International ACM Sigsoft Symposium on Component-Based Software Engineering, CBSE 2013, Vancouver, British Columbia, Canada, pp. 111ā120. Association for Computing Machinery (2013). ISBN 9781450321228. https://doi.org/10.1145/2465449.2465469
Neubauer, J., WindmĆ¼ller, S., Steffen, B.: Risk- based testing via active continuous quality control. Int. J. Softw. Tools Technol. Transf. 16(5), 569ā591 (2014). https://doi.org/10.1007/s10009-014-0321-6
Lybecait, M., Kopetzki, D., Zweihoff, P., Fuhge, A., Naujokat, S., Steffen, B.: A tutorial introduction to graphical modeling and metamodeling with CINCO. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018. LNCS, vol. 11244, pp. 519ā538. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03418-4_31
Naujokat, S., et al.: CINCO: a simplicity-driven approach to full generation of domain-specific graphical modeling tools. Int. J. Softw. Tools Technol. Transf. 20, 327ā354 (2018)
Steffen, B., et al.: Language-driven engineering: from general-purpose to purpose-specific languages. In: Computing and Software Science: State of the Art and Perspectives, pp. 311ā344 (2019)
Bainczyk, A., Steffen, B., Howar, F.: Lifelong learning of reactive systems in practice. In: Ahrendt, W., et al. (eds.) The Logic of Software. A Tasting Menu of Formal Methods: Essays Dedicated to Reiner HƤhnle on the Occasion of His 60th Birthday, pp. 38ā53. Springer, Cham (2022). ISBN 978-3-031-08166-8. https://doi.org/10.1007/978-3-031-08166-8_3
Bainczyk, A., BoĆelmann, S., Krause, M., Krumrey, M., Wirkner, D., Steffen, B.: Towards continuous quality control in the context of language-driven engineering. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification and Validation. Software Engineering, ISoLA 2022. LNCS, vol. 13702, pp. 389ā406. Springer, Cham (2022). ISBN 978-3-031-19756-7. https://doi.org/10.1007/978-3-031-19756-7_22
Li, Z., et al.: Automating code review activities by large-scale pre-training. In: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp. 1035ā1047 (2022)
Vaithilingam, P., Zhang, T., Glassman, E.L.: Expectation vs. experience: evaluating the usability of code generation tools powered by large language models. In: Chi Conference on Human Factors in Computing Systems Extended Abstracts, pp. 1ā7 (2022)
Xu, F.F., et al.: A systematic evaluation of large language models of code. In: Proceedings of the 6th ACM SIGPLAN International Symposium on Machine Programming, pp. 1ā10 (2022)
Bainczyk, A.: Simplicity-oriented lifelong learning of web applications. [work in progress]. Ph.D. thesis. Dortmund, Germany: TU Dortmund University (2023)
Busch, D., et al.: ChatGPT in the loop - a natural language extension for domain-specific modeling languages. In: Lecture Notes of Computer Science, vol. 14380. Springer, Heidelberg (2023). https://doi.org/10.1007/978-3-031-46001-2_22
OpenAI. GPT-4 Technical Report. arXiv arXiv:2303.08774 (2023)
Tian, H., et al.: Is ChatGPT the ultimate programming assistant-how far is it? arXiv preprint arXiv:2304.11938 (2023)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
Ā© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Busch, D., Bainczyk, A., Steffen, B. (2024). Towards LLM-Based System Migration in Language-Driven Engineering. In: KofroÅ, J., Margaria, T., Seceleanu, C. (eds) Engineering of Computer-Based Systems. ECBS 2023. Lecture Notes in Computer Science, vol 14390. Springer, Cham. https://doi.org/10.1007/978-3-031-49252-5_14
Download citation
DOI: https://doi.org/10.1007/978-3-031-49252-5_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-49251-8
Online ISBN: 978-3-031-49252-5
eBook Packages: Computer ScienceComputer Science (R0)