Castelluccio, Marco (2018) Improving software engineering processes using machine learning and data mining techniques. [Tesi di dottorato]
Anteprima |
Testo
Castelluccio.pdf Download (2MB) | Anteprima |
Tipologia del documento: | Tesi di dottorato |
---|---|
Lingua: | English |
Titolo: | Improving software engineering processes using machine learning and data mining techniques |
Autori: | Autore Email Castelluccio, Marco marco.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: | nome email Riccio, Daniele daniele.riccio@unina.it |
Tutor: | nome email 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 |