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

[img]
Anteprima
Testo
Castelluccio.pdf

Download (2MB) | Anteprima
[error in script] [error in script]
Tipologia del documento: Tesi di dottorato
Lingua: English
Titolo: Improving software engineering processes using machine learning and data mining techniques
Autori:
AutoreEmail
Castelluccio, Marcomarco.castelluccio@unina.it
Data: 11 Dicembre 2018
Numero di pagine: 159
Istituzione: Università degli Studi di Napoli Federico II
Dipartimento: 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, Carlo[non definito]
Verdoliva, Luisa[non definito]
Data: 11 Dicembre 2018
Numero di pagine: 159
Parole chiave: 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
Depositato il: 22 Gen 2019 22:12
Ultima modifica: 17 Giu 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.

Downloads

Downloads per month over past year

Actions (login required)

Modifica documento Modifica documento