Machine Learning (ML) and Software Engineering

A special issue of Electronics (ISSN 2079-9292). This special issue belongs to the section "Computer Science & Engineering".

Deadline for manuscript submissions: closed (31 December 2023) | Viewed by 17706

Special Issue Editors

Department of Software Engineering, Gyeongsang National University, 501 Jinjudaero, Jinju-si 52828, Republic of Korea
Interests: software evolution; documentation updates; requirement traceability; software architecture; data mining; machine learning; artificial intelligence; intelligent systems
Special Issues, Collections and Topics in MDPI journals

E-Mail Website
Guest Editor
1. Department of Intelligence and Communication Engineering, Gyeongsang National University, 2, Tongyeonghaean-ro, Tongyeong-si, Gyeongsangnam-do 53064, Korea
2. Department of AI Convergence Engineering, Gyeongsang National University, 201 Jinjudaero, Jinju-si 52828, Korea
Interests: real-time and cyber-physical systems; IoT; fog/edge mobile computing; real-time network; software engineering (formal methods, model checking)
1. Department of Computer Science, Gyeongsang National University, 201 Jinjudaero, Jinju-si 52828, Korea
2. Department of AI Convergence Engineering, Gyeongsang National University, 201 Jinjudaero, Jinju-si 52828, Korea
Interests: object tracking; hashing; large-scale image retrieval; simultaneous localization and mapping; camera calibration; 3D reconstruction

E-Mail Website1 Website2
Guest Editor
Department of Electronics, Telecommunications and Informatics, IEETA, University of Aveiro, 3810-193 Aveiro, Portugal
Interests: reconfigurable computing; application-specific architectures; digital systems; object-oriented programming; combinatorial optimization; hardware description languages
Special Issues, Collections and Topics in MDPI journals

Special Issue Information

Dear Colleagues,

At present, AI, machine learning, and deep learning technologies are remarkably developed, and various intelligent systems are being accordingly developed. This Special Issue aims to present a collection of the various software engineering techniques, tools, and methodologies for such intelligent systems in addition to AI, machine learning, and deep learning technologies that can be utilized to support intelligent software engineering. We also welcome topics on AI-based systems, such as autonomous vehicles, autonomous flights, and medical AIs. Specific topics of interest include but are not limited to:

  • Artificial intelligence for software engineering
  • Software engineering for artificial intelligence
  • Machine learning for requirement engineering
  • Machine learning for design
  • Machine learning for code generation
  • Machine learning for code example generation
  • Machine learning for code description
  • Machine learning for testing
  • Machine learning for code changes
  • Machine learning for artifact changes
  • CI, DevOps, and MLOps for intelligent software systems
  • Issues on autonomous vehicles
  • Issues on autonomous flights
  • Issues on medical AIs

Through this issue, we will reveal suitable machine learning techniques for supporting intelligent software engineering as well as software engineering methodologies for supporting emerging intelligent software systems. In addition, we would like to foster open discussion on the new horizon of intelligent software systems. Therefore, we welcome various new ideas and their verification in the development of intelligent software systems.

Dr. Seonah Lee
Dr. Jinhyun Kim
Dr. Suwon Lee
Dr. Iouliia Skliarova
Guest Editors

Manuscript Submission Information

Manuscripts should be submitted online at www.mdpi.com by registering and logging in to this website. Once you are registered, click here to go to the submission form. Manuscripts can be submitted until the deadline. All submissions that pass pre-check are peer-reviewed. Accepted papers will be published continuously in the journal (as soon as accepted) and will be listed together on the special issue website. Research articles, review articles as well as short communications are invited. For planned papers, a title and short abstract (about 100 words) can be sent to the Editorial Office for announcement on this website.

Submitted manuscripts should not have been published previously, nor be under consideration for publication elsewhere (except conference proceedings papers). All manuscripts are thoroughly refereed through a single-blind peer-review process. A guide for authors and other relevant information for submission of manuscripts is available on the Instructions for Authors page. Electronics is an international peer-reviewed open access semimonthly journal published by MDPI.

Please visit the Instructions for Authors page before submitting a manuscript. The Article Processing Charge (APC) for publication in this open access journal is 2400 CHF (Swiss Francs). Submitted papers should be well formatted and use good English. Authors may use MDPI's English editing service prior to publication or during author revisions.

Keywords

  • machine learning
  • software engineering
  • requirement analysis
  • design
  • implementation
  • testing
  • intelligence system
  • recommendation system
  • data mining
  • artificial intelligence

Related Special Issue

Published Papers (9 papers)

Order results
Result details
Select all
Export citation of selected articles as:

Research

Jump to: Review

30 pages, 1628 KiB  
Article
Enhancing Software Project Monitoring with Multidimensional Data Repository Mining
by Łukasz Reszka, Janusz Sosnowski and Bartosz Dobrzyński
Electronics 2023, 12(18), 3774; https://doi.org/10.3390/electronics12183774 - 06 Sep 2023
Viewed by 968
Abstract
Software project development and maintenance activities have been reported in various repositories. The data contained in these repositories have been widely used in various studies on specific problems, e.g., predicting bug appearance, allocating issues to developers, and identifying duplicated issues. Developed analysis schemes [...] Read more.
Software project development and maintenance activities have been reported in various repositories. The data contained in these repositories have been widely used in various studies on specific problems, e.g., predicting bug appearance, allocating issues to developers, and identifying duplicated issues. Developed analysis schemes are usually based on simplified data models while issue report details are neglected. Confronting this problem requires a deep and wide-ranging exploration of software repository contents adapted to their specificities, which differs significantly from classical data mining. This paper is targeted at three aspects: the structural and semantic exploration of repositories, deriving characteristic features in value and time perspectives, and defining the space of project monitoring goals. The considerations presented demonstrate a holistic image of the project development process, which is useful in the assessment of its efficiency and identification of imperfections. The original analysis introduced in this work was verified using open source and some commercial software project repositories. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

21 pages, 1179 KiB  
Article
A Comparison of Summarization Methods for Duplicate Software Bug Reports
by Samal Mukhtar, Claudia Cahya Primadani, Seonah Lee and Pilsu Jung
Electronics 2023, 12(16), 3456; https://doi.org/10.3390/electronics12163456 - 15 Aug 2023
Viewed by 894
Abstract
Bug reports vary in length, while some bug reports are lengthy, others are too brief to describe bugs in detail. In such a case, duplicate bug reports can serve as valuable resources for enriching bug descriptions. However, existing bug summarization methods mainly focused [...] Read more.
Bug reports vary in length, while some bug reports are lengthy, others are too brief to describe bugs in detail. In such a case, duplicate bug reports can serve as valuable resources for enriching bug descriptions. However, existing bug summarization methods mainly focused on summarizing a single bug report. In this paper, we focus on summarizing duplicate bug reports. By doing so, we aim to obtain an informative summary of bug reports while reducing redundant sentences in the summary. We apply several text summarization methods to duplicate bug reports. We then compare summarization results generated by different summarization methods and identify the most effective method for summarizing duplicate bug reports. Our comparative experiment reveals that the extractive multi-document method based on TF-IDF is the most effective in the summarization. This method successfully captures the relevant information from duplicate bug reports, resulting in comprehensive summaries. These results contribute to the advancement of bug summarization techniques, especially in summarizing duplicate bug reports. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

17 pages, 2891 KiB  
Article
Identifying Users and Developers of Mobile Apps in Social Network Crowd
by Ghadah Alamer, Sultan Alyahya and Hmood Al-Dossari
Electronics 2023, 12(16), 3422; https://doi.org/10.3390/electronics12163422 - 12 Aug 2023
Cited by 3 | Viewed by 682
Abstract
In the last fifteen years, an immense expansion has been witnessed in mobile app usage and production. The intense competition in the tech sector and also the rapidly and constantly evolving user requirements have led to increased burden on mobile app creators. Nowadays, [...] Read more.
In the last fifteen years, an immense expansion has been witnessed in mobile app usage and production. The intense competition in the tech sector and also the rapidly and constantly evolving user requirements have led to increased burden on mobile app creators. Nowadays, fulfilling users’ expectations cannot be readily achieved and new and unconventional approaches are needed to permit an interested crowd of users to contribute in the introduction of creative mobile apps. Indeed, users and developers of mobile apps are the most influential candidates to engage in any of the requirements engineering activities. The place where both can best be found is on Twitter, one of the most widely used social media platforms. More interestingly, Twitter is considered as a fertile ground for textual content generated by the crowd that can assist in building robust predictive classification models using machine learning (ML) and natural language processing (NLP) techniques. Therefore, in this study, we have built two classification models that can identify mobile apps users and developers using tweets. A thorough empirical comparison of different feature extraction techniques and machine learning classification algorithms were experimented with to find the best-performing mobile app user and developer classifiers. The results revealed that for mobile app user classification, the highest accuracy achieved was ≈0.86, produced via logistic regression (LR) using Term Frequency Inverse Document Frequency (TF-IDF) with N-gram (unigram, bigram and trigram), and the highest precision was ≈0.86, produced via LR using Bag-of-Words (BOW) with N-gram (unigram and bigram). On the other hand, for mobile app developer classification, the highest accuracy achieved was ≈0.87, produced by random forest (RF) using BOW with N-gram (unigram and bigram), and the highest precision was ≈0.88, produced by multi-layer perception neural network (MLP NN) using BERTweet for feature extraction. According to the results, we believe that the developed classification models are efficient and can assist in identifying mobile app users and developers from tweets. Moreover, we envision that our models can be harnessed as a crowd selection approach for crowdsourcing requirements engineering activities to enhance and design inventive and satisfying mobile apps. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

26 pages, 10696 KiB  
Article
Rule-Based Architectural Design Pattern Recognition with GPT Models
by Zoltán Richárd Jánki and Vilmos Bilicki
Electronics 2023, 12(15), 3364; https://doi.org/10.3390/electronics12153364 - 06 Aug 2023
Cited by 1 | Viewed by 1709
Abstract
Architectural design patterns are essential in software development because they offer proven solutions to large-scale structural problems in software systems and enable developers to create software that is more maintainable, scalable, and comprehensible. Model-View-Whatever (MVW) design patterns are prevalent in many areas of [...] Read more.
Architectural design patterns are essential in software development because they offer proven solutions to large-scale structural problems in software systems and enable developers to create software that is more maintainable, scalable, and comprehensible. Model-View-Whatever (MVW) design patterns are prevalent in many areas of software development, but their use in Web development is on the rise. There are numerous subtypes of MVW design patterns applicable to Web systems, but there is no exhaustive listing of them. Additionally, it is unclear how these subtypes can be utilized in contemporary Web development, as their usage is typically unconscious. Here, we discuss and define the most prevalent MVW design patterns used in Web development, as well as provide Angular framework examples and guidance on when to employ a particular design pattern. On the premise of the primary characteristics of design patterns, we created a rule system that large language models (LLMs) can comprehend without doubt. Here, we demonstrate how effectively Generative Pre-trained Transformer (GPT) models can identify various design patterns based on our principles and verify the quality of our recommendations. Together, our solution and GPT models constitute an effective natural language processing (NLP) solution capable of detecting MVW design patterns in Angular projects with an average accuracy of 90%. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

18 pages, 71054 KiB  
Article
Yolo-Papaya: A Papaya Fruit Disease Detector and Classifier Using CNNs and Convolutional Block Attention Modules
by Jairo Lucas de Moraes, Jorcy de Oliveira Neto, Claudine Badue, Thiago Oliveira-Santos and Alberto F. de Souza
Electronics 2023, 12(10), 2202; https://doi.org/10.3390/electronics12102202 - 12 May 2023
Cited by 7 | Viewed by 3123
Abstract
Agricultural losses due to post-harvest diseases can reach up to 30% of total production. Detecting diseases in fruits at an early stage is crucial to mitigate losses and ensure the quality and health of fruits. However, this task is challenging due to the [...] Read more.
Agricultural losses due to post-harvest diseases can reach up to 30% of total production. Detecting diseases in fruits at an early stage is crucial to mitigate losses and ensure the quality and health of fruits. However, this task is challenging due to the different formats, sizes, shapes, and colors that the same disease can present. Convolutional neural networks have been proposed to address this issue, but most studies use self-built datasets with few samples per disease, hindering reproducibility and comparison of techniques. To address these challenges, the authors proposed a novel image dataset comprising 23,158 examples divided into nine classes of papaya fruit diseases, and a robust papaya fruit disease detector called Yolo-Papaya based on the YoloV7 detector with the implementation of a convolutional block attention module (CBAM) attention mechanism. This detector achieved an overall mAP (mean average precision) of 86.2%, with a performance of over 98% in classes such as “healthy fruits” and “Phytophthora blight”. The proposed detector and dataset can be used in practical applications for fruit quality control and are consolidated as a robust benchmark for the task of papaya fruit disease detection. The image dataset and all source code used in this study are available to the academic community on the project page, enabling reproducibility of the study and advancement of research in this domain. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

20 pages, 12617 KiB  
Article
Obstacle Avoidance Strategy for Mobile Robot Based on Monocular Camera
by Thai-Viet Dang and Ngoc-Tam Bui
Electronics 2023, 12(8), 1932; https://doi.org/10.3390/electronics12081932 - 19 Apr 2023
Cited by 11 | Viewed by 2644
Abstract
This research paper proposes a real-time obstacle avoidance strategy for mobile robots with a monocular camera. The approach uses a binary semantic segmentation FCN-VGG-16 to extract features from images captured by the monocular camera and estimate the position and distance of obstacles in [...] Read more.
This research paper proposes a real-time obstacle avoidance strategy for mobile robots with a monocular camera. The approach uses a binary semantic segmentation FCN-VGG-16 to extract features from images captured by the monocular camera and estimate the position and distance of obstacles in the robot’s environment. Segmented images are used to create the frontal view of a mobile robot. Then, the optimized path planning based on the enhanced A* algorithm with a set of weighted factors, such as collision, path, and smooth cost improves the performance of a mobile robot’s path. In addition, a collision-free and smooth obstacle avoidance strategy will be devised by optimizing the cost functions. Lastly, the results of our evaluation show that the approach successfully detects and avoids static and dynamic obstacles in real time with high accuracy, efficiency, and smooth steering with low angle changes. Our approach offers a potential solution for obstacle avoidance in both global and local path planning, addressing the challenges of complex environments while minimizing the need for expensive and complicated sensor systems. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

16 pages, 2894 KiB  
Article
A Comprehensive Model of Android Software Aging and Rejuvenation Considering Battery Saving
by Vitaliy Yakovyna, Bohdan Uhrynovskyi and Natalya Shakhovska
Electronics 2023, 12(7), 1600; https://doi.org/10.3390/electronics12071600 - 29 Mar 2023
Viewed by 980
Abstract
The more complex the software system, the greater the number of possible combinations of defects that can cause errors, resulting in software defects that are difficult to isolate and expensive to correct in the development stage. An essential feature of such defects is [...] Read more.
The more complex the software system, the greater the number of possible combinations of defects that can cause errors, resulting in software defects that are difficult to isolate and expensive to correct in the development stage. An essential feature of such defects is a gradual deterioration in software performance finishing with software failure—software aging. Mobile devices are particularly vulnerable to software aging. Thus, there is a constant need for methods and tools to eliminate the effects of aging in mobile systems based on modeling the aging process, including the study of metrics and aging factors and the development of more reliable and adequate aging and rejuvenation models. This paper summarizes the previously developed Android software aging and rejuvenation models and presents a comprehensive model of aging and rejuvenation for the Android operating system. The comprehensive model is based on continuous-time Markov Chains and considers different aging levels, mobile device activity, and battery status. The aging and rejuvenation model can be used to assess the software quality, allows obtaining expressions for indicators of software rejuvenation efficiency, and can be used to design and select parameters of the software rejuvenation method considering battery saving. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

21 pages, 3292 KiB  
Article
A New Social Media-Driven Cyber Threat Intelligence
by Fahim Sufi
Electronics 2023, 12(5), 1242; https://doi.org/10.3390/electronics12051242 - 04 Mar 2023
Cited by 7 | Viewed by 4066
Abstract
Cyber threats are projected to cause USD 10.5 trillion in damage to the global economy in 2025. Comprehending the level of threat is core to adjusting cyber posture at the personal, organizational, and national levels. However, representing the threat level with a single [...] Read more.
Cyber threats are projected to cause USD 10.5 trillion in damage to the global economy in 2025. Comprehending the level of threat is core to adjusting cyber posture at the personal, organizational, and national levels. However, representing the threat level with a single score is a daunting task if the scores are generated from big and complex data sources such as social media. This paper harnesses the modern technological advancements in artificial intelligence (AI) and natural language processing (NLP) to comprehend the contextual information of social media posts related to cyber-attacks and electronic warfare. Then, using keyword-based index generation techniques, a single index is generated at the country level. Utilizing a convolutional neural network (CNN), the innovative process automatically detects any anomalies within the countrywide threat index and explains the root causes. The entire process was validated with live Twitter feeds from 14 October 2022 to 27 December 2022. During these 75 days, AI-based language detection, translation, and sentiment analysis comprehended 15,983 tweets in 47 different languages (while most of the existing works only work in one language). Finally, 75 daily cyber threat indexes with anomalies were generated for China, Australia, Russia, Ukraine, Iran, and India. Using this intelligence, strategic decision makers can adjust their cyber preparedness for mitigating the detrimental damages afflicted by cyber criminals. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

Review

Jump to: Research

21 pages, 403 KiB  
Review
Software Failure Log Analysis for Engineers—Review
by Wojciech Dobrowolski, Maciej Nikodem and Olgierd Unold
Electronics 2023, 12(10), 2260; https://doi.org/10.3390/electronics12102260 - 16 May 2023
Viewed by 1514
Abstract
The use of automated methods for log analysis is unavoidable in any large company; therefore, it has attracted attention from engineers and researchers. As a result, the number of articles in the field grows yearly and new approaches are frequently proposed. Unfortunately, published [...] Read more.
The use of automated methods for log analysis is unavoidable in any large company; therefore, it has attracted attention from engineers and researchers. As a result, the number of articles in the field grows yearly and new approaches are frequently proposed. Unfortunately, published research works only sometimes meet the needs of engineers wishing to apply the methods in real-life systems. A common issue is that the method’s benefits often do not compensate for the effort required for its implementation and maintenance. Therefore, engineers must understand the pros and cons of full-scale applications, including the implementation details and the required effort. This work provides a comprehensive review of automated log analysis methods and aims to offer a guide for software engineers who fix integration and production failures. The article categorizes and provides an overview of existing methods and assesses their implementation and maintenance costs, as well as the feasibility of the methods. The article also identifies and describes the shortcomings of existing methods, including concept drift, which is not addressed with sufficient attention, as well as the lack of online benchmarks and the interpretation of the log sequence as a language, without an in-depth analysis of its properties. Despite growing efforts to provide feasible and widely adopted solutions, many reference implementations are unavailable. Consequently, the time and computation complexities differ between various implementations of the same approaches, making the results of research work difficult to replicate in real-life scenarios. Full article
(This article belongs to the Special Issue Machine Learning (ML) and Software Engineering)
Show Figures

Figure 1

Back to TopTop