Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin

Ohjelmistovirheiden korjausajan arviointi on perinteisesti tehty asiantuntija-arvioinnin perusteella. Automaattisia menetelmiä korjausajan ennustamiseksi on kehitetty lähinnä keskittyen yksittäisiin ohjelmistoprojekteihin. Tässä tutkimuksessa replikoitiin ohjelmistoprojektien kehitystehtävien valmis...

Full description

Bibliographic Details
Main Author: Holopainen, Lauri
Other Authors: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Format: Master's thesis
Language:fin
Published: 2022
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/79975
_version_ 1826225754925432832
author Holopainen, Lauri
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Holopainen, Lauri Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Holopainen, Lauri Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Holopainen, Lauri
datasource_str_mv jyx
description Ohjelmistovirheiden korjausajan arviointi on perinteisesti tehty asiantuntija-arvioinnin perusteella. Automaattisia menetelmiä korjausajan ennustamiseksi on kehitetty lähinnä keskittyen yksittäisiin ohjelmistoprojekteihin. Tässä tutkimuksessa replikoitiin ohjelmistoprojektien kehitystehtävien valmistumisaikoja koneoppimismenetelmin ennustava tutkimus, ja tutkittiin saman menetelmän soveltuvuutta virheraporttien sulkeutumisaikojen ennustamiseen. Koneoppimismenetelmänä käytettiin Random Forest -luokittimia. Aineisto käsitti yli 39 tuhatta avoimesti saatavilla olevaa ohjelmistoprojektia, lähes 13 miljoonaa kehitystehtävää ja yli 1.5 miljoonaa virheraporttia. Replikaatiotutkimuksessa laajempi opetus ja testausdata tuottivat hieman alkuperäistä tutkimusta heikommat tulokset, mutta uudet havainnot kuitenkin vahvistivat alkuperäisiä huomioita. Virheraporttien sulkeutumisajan ennustamisen huomattiin olevat haastavampi tehtävä kuin yleisempi kehitystehtävän valmistumisajan arviointi, ja menetelmää voisi kehittää tutkimalla luokittimen kannalta hyödyllisimpiä muuttujia. Tulosten perusteella näyttäisi siltä, että tekoälyn sovellettavuus yksittäisiä virheraportteja tarkastellessa on vielä heikkoa, mutta siitä voi olla hyötyä suuria tietomääriä käsiteltäessä. Estimating the resolution time of software defects has usually been done based on expert knowledge. Automatic methods to predict the resolution time has been done mostly by focusing on a few software projects. In this study, a replication of a previous study about predicting the issue resolution time of software projects with machine learning methods was performed, and the suitability of the method to predict the resolution time of defect reports was explored. Random Forest classification was the implemented machine learning method. The data set consisted of over 39 thousand publicly available software projects, almost 13 million issues and over 1.5 million defect reports. Larger data set of the replication produced slightly weaker results compared to the original paper, but new observations verified the points of the original study. Predicting the resolution time of defect reports turned out to be a harder task than the more general task of predicting resolution time of an issue. The method could be improved by studying the most useful features for the classifier. On the basis of the results, it would seem that the applicability of artificial intelligence when inspecting isolated defect reports is poor, but it could be useful when handling large data collections.
first_indexed 2024-09-11T08:49:46Z
format Pro gradu
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Isom\u00f6tt\u00f6nen, Ville", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Holopainen, Lauri", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2022-02-28T07:09:27Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2022-02-28T07:09:27Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2022", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/79975", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Ohjelmistovirheiden korjausajan arviointi on perinteisesti tehty asiantuntija-arvioinnin perusteella. Automaattisia menetelmi\u00e4 korjausajan ennustamiseksi on kehitetty l\u00e4hinn\u00e4 keskittyen yksitt\u00e4isiin ohjelmistoprojekteihin. T\u00e4ss\u00e4 tutkimuksessa replikoitiin ohjelmistoprojektien kehitysteht\u00e4vien valmistumisaikoja koneoppimismenetelmin ennustava tutkimus, ja tutkittiin saman menetelm\u00e4n soveltuvuutta virheraporttien sulkeutumisaikojen ennustamiseen. Koneoppimismenetelm\u00e4n\u00e4 k\u00e4ytettiin Random Forest -luokittimia. Aineisto k\u00e4sitti yli 39 tuhatta avoimesti saatavilla olevaa ohjelmistoprojektia, l\u00e4hes 13 miljoonaa kehitysteht\u00e4v\u00e4\u00e4 ja yli 1.5 miljoonaa virheraporttia. Replikaatiotutkimuksessa laajempi opetus ja testausdata tuottivat hieman alkuper\u00e4ist\u00e4 tutkimusta heikommat tulokset, mutta uudet havainnot kuitenkin vahvistivat alkuper\u00e4isi\u00e4 huomioita. Virheraporttien sulkeutumisajan ennustamisen huomattiin olevat haastavampi teht\u00e4v\u00e4 kuin yleisempi kehitysteht\u00e4v\u00e4n valmistumisajan arviointi, ja menetelm\u00e4\u00e4 voisi kehitt\u00e4\u00e4 tutkimalla luokittimen kannalta hy\u00f6dyllisimpi\u00e4 muuttujia. Tulosten perusteella n\u00e4ytt\u00e4isi silt\u00e4, ett\u00e4 teko\u00e4lyn sovellettavuus yksitt\u00e4isi\u00e4 virheraportteja tarkastellessa on viel\u00e4 heikkoa, mutta siit\u00e4 voi olla hy\u00f6ty\u00e4 suuria tietom\u00e4\u00e4ri\u00e4 k\u00e4sitelt\u00e4ess\u00e4.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Estimating the resolution time of software defects has usually been done based on expert knowledge. Automatic methods to predict the resolution time has been done mostly by focusing on a few software projects. In this study, a replication of a previous study about predicting the issue resolution time of software projects with machine learning methods was performed, and the suitability of the method to predict the resolution time of defect reports was explored. Random Forest classification was the implemented machine learning method. The data set consisted of over 39 thousand publicly available software projects, almost 13 million issues and over 1.5 million defect reports. Larger data set of the replication produced slightly weaker results compared to the original paper, but new observations verified the points of the original study. Predicting the resolution time of defect reports turned out to be a harder task than the more general task of predicting resolution time of an issue. The method could be improved by studying the most useful features for the classifier. On the basis of the results, it would seem that the applicability of artificial intelligence when inspecting isolated defect reports is poor, but it could be useful when handling large data collections.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Miia Hakanen (mihakane@jyu.fi) on 2022-02-28T07:09:27Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2022-02-28T07:09:27Z (GMT). No. of bitstreams: 0\n Previous issue date: 2022", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "70", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.format.mimetype", "value": "application/pdf", "language": null, "element": "format", "qualifier": "mimetype", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.subject.other", "value": "ohjelmistovirhe", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "virheraportti", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.title", "value": "Avoimen l\u00e4hdekoodin projektien kehitysteht\u00e4vien valmistumisajan arviointi koneoppimismenetelmin", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "master thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202202281702", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Pro gradu -tutkielma", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Master\u2019s thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietotekniikka", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Mathematical Information Technology", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_bdcc", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "masterThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "602", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmistokehitys", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "avoin l\u00e4hdekoodi", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "koneoppiminen", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "tiedonlouhinta", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.format.content", "value": "fulltext", "language": null, "element": "format", "qualifier": "content", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}, {"key": "dc.type.okm", "value": "G2", "language": null, "element": "type", "qualifier": "okm", "schema": "dc"}]
id jyx.123456789_79975
language fin
last_indexed 2025-02-18T10:56:21Z
main_date 2022-01-01T00:00:00Z
main_date_str 2022
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/2726cd96-d3ce-4e73-8ec6-15f01c79d56b\/download","text":"URN:NBN:fi:jyu-202202281702.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2022
record_format qdc
source_str_mv jyx
spellingShingle Holopainen, Lauri Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin ohjelmistovirhe virheraportti Tietotekniikka Mathematical Information Technology 602 ohjelmistokehitys avoin lähdekoodi koneoppiminen tiedonlouhinta
title Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_full Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_fullStr Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_full_unstemmed Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_short Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_sort avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
title_txtP Avoimen lähdekoodin projektien kehitystehtävien valmistumisajan arviointi koneoppimismenetelmin
topic ohjelmistovirhe virheraportti Tietotekniikka Mathematical Information Technology 602 ohjelmistokehitys avoin lähdekoodi koneoppiminen tiedonlouhinta
topic_facet 602 Mathematical Information Technology Tietotekniikka avoin lähdekoodi koneoppiminen ohjelmistokehitys ohjelmistovirhe tiedonlouhinta virheraportti
url https://jyx.jyu.fi/handle/123456789/79975 http://www.urn.fi/URN:NBN:fi:jyu-202202281702
work_keys_str_mv AT holopainenlauri avoimenlähdekoodinprojektienkehitystehtävienvalmistumisajanarviointikoneoppimism