Automated processing and gathering of data provided by the continuous integration of Nokia’s 5G uplane
Väntti, Sami (2018-06-04)
Väntti, Sami
S. Väntti
04.06.2018
© 2018 Sami Väntti. Tämä Kohde on tekijänoikeuden ja/tai lähioikeuksien suojaama. Voit käyttää Kohdetta käyttöösi sovellettavan tekijänoikeutta ja lähioikeuksia koskevan lainsäädännön sallimilla tavoilla. Muunlaista käyttöä varten tarvitset oikeudenhaltijoiden luvan.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:oulu-201806062484
https://urn.fi/URN:NBN:fi:oulu-201806062484
Tiivistelmä
The agile way of working has gained ground among developers and companies in software development. Large projects may have thousands of commits per day. Software updates and patches come more often and more frequently these days. A faster development pace demands tools and procedures that can handle nonstop automated software building and testing.
Continuous integration (CI) is a phase in software development that takes care of software testing, deployment and releasing. This thesis concentrates on the testing phase. CI executes thousands of tests on developers’ changes in source code every single day. Different tests provide valuable information about the code’s condition and performance. CI provided data should be presented in a way that makes it efficient for developers or CI personnel to go through.
This thesis introduces two different database solutions with visualization tools. This thesis also goes through how data from CI machinery is gathered and processed into databases. The system in this thesis is a distributed system that ingests data from CI and processes it. Ketterien kehitysmenetelmien käyttäminen ohjelmiston kehityksessä on yleistynyt kehittäjien ja yhtiöiden keskuudessa. Isoissa projekteissa saatetaan tehdä tuhansiakin muutoksia ja lisäyksiä koodiin päivässä. Ohjelmistoja päivitetään nykypäivänä useasti ja säännöllisesti. Nopea kehitystahti vaatii työkalut ja menetelmät, jotka pysyvät ohjelmistokehityksen vauhdissa mukana.
Jatkuva integraatio (continuous integration, CI) on ohjelmistokehityksen vaihe, joka kattaa ohjelmiston automaatio testauksen ja julkaisun. Tässä diplomityössä keskitytään CI:n testausvaiheeseen ja sen tuottaman datan käsittelyyn. CI ajaa tuhansia testejä kehittäjien tekemille koodimuutoksille. CI:n tekemät testit tarjoavat arvokasta dataa koodin tehokkuudesta. Kyseessä oleva data pitäisi kuitenkin saada esitettyä paremmin kuin nykyisellään, jotta kehittäjät pystyisivät tehokkaammin näkemään testien tulokset.
Tässä diplomityössä esitellään kaksi eri tietokantaratkaisua, joissa molemmissa on visualisointityökalut datan esittämistä varten. Tässä työssä käydään myös läpi miten data kerätään CI-koneistosta ja erilaiset ratkaisut, kuinka data voidaan prosessoida tietokantoihin. Diplomityötä varten rakennettu systeemi on hajautettu järjestelmä, joka kerää dataa CI:stä ja prosessoi sen.
Continuous integration (CI) is a phase in software development that takes care of software testing, deployment and releasing. This thesis concentrates on the testing phase. CI executes thousands of tests on developers’ changes in source code every single day. Different tests provide valuable information about the code’s condition and performance. CI provided data should be presented in a way that makes it efficient for developers or CI personnel to go through.
This thesis introduces two different database solutions with visualization tools. This thesis also goes through how data from CI machinery is gathered and processed into databases. The system in this thesis is a distributed system that ingests data from CI and processes it.
Jatkuva integraatio (continuous integration, CI) on ohjelmistokehityksen vaihe, joka kattaa ohjelmiston automaatio testauksen ja julkaisun. Tässä diplomityössä keskitytään CI:n testausvaiheeseen ja sen tuottaman datan käsittelyyn. CI ajaa tuhansia testejä kehittäjien tekemille koodimuutoksille. CI:n tekemät testit tarjoavat arvokasta dataa koodin tehokkuudesta. Kyseessä oleva data pitäisi kuitenkin saada esitettyä paremmin kuin nykyisellään, jotta kehittäjät pystyisivät tehokkaammin näkemään testien tulokset.
Tässä diplomityössä esitellään kaksi eri tietokantaratkaisua, joissa molemmissa on visualisointityökalut datan esittämistä varten. Tässä työssä käydään myös läpi miten data kerätään CI-koneistosta ja erilaiset ratkaisut, kuinka data voidaan prosessoida tietokantoihin. Diplomityötä varten rakennettu systeemi on hajautettu järjestelmä, joka kerää dataa CI:stä ja prosessoi sen.
Kokoelmat
- Avoin saatavuus [29998]