Perinteisen ja ketterän ohjelmistokehityksen väliset erot ohjelmistotuotannossa
Nurminen, Niklas (2020)
Nurminen, Niklas
2020
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2020-12-11
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202012118763
https://urn.fi/URN:NBN:fi:tuni-202012118763
Tiivistelmä
Ohjelmistoja käytetään lähes jokaisessa tietoteknisessä laitteessa tänä päivänä. Tämä on johtanut erinäisiin ajatus- ja toimintamalleihin ohjelmistotuotannossa. Ohjelmistotuotanto pitää sisällään ohjelmistokehityksen, joka voidaan jakaa kahteen eri ryhmään: perinteiseen ja ketterään. Päätutkimuskysymys on selvittää näiden kahden välisiä eroja tutkimalla niitä eri näkökulmista. Alatutkimuskysymyksessä selvitetään, miten organisaatiot voivat suorittaa migraation perinteisestä ketterään ohjelmistokehitykseen.
Tutkimus suoritettiin systemaattisena kirjallisuuskatsauksena. Tutkimuskysymyksiin lähteet valikoituvat systemaattisesti neljästä eri tietokannasta. Lähteiden tuli käsitellä perinteisen ja ketterän ohjelmistokehityksen eroavaisuuksia tai migraatiota. Muut lähteet etsittiin normaalisti eri tietokannoista avainsanojen avulla. Lähes kaikki lähteet olivat tieteellisiä artikkeleita, kirjoja tai muita kirjallisuuslähteitä.
Tutkimuksen tulokseksi saatiin, että perinteiset ja ketterät ohjelmistokehitysmenetelmät eroavat toisistaan niin prosessi- kuin organisaatiotasolla. Perinteinen ohjelmistokehitys omaa jäykän rakenteen, jossa muutoksille ei ole tilaa. Ne etenevät suoraviivaisesti eli lineaarisesti alusta loppuun ennalta määrätyllä tavalla. Tärkeintä on kattava vaatimusmäärittely ja jatkuva dokumentointi. Ketterä ohjelmistokehitys on puolestaan joustava rakenne, mikä on tärkeää nykypäivän dynaamisessa toimintaympäristössä. Se pohjautuu enemmän yhteistyöhön ja ihmisiin kuin prosesseihin ja menetelmiin. Ketterät menetelmät perustuvat iteraatioihin, joissa uusia versioita tuotetaan lyhyellä aikavälillä useasti. Perinteiset menetelmät taas useasti perustuvat yhteen pitkään iteraatioon.
Migraatio perinteisestä ketterään ohjelmistokehitykseen muuttaa organisaatiorakennetta. Organisaation tulee oppia luottamaan uusiin työkaluihin ja menetelmiin. Sen lisäksi työntekijöiden jokapäiväinen toiminta muuttuu enemmän yhteistyölähtöiseksi ja vastuullisemmaksi, koska päätöksiä ei enää laadi vain projektinjohtaja. Toisin sanoen migraatio vaatii organisaatiolta avoimuutta ottaa vastaan näitä muutoksia. Kaikkia ketterien menetelmien työkaluja ja menetelmiä ei ole tarkoitus implementoida heti käyttöön vaan pikemminkin kokeilla, mitkä sopivat organisaatiolle, ja tätä kautta mahdollisesti ottaa käyttöön.
Tutkimus suoritettiin systemaattisena kirjallisuuskatsauksena. Tutkimuskysymyksiin lähteet valikoituvat systemaattisesti neljästä eri tietokannasta. Lähteiden tuli käsitellä perinteisen ja ketterän ohjelmistokehityksen eroavaisuuksia tai migraatiota. Muut lähteet etsittiin normaalisti eri tietokannoista avainsanojen avulla. Lähes kaikki lähteet olivat tieteellisiä artikkeleita, kirjoja tai muita kirjallisuuslähteitä.
Tutkimuksen tulokseksi saatiin, että perinteiset ja ketterät ohjelmistokehitysmenetelmät eroavat toisistaan niin prosessi- kuin organisaatiotasolla. Perinteinen ohjelmistokehitys omaa jäykän rakenteen, jossa muutoksille ei ole tilaa. Ne etenevät suoraviivaisesti eli lineaarisesti alusta loppuun ennalta määrätyllä tavalla. Tärkeintä on kattava vaatimusmäärittely ja jatkuva dokumentointi. Ketterä ohjelmistokehitys on puolestaan joustava rakenne, mikä on tärkeää nykypäivän dynaamisessa toimintaympäristössä. Se pohjautuu enemmän yhteistyöhön ja ihmisiin kuin prosesseihin ja menetelmiin. Ketterät menetelmät perustuvat iteraatioihin, joissa uusia versioita tuotetaan lyhyellä aikavälillä useasti. Perinteiset menetelmät taas useasti perustuvat yhteen pitkään iteraatioon.
Migraatio perinteisestä ketterään ohjelmistokehitykseen muuttaa organisaatiorakennetta. Organisaation tulee oppia luottamaan uusiin työkaluihin ja menetelmiin. Sen lisäksi työntekijöiden jokapäiväinen toiminta muuttuu enemmän yhteistyölähtöiseksi ja vastuullisemmaksi, koska päätöksiä ei enää laadi vain projektinjohtaja. Toisin sanoen migraatio vaatii organisaatiolta avoimuutta ottaa vastaan näitä muutoksia. Kaikkia ketterien menetelmien työkaluja ja menetelmiä ei ole tarkoitus implementoida heti käyttöön vaan pikemminkin kokeilla, mitkä sopivat organisaatiolle, ja tätä kautta mahdollisesti ottaa käyttöön.
Kokoelmat
- Kandidaatintutkielmat [8253]