EDITORIAL article

Front. Comput. Sci., 19 August 2025

Sec. Software

Volume 7 - 2025 | https://doi.org/10.3389/fcomp.2025.1670939

Editorial: Machine learning for software engineering

  • 1. Informatics Department, King's College London, London, United Kingdom

  • 2. Computer Science Department, Roehampton University, London, United Kingdom

  • 3. Computer Science Department, University College London, London, United Kingdom

  • 4. Computer Science Department, Princess Nourah bint Abdulrahman University, Riyadh, Saudi Arabia

1 Introduction

Artificial intelligence (AI) techniques such as machine learning (ML) and particularly deep learning (DL) tools such as large language models (LLMs) () have been increasingly used to support a wide range of software engineering tasks, or even to replace traditional manually-based techniques for software development (), and this leads to the need to consider the effectiveness and implications of such use ().

Historically, machine learning was divided into symbolic ML techniques such as inductive logic programming and non-symbolic techniques based on neural nets and other quantitative approaches using numeric processing. While symbolic techniques were successfully used in areas such as learning model transformations () or code synthesis rules (), they have limitations due to the need for specialized preparation of training data, and non-symbolic techniques have become predominant in practice due to their advantages in terms of scalability, flexible training requirements, and wide applicability.

In recent years, non-symbolic ML techniques have been used to perform reverse engineering of code, to generate code, and to perform many other code-based and software engineering tasks, as alternatives to rule-based techniques for these activities. The advent of LLMs from 2020 onwards as a general-purpose deep learning technique has transformed software development practice, with tools such as Copilot and Cursor being widely used to produce program code based on natural language requirements and partial specifications, such as the intended results of test cases. This approach is highly usable for practitioners, however the reliability and accuracy of LLM-based code generation is still open to question (; ; ; ; ), and in practice the outputs of LLMs need scrutiny by human experts before being used in operational code, as is pointed out by the paper by Uandykova et al. in this Research Topic.

In other areas of software engineering practice, ML and LLMs have been used for the reverse engineering of programs to specifications (; ; ,,; ) and for code summarization, refactoring, and program translation (; ; ; ; ; ). In each of these application domains, the high usability of the conversational interfaces offered by LLM-based tools often outweighs (at least for non-critical applications) the stochastic and black-box nature of LLMs and the need to review LLM outputs.

Machine learning is particularly relevant for tasks where informal and imprecise information needs to be formalized, as occurs in requirements engineering processes such as requirements formalization. Because of the wide variation and highly expressive nature of natural language, fixed-rule systems for requirements formalization inevitably have limitations in processing natural language requirements texts, whilst ML tools such as LLMs can instead apply their broad language knowledge for the task. The paper Hemmat et al. in this Research Topic provides a survey of recent work in this field. The possible problems with LLM use in this field are identified by .

2 Selected papers

The six selected papers investigate different applications of AI and ML to software engineering across a range of domains.

In Uandykova et al., the authors analyze the potential for LLM use in generating industrial-quality Java code. They evaluate the ChatGPT LLM on a range of realistic tasks. They identify that the LLM can improve developer productivity and help to efficiently allocate human resources in projects. However, the study also points out limitations of the LLM for solving complex problems and the need for human intervention to verify, correct, and improve generated code.

The paper of Umar et al. defines a framework for automated requirements engineering in an agile MDE development context and uses ML models to extract essential components from textual requirements specifications, producing UML class diagrams as formalized specifications which can then be used by further development stages. They evaluate the framework on two real-world experimental studies, demonstrating accurate results when compared with manually derived class diagrams.

Also in the area of requirements engineering, the survey of Hemmat et al. carried out a systematic literature review of the field of LLM application within requirements engineering, and identified 29 primary studies in this area over the period 2020 to 2024. They conclude from analysis of these studies that LLMs have been successful in requirements specification but that deficiencies such as the presence of LLM hallucinations still remain.

The paper of Siala and Lano compares LLM-based and rule-based approaches for reverse engineering, for tasks of Python and Java reverse engineering to UML specifications. They find that the baseline performance of an LLM is prone to errors; however, fine-tuning of an LLM can improve its performance to be comparable to that of the rule-based methods.

In Guruge and Priyadarshana, the authors apply the LSTM ML technique together with Facebook Prophet to support efficient cloud computing implementation via Kubernetes. The use of ML enables proactive autoscaling, in contrast to the reactive autoscaling provided by rule-based techniques. They show that the approach improves upon existing approaches in terms of prediction accuracy.

The paper Saini et al. introduces a new technique for accurate classification of visual and textual data, with applications in data mining and natural language processing. The authors evaluate their approach on established datasets and compare the results to well-known AI classifiers such as KNN and Bayes.

3 Conclusions

This Research Topic explored the subject of AI application to software engineering, and the selected papers cover a wide range of application areas, from requirements engineering and NLP to code generation, reverse engineering, and cloud computing. We can conclude that AI techniques have shown effective capabilities for performing or supporting software engineering tasks and that there is substantial potential for extension of these AI applications to SE and for further development of the field.

Statements

Author contributions

KL: Writing – original draft, Writing – review & editing. SR: Writing – review & editing. ST: Writing – review & editing. HA: Writing – review & editing.

Conflict of interest

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

Generative AI statement

The author(s) declare that no Gen AI was used in the creation of this manuscript.

Any alternative text (alt text) provided alongside figures in this article has been generated by Frontiers with the support of artificial intelligence and reasonable efforts have been made to ensure accuracy, including review by the authors wherever possible. If you identify any issues, please contact us.

Publisher’s note

All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.

References

Summary

Keywords

software engineering, artificial intelligence, machine learning, LLMs, requirements engineering

Citation

Lano K, Rahimi SK, Tehrani SY and Alfraihi H (2025) Editorial: Machine learning for software engineering. Front. Comput. Sci. 7:1670939. doi: 10.3389/fcomp.2025.1670939

Received

22 July 2025

Accepted

01 August 2025

Published

19 August 2025

Volume

7 - 2025

Edited and reviewed by

Martin Shepperd, Brunel University London, United Kingdom

Updates

Copyright

*Correspondence: Kevin Lano

Disclaimer

All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article or claim that may be made by its manufacturer is not guaranteed or endorsed by the publisher.

Outline

Cite article

Copy to clipboard


Export citation file


Share article

Article metrics