Acciones

Evolutionary Methods and Machine Learning in Software Engineering, Testing and Software Engineering Repositories (CEC 2017 Special Session)

This special session aims to bring together both theoretical developments and applications of Computational Intelligence to software engineering (SE), i.e.,the management, design, the development, operation, maintenance, and testing of software. All bio-inspired computational paradigms and machine learning techniques are welcome, such as Genetic and Evolutionary Computation, including Multi-Objective Approaches, Fuzzy Logic, Intelligent Agent Systems, Neural Networks, Cellular Automata, Artificial Immune Systems, Swarm Intelligence, and others, including machine learning techiques.

Currently, an increasing number of researchers from the SE discipline are focusing on applying computational intelligence techniques such as meta-heuristics (known as Search based software engineering -SBSE-), data mining or statistics to their research. Problems such as planning and decision making in software engineering, arrangements of modules, finding patterns of defective modules, cost and effort estimation, testing and test case generation, debugging and fault localisation, knowledge extraction, etc. can be reformulated or addressed using a set of techniques which includes searching and optimization techniques, data mining and machine learning, simulation, process mining, etc. These techniques, already used extensively in other areas, are incrementally being applied in software engineering.

There is a large number of decisions during the development and maintenance of any software system. Evolutionary methods and data mining can help with the decision making process based on the information available (e.g., estimation and planning of projects) or with the generation of artifacts (e.g., test case generation). Furthermore, modern development environments (IDEs, Issue Tracking Systems and Configuration Management Systems) allow us to collect large amount of data during the executing of a project for real-time decisions as well as application repositories (AppStore, Google Play) containing huge amount of valuable information that can be exploited.

Topics of interest include:

  • Search-based Software Engineering
  • Requirements engineering
  • Automated design and development of software
  • Genetic improvement of software
  • Software maintenance and self-repair
  • Software effort estimation and fault prediction
  • Software reliability, testing and security with data-mining or meta-heuristic techniques
  • Project management, planning and scheduling
  • Studies, applications and tools to extract information from software repositories
  • Dealing with data problems in software repositories (noise, imbalance, outliers, etc.) when applying ML or meta-heuristics
  • Process mining
  • Mining mobile application repositories (AppStore and Google Play)
  • Tools based on evolutionary or ML methods in SE
  • Real world applications of the above