Previous Issue
Volume 4, June
 
 

Software, Volume 4, Issue 3 (September 2025) – 3 articles

  • Issues are regarded as officially published after their release is announced to the table of contents alert mailing list.
  • You may sign up for e-mail alerts to receive table of contents of newly released issues.
  • PDF is the official format for papers published in both, html and pdf forms. To view the papers in pdf format, click on the "PDF Full-text" link, and use the free Adobe Reader to open them.
Order results
Result details
Select all
Export citation of selected articles as:
2 pages, 131 KiB  
Editorial
New Editor-in-Chief of Software
by Mirko Viroli
Software 2025, 4(3), 16; https://doi.org/10.3390/software4030016 - 10 Jul 2025
Abstract
I would like to introduce myself as the new Editor-in-Chief of Software [...] Full article
24 pages, 498 KiB  
Article
Analysing Concurrent Queues Using CSP: Examining Java’s ConcurrentLinkedQueue
by Kevin Chalmers and Jan Bækgaard Pedersen
Software 2025, 4(3), 15; https://doi.org/10.3390/software4030015 - 7 Jul 2025
Viewed by 71
Abstract
In this paper we examine the OpenJDK library implementation of the ConcurrentLinkedQueue. We use model checking to verify that it behaves according to the algorithm it is based on: Michael and Scott’s fast and practical non-blocking concurrent queue algorithm. In addition, we [...] Read more.
In this paper we examine the OpenJDK library implementation of the ConcurrentLinkedQueue. We use model checking to verify that it behaves according to the algorithm it is based on: Michael and Scott’s fast and practical non-blocking concurrent queue algorithm. In addition, we develop a simple concurrent queue specification in CSP and verify that Michael and Scott’s algorithm satisfies it. We conclude that both the algorithm and the implementation are correct and both conform to our simpler concurrent queue specification, which we can use in place of either implementation in future verification tasks. The complete code is available on GitHub. Full article
Show Figures

Figure 1

56 pages, 1008 KiB  
Review
Machine Learning Techniques for Requirements Engineering: A Comprehensive Literature Review
by António Miguel Rosado da Cruz and Estrela Ferreira Cruz
Software 2025, 4(3), 14; https://doi.org/10.3390/software4030014 - 28 Jun 2025
Viewed by 276
Abstract
Software requirements engineering is one of the most critical and time-consuming phases of the software-development process. The lack of communication with stakeholders and the use of natural language for communicating leads to misunderstanding and misidentification of requirements or the creation of ambiguous requirements, [...] Read more.
Software requirements engineering is one of the most critical and time-consuming phases of the software-development process. The lack of communication with stakeholders and the use of natural language for communicating leads to misunderstanding and misidentification of requirements or the creation of ambiguous requirements, which can jeopardize all subsequent steps in the software-development process and can compromise the quality of the final software product. Natural Language Processing (NLP) is an old area of research; however, it is currently undergoing strong and very positive impacts with recent advances in the area of Machine Learning (ML), namely with the emergence of Deep Learning and, more recently, with the so-called transformer models such as BERT and GPT. Software requirements engineering is also being strongly affected by the entire evolution of ML and other areas of Artificial Intelligence (AI). In this article we conduct a systematic review on how AI, ML and NLP are being used in the various stages of requirements engineering, including requirements elicitation, specification, classification, prioritization, requirements management, requirements traceability, etc. Furthermore, we identify which algorithms are most used in each of these stages, uncover challenges and open problems and suggest future research directions. Full article
(This article belongs to the Topic Applications of NLP, AI, and ML in Software Engineering)
Show Figures

Figure 1

Previous Issue
Back to TopTop