Analysis of open-source development activities in GitHub repositories
Kaatranen, Thomas (2024)
Diplomityö
Kaatranen, Thomas
2024
School of Engineering Science, Tietotekniikka
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2024050727233
https://urn.fi/URN:NBN:fi-fe2024050727233
Tiivistelmä
This master’s thesis explores the different activities and contributing efforts that happen in open source GitHub repositories by conducting a data mining process on both repositories and developers. While previous research has conducted similar studies it is important to examine the current state of open-source activities as the open source software model keeps gaining more attraction. The research in this study utilizes GitHub’s REST API to acquire developer generated events from the open source repositories. Using these events can the activities and contributing efforts be analysed and understood.
The results highlight a distribution between coding and collaborative activities, where the majority of events lean more towards coding related activities. Open source repositories also include varying developers which are distinguishable by their specific development activities. These findings contribute to the ongoing research on open source software development by validating previous findings while also offering new insights. While the research may only represent a small sample of activities due to time constraints and the functionality of the API, future works can focus on enhancing the results by analysing a greater set of data. Tämä diplomityö tutkii avoimen lähdekoodin aktiviteetteja GitHub-repositorioissa suorittamalla tiedon louhinta menetelmää sekä repositorioille että niissä oleville kehittäjille. Vaikka aiemmat työt ovat tehneet samankaltaisia tutkimuksia, on tärkeää tarkastella avoimen lähdekoodin toimintojen nykytilaa, koska avoimen lähdekoodin ohjelmistomalli on jatkuvassa kasvussa. Tämän diplomityön tutkimuksessa hyödynnetään GitHubin REST API:a, jotta tietoa voidaan hankkia avoimen lähdekoodin repositorioista. Hyödyntämällä kerättyä tietoa voidaan avoimen lähdekoodin erilaisia aktiviteettejä ja toimintoja analysoida ja ymmärtää paremmin.
Tutkimuksen tulokset esittävät koodaamisen ja yhteistyö aktiviteettien välillä olevaa jakaumaa, missä suurin osa tapahtumista kallistuu enemmän koodaamiseen liittyviin toimintoihin. Avoimen lähdekoodin repositoriot sisältävät myös erilaisia kehittäjiä, jotka erottuvat toisistaan tietynlaisten aktiviteettien perusteella. Nämä löydökset edistävät avoimen lähdekoodin tutkimusaluetta vahvistaen aiempia tuloksia ja tarjoten uusia oivalluksia. Vaikka tutkimus saattaa edustaa vain tiettyä näytettä aktiviteeteistä aikarajoitteiden ja API:n toiminnallisuuden vuoksi, tulevaisuuden työt voivat keskittyä tulosten parantamiseen analysoimalla suurempaa aineistoa.
The results highlight a distribution between coding and collaborative activities, where the majority of events lean more towards coding related activities. Open source repositories also include varying developers which are distinguishable by their specific development activities. These findings contribute to the ongoing research on open source software development by validating previous findings while also offering new insights. While the research may only represent a small sample of activities due to time constraints and the functionality of the API, future works can focus on enhancing the results by analysing a greater set of data.
Tutkimuksen tulokset esittävät koodaamisen ja yhteistyö aktiviteettien välillä olevaa jakaumaa, missä suurin osa tapahtumista kallistuu enemmän koodaamiseen liittyviin toimintoihin. Avoimen lähdekoodin repositoriot sisältävät myös erilaisia kehittäjiä, jotka erottuvat toisistaan tietynlaisten aktiviteettien perusteella. Nämä löydökset edistävät avoimen lähdekoodin tutkimusaluetta vahvistaen aiempia tuloksia ja tarjoten uusia oivalluksia. Vaikka tutkimus saattaa edustaa vain tiettyä näytettä aktiviteeteistä aikarajoitteiden ja API:n toiminnallisuuden vuoksi, tulevaisuuden työt voivat keskittyä tulosten parantamiseen analysoimalla suurempaa aineistoa.
