Special Issue "Emerging Computational Intelligence Technologies for Software Engineering: Paradigms, Principles and Applications"

Submission Deadline: 31 December 2020
Submit to Special Issue
Guest Editors
Dr. Dac-Nhuong Le, Haiphong University, Vietnam.
Dr. Harish Garg, Thapar Institute of Engineering and Technology, Deemed University, Patiala, Punjab, India.
Dr. João Manuel R. S. Tavares, Universidade do Porto, Portugal.

Summary

As software systems are becoming more and more large and complex, there are various challenges posed by these systems. A software goes through various stages before it can be deployed such as requirements elicitation, software designing, software project planning, software coding, software testing and maintenance. In each of these stages, there are a number of tasks or activities involved. Due to large and complex nature of software, these software engineering tasks have become increasingly costly and more prone to errors. Thus, there is a demand to explore computational intelligent techniques to carry out different software engineering tasks. Computational intelligence is related to artificial intelligence where the heuristic algorithms are designed and used to give a good output in a reasonable amount of time. These algorithms have been used in different fields such as medical science, bioinformatics, computer networks (for routing and scheduling), and forecasting. In addition, researchers have applied intelligent techniques to various domains of software engineering as well such as software requirement prioritization, software cost estimation, reliability assessment, software defect prediction, maintainability prediction, quality prediction, size estimation, software vulnerability prediction, software test case prioritization and many more. Computational techniques such as evolutionary algorithms, machine learning approaches, meta-heuristic algorithms, and optimization schemes, are different types of intelligent techniques frequently used. Optimization algorithms can be used for obtaining a solution to a problem where the goals or targets to be achieved are known. Machine learning algorithms are used when we have sufficient data using which knowledge can be extracted and models can be trained. For example, models can be developed for predicting error prone classes of software. A meta-heuristic is a high-level, iterative process that guides and manipulates an underlying heuristic to efficiently explore the search space. The underlying heuristic can be a local search, or a low or high-level procedure. Meta-heuristics provide near optimal solutions with high accuracy and limited resources in a reasonable amount of time by exploiting the search space. For this book, researchers, academicians and professionals are going to be invited to contribute with chapters expressing their ideas and research in the application of intelligent techniques to the field of software engineering. Both theoretical contributions and practical applications in the area of intelligent techniques are welcome.

Potential topics include, but are not limited to, the following:

• Artificial intelligence techniques for improving software development

• Bio-Inspired optimization techniques for software engineering

• Computational intelligence and quantitative software engineering

• Computational techniques to solve class imbalance problem

• Computational intelligence approaches for software quality improvement

• Search algorithms for test case prioritization

• Test case generation using intelligent algorithms

• Intelligent requirement elicitation to optimize software quality

• Software cost estimation models using machine learning

• Artificial intelligence in predictive maintenance

• Developing intelligent systems for software design

• Use of intelligent techniques for analyzing software repositories

• Assessing intelligent text classification techniques

• Software quality prediction using intelligent techniques

• Intelligent feature selection techniques

• Intelligent computing techniques for software reliability prediction

• Soft computing techniques for software effort models

• Intelligent computing techniques for schedule estimation models.

• Artificial intelligence in prediction of software maintenance effort.

• Artificial intelligence in for software quality prediction.

• Artificial intelligence in software vulnerability prediction.

• Developing intelligent systems for software defect prediction models

• Artificial intelligence in software cost estimation


Keywords
Software engineering, software development, software quality, computational intelligence, artificial intelligence, bio-Inspired optimization, evolution algorithms, meta-heuristic algorithms, machine learning