Software Analysis and Testing for Large-Scale Software Systems

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 6969

Special Issue Editors


E-Mail Website
Guest Editor
College of Computer Science, National University of Defense Technology, Changsha 410073, China
Interests: bug detection; configuration; log analysis and performance issues for large-scale software systems
School of Big Data & Software Engineering, Chongqing University, Chongqing 400044, China
Interests: program analysis; fault localization; program repair; empirical software engineering

E-Mail Website
Guest Editor
College of Computer Science, National University of Defense Technology, Changsha 410073, China
Interests: bug detection; software testing

Special Issue Information

Dear Colleagues,

Software systems are becoming larger and increasingly complex thanks to the rise of the cloud and the open-source movement. Maintaining the high reliability, availability and efficiency of large-scale software systems in today’s world is now more challenging than ever. Proper software analysis and testing are essential for producing high-quality software products.

This Special Issue aims to present the latest research and practices related to improving the dependability and quality of software systems. We solicit high-quality work describing original and unpublished results of theoretical, empirical, conceptual, and experimental research at any point in software quality assurance approaches.

Topics of interest include, but are not limited to:

  • Reliability, availability, and efficiency of software systems;
  • Software testing, verification, and validation;
  • Software configuration;
  • Program analysis, debugging and comprehension;
  • Information and software quality assurance;
  • Fault tolerance for software reliability improvement;
  • Software vulnerabilities;
  • Mining software repositories and software analytics;
  • Software maintenance and evolution;
  • Benchmarking, tools, industrial applications, and empirical studies;
  • AI for software quality assurance;
  • Software quality assurance for AI.

Prof. Dr. Shanshan Li
Dr. Yan Lei
Dr. Zhouyang Jia
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

  • software reliability
  • configuration
  • program analysis
  • AI4SE
  • SE4AI

Published Papers (3 papers)

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

Research

Jump to: Review

15 pages, 513 KiB  
Article
RegFuzz: A Linear Regression-Based Approach for Seed Scheduling in Directed Fuzzing
by Mingmin Lin, Yingpei Zeng and Yang Li
Electronics 2023, 12(17), 3650; https://doi.org/10.3390/electronics12173650 - 29 Aug 2023
Viewed by 538
Abstract
Directed fuzzing aims to focus on fuzzing specific locations within a target program to enhance the efficiency of vulnerability discovery. However, directed fuzzing may yield fewer vulnerabilities and obtain lower code coverage when the specified locations have little to no vulnerabilities. Additionally, the [...] Read more.
Directed fuzzing aims to focus on fuzzing specific locations within a target program to enhance the efficiency of vulnerability discovery. However, directed fuzzing may yield fewer vulnerabilities and obtain lower code coverage when the specified locations have little to no vulnerabilities. Additionally, the existing directed fuzzing approaches often overlook the differences in variable values when calculating distances between seeds and specific locations. In order to address these issues, this paper introduces RegFuzz, a method that improves seed scheduling in directed fuzzing. RegFuzz utilizes a linear regression model to predict the effectiveness of a seed and allocates more fuzzing opportunities to efficient seeds. Specifically, first, RegFuzz defines several labels with the corresponding trainable weights for each seed. These labels encompass seed coverage, crash efficiency, seed distance, and more. In the calculation of seed distance, RegFuzz takes into account not only the basic block distance but also the variable distance contained within those basic blocks. Second, the linear regression model continually optimizes the label weights during fuzzing, and these optimized weights are employed to predict the effectiveness of seeds. In comparison with AFLGo, AFL, and AFL++, RegFuzz demonstrates higher code coverage and a more efficient bug-finding capability across seven real-world open-source programs. Full article
(This article belongs to the Special Issue Software Analysis and Testing for Large-Scale Software Systems)
Show Figures

Figure 1

Review

Jump to: Research

25 pages, 677 KiB  
Review
A Survey on the Development of Network Protocol Fuzzing Techniques
by Zhaowei Zhang, Hongzheng Zhang, Jinjing Zhao and Yanfei Yin
Electronics 2023, 12(13), 2904; https://doi.org/10.3390/electronics12132904 - 01 Jul 2023
Cited by 1 | Viewed by 2989
Abstract
Network protocols, as the communication rules among computer network devices, are the foundation for the normal operation of networks. However, security issues arising from design flaws and implementation vulnerabilities in network protocols pose significant risks to network operations and security. Network protocol fuzzing [...] Read more.
Network protocols, as the communication rules among computer network devices, are the foundation for the normal operation of networks. However, security issues arising from design flaws and implementation vulnerabilities in network protocols pose significant risks to network operations and security. Network protocol fuzzing is an effective technique for discovering and mitigating security flaws in network protocols. It offers unparalleled advantages compared to other security analysis techniques thanks to the minimal requirement for prior knowledge of the target and low deployment complexity. Nevertheless, the randomness in test case generation, uncontrollable test coverage, and unstable testing efficiency introduce challenges in ensuring the controllability of the testing process and results. In order to comprehensively survey the development of network protocol fuzzing techniques and analyze their advantages and existing issues, in this paper, we categorized and summarized the protocol fuzzing and its related techniques based on the generation methods of test cases and testing conditions. Specifically, we overviewed the development trajectory and patterns of these techniques over the past two decades according to chronological order. Based on this analysis, we further predict the future directions of fuzzing techniques. Full article
(This article belongs to the Special Issue Software Analysis and Testing for Large-Scale Software Systems)
Show Figures

Figure 1

29 pages, 12085 KiB  
Review
A Decade of Intelligent Software Testing Research: A Bibliometric Analysis
by Mohamed Boukhlif, Mohamed Hanine and Nassim Kharmoum
Electronics 2023, 12(9), 2109; https://doi.org/10.3390/electronics12092109 - 05 May 2023
Cited by 3 | Viewed by 3010
Abstract
It gets harder and harder to guarantee the quality of software systems due to their increasing complexity and fast development. Because it helps spot errors and gaps during the first phases of software development, software testing is one of the most crucial stages [...] Read more.
It gets harder and harder to guarantee the quality of software systems due to their increasing complexity and fast development. Because it helps spot errors and gaps during the first phases of software development, software testing is one of the most crucial stages of software engineering. Software testing used to be done manually, which is a time-consuming, imprecise procedure that comes with errors and gaps and costs money, time, and effort. Currently, testing professionals routinely automate testing to obtain trustworthy results while saving time, cost, and labor. We’ve also moved the starting point of the software cycle to the developer, and made write tests before even writing code, or what’s known as TDD (Test Driven Development). The use of new artificial intelligence techniques will enable the generation of smart test cases to improve test quality and provide better coverage and accurate results. In this study, we used the Web of Science database to acquire bibliometric data about intelligent software testing papers which were conducted between 2012 and 2022, and we used Biblioshiny from the R bibliomerix package, alongside with VOSViewer in order to analyze the data and extract insights and answer research questions about the authors, articles, journals, organizations, and countries publishing in the field of intelligent software testing. The focus of this study is on scientific progress and collaborative trends in scholarly research, providing a blueprint for showcasing worldwide developments in the realm of intelligent software testing. By gaining a comprehensive understanding of the present state of research on the application of artificial intelligence in software testing, this study can offer valuable insights to software engineers, architects, and researchers in the field. Full article
(This article belongs to the Special Issue Software Analysis and Testing for Large-Scale Software Systems)
Show Figures

Figure 1

Back to TopTop