Implementations of DevSecOps Tools in WIMMA Lab, Case : WIMMA Lab 2019
Oksman, Hannu (2021)
Oksman, Hannu
2021
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021112120878
https://urn.fi/URN:NBN:fi:amk-2021112120878
Tiivistelmä
WIMMA Lab 2019 oli itseohjautuvuutta korostava projektiympäristö, joka simuloi ohjelmistokehitysyrityksiä mahdollisimman paljon. Hakeutuneet opiskelijat haastateltiin ja heistä valikoitiin sopiva joukko siten, että voitiin muodostaa neljä monialaista ja motivoitunutta virtuaaliyritystä. Virtuaaliyritykset saivat sisäisiltä ja ulkoisilta asiakkailta toimeksiantoina luoda sisältöä, kehittää ohjelmistoja, tutkia ja tehdä toteutuskelpoisuusselvityksiä.
Jokaisella virtuaaliyrityksellä oli useita jatkuvan integroinnin, -toimituksen ja -julkaisun putkia. Putkissa on erilaisia työkaluja, joilla prosessoidaan ohjelmiston julkaisua. Putki alkaa koodin lisäämisestä lähdekoodijärjestelmään ja päättyy siitä koostetun sekä testatun ohjelman julkaisuun tuotantoympäristöön. Ohjelmistokehityksen elinkaari jaettiin kymmeneen vaiheeseen ja putket kuvastavat näitä vaiheita. Tavoitteena oli tunnistaa miten eri vaiheet oli toteutettu virtuaaliyritysten putkissa.
Virtuaaliyritysten GitLab-projekteja analysoitiin, joista saatiin kuvaus toteutuksista. Näiden
GitLab-projektit koostuivat GitLab CI, GitLab Container Registry, GitLab Pages ja GitLab
Runners -palveluista sekä muista asetuksista. Projektit hyödynsivät myös useita kolmannen osapuolen alustoja ja työkaluja kuten Docker, Google Cloud Platform ja Robot Framework.
Ohjelmistokehityksen elinkaaren jokainen vaihe oli mukana projektien putkissa, joskin yhdessäkään yksittäisessä putkessa ei ollut työkalutoteutusta jokaisessa vaiheissa. Yleisesti ottaen jotkut vaiheet oli toteutettu hyvin kevyesti, kuten turvallisuus-, monitorointi- ja suojausvaiheet.
WIMMA Lab 2019 oli korkeasti kehittynyt ohjelmistokehitysympäristö, joka antoi opiskelijoille työelämässä kysyttyjä ja tarvittavia taitoja. WIMMA Lab 2019 was a highly autonomous software development project environment and simulated as closely as possible how work is done at the software development companies. Students who applied were interviewed and were chosen to have four multidisciplinary and motivated virtual companies. The virtual companies had varying internal and external tasks to create content, develop software, research, and create proof on concepts.
Each virtual company had multiple continuous integration, delivery, and deployment pipelines with various tools. A pipeline represents a process from committing code to a source code repository to deploying the built and tested the application to a production environment. The software development lifecycle was divided into ten phases, and the pipelines were contrasted to these phases. The goal was to identify how each phase was implemented, or not, in the virtual companies' pipelines.
The virtual companies' GitLab projects were analyzed to gather a picture of the implementations. GitLab projects consisted of GitLab CI, GitLab Container Registry, GitLab Pages, GitLab Runners, and various settings. The projects also utilized multiple third-party platforms and tools such as Docker, Google Cloud Platform, and Robot Framework.
Each of the software development lifecycle phases was covered by the projects, though no single pipeline incorporated a tool(s) for every phase. Some phases were implemented very lightly, such as security, monitor, and protect phases.
WIMMA Lab 2019 can be considered a very advanced software development environment regarding automation, modern tooling usage, and providing in-demand skills to work life.
Jokaisella virtuaaliyrityksellä oli useita jatkuvan integroinnin, -toimituksen ja -julkaisun putkia. Putkissa on erilaisia työkaluja, joilla prosessoidaan ohjelmiston julkaisua. Putki alkaa koodin lisäämisestä lähdekoodijärjestelmään ja päättyy siitä koostetun sekä testatun ohjelman julkaisuun tuotantoympäristöön. Ohjelmistokehityksen elinkaari jaettiin kymmeneen vaiheeseen ja putket kuvastavat näitä vaiheita. Tavoitteena oli tunnistaa miten eri vaiheet oli toteutettu virtuaaliyritysten putkissa.
Virtuaaliyritysten GitLab-projekteja analysoitiin, joista saatiin kuvaus toteutuksista. Näiden
GitLab-projektit koostuivat GitLab CI, GitLab Container Registry, GitLab Pages ja GitLab
Runners -palveluista sekä muista asetuksista. Projektit hyödynsivät myös useita kolmannen osapuolen alustoja ja työkaluja kuten Docker, Google Cloud Platform ja Robot Framework.
Ohjelmistokehityksen elinkaaren jokainen vaihe oli mukana projektien putkissa, joskin yhdessäkään yksittäisessä putkessa ei ollut työkalutoteutusta jokaisessa vaiheissa. Yleisesti ottaen jotkut vaiheet oli toteutettu hyvin kevyesti, kuten turvallisuus-, monitorointi- ja suojausvaiheet.
WIMMA Lab 2019 oli korkeasti kehittynyt ohjelmistokehitysympäristö, joka antoi opiskelijoille työelämässä kysyttyjä ja tarvittavia taitoja.
Each virtual company had multiple continuous integration, delivery, and deployment pipelines with various tools. A pipeline represents a process from committing code to a source code repository to deploying the built and tested the application to a production environment. The software development lifecycle was divided into ten phases, and the pipelines were contrasted to these phases. The goal was to identify how each phase was implemented, or not, in the virtual companies' pipelines.
The virtual companies' GitLab projects were analyzed to gather a picture of the implementations. GitLab projects consisted of GitLab CI, GitLab Container Registry, GitLab Pages, GitLab Runners, and various settings. The projects also utilized multiple third-party platforms and tools such as Docker, Google Cloud Platform, and Robot Framework.
Each of the software development lifecycle phases was covered by the projects, though no single pipeline incorporated a tool(s) for every phase. Some phases were implemented very lightly, such as security, monitor, and protect phases.
WIMMA Lab 2019 can be considered a very advanced software development environment regarding automation, modern tooling usage, and providing in-demand skills to work life.