Castelluccio, Marco (2018) Improving software engineering processes using machine learning and data mining techniques. [Tesi di dottorato]

[img]
Preview
Text
Castelluccio.pdf

Download (2MB) | Preview
[error in script] [error in script]
Item Type: Tesi di dottorato
Lingua: English
Title: Improving software engineering processes using machine learning and data mining techniques
Creators:
CreatorsEmail
Castelluccio, Marcomarco.castelluccio@unina.it
Date: 11 December 2018
Number of Pages: 159
Institution: Università degli Studi di Napoli Federico II
Department: Ingegneria Elettrica e delle Tecnologie dell'Informazione
Dottorato: Information technology and electrical engineering
Ciclo di dottorato: 31
Coordinatore del Corso di dottorato:
nomeemail
Riccio, Danieledaniele.riccio@unina.it
Tutor:
nomeemail
Sansone, CarloUNSPECIFIED
Verdoliva, LuisaUNSPECIFIED
Date: 11 December 2018
Number of Pages: 159
Uncontrolled Keywords: software engineering; data mining; machine learning
Settori scientifico-disciplinari del MIUR: Area 01 - Scienze matematiche e informatiche > INF/01 - Informatica
Area 09 - Ingegneria industriale e dell'informazione > ING-INF/05 - Sistemi di elaborazione delle informazioni
Date Deposited: 22 Jan 2019 22:12
Last Modified: 17 Jun 2020 07:46
URI: http://www.fedoa.unina.it/id/eprint/12674

Abstract

The availability of large amounts of data from software development has created an area of research called mining software repositories. Researchers mine data from software repositories both to improve understanding of software development and evolution, and to empirically validate novel ideas and techniques. The large amount of data collected from software processes can then be leveraged for machine learning applications. Indeed, machine learning can have a large impact in software engineering, just like it has had in other fields, supporting developers, and other actors involved in the software development process, in automating or improving parts of their work. The automation can not only make some phases of the development process less tedious or cheaper, but also more efficient and less prone to errors. Moreover, employing machine learning can reduce the complexity of difficult problems, enabling engineers to focus on more interesting problems rather than the basics of development. The aim of this dissertation is to show how the development and the use of machine learning and data mining techniques can support several software engineering phases, ranging from crash handling, to code review, to patch uplifting, to software ecosystem management. To validate our thesis we conducted several studies tackling different problems in an industrial open-source context, focusing on the case of Mozilla.

Actions (login required)

View Item View Item