Testivetoinen ohjelmistokehitys – vahvuudet, heikkoudet ja soveltuvuus ohjelmistoprojekteihin
Authors
Date
2011Access restrictions
This material has a restricted access due to copyright reasons.
Urtti, Ilkka
Testivetoinen ohjelmistokehitys – vahvuudet, heikkoudet ja soveltuvuus ohjel-mistoprojekteihin
Jyväskylä: Jyväskylän yliopisto, 2011, 41 s.
Tietojärjestelmätiede, kandidaatin tutkielma
Ohjaaja: Sakkinen, Markku
Testivetoinen ohjelmistokehitys (TDD) on ohjelmistojen kehittämismenetelmä, jonka perusajatuksena on automatisoidun yksikkötestin kirjoittaminen etukä-teen ennen sen testaaman toiminnallisuuden implementointia. Järjestys on päinvastainen perinteiseen vesiputousmallin kaltaiseen ohjelmistokehittämi-seen, jossa testaus on viimeisenä työvaiheena. Testivetoisen ohjelmistokehityk-sen hyödyistä verrattuna perinteiseen kehitysmalliin on esitetty lukuisia väittei-tä. Väitteiden pohjalla on kuitenkin vain vähän empiiristä tutkimustietoa ja tut-kittujen väitteiden osalta tutkimustulokset ovat ristiriitaisia.
Arvioin tässä kandidaatintutkielmassani tehtyjen tutkimusten pohjalta tes-tivetoisen ohjelmistokehittämisen vahvuuksia, heikkouksia sekä soveltuvuutta ohjelmistoprojekteihin. Havaitsin vahvaa näyttöä siitä että TDD johtaa lisään-tyneeseen testaukseen sekä parantuneisiin testikattavuuksiin verrattuna perin-teiseen kehitysmalliin. Havaitsin kohtalaisen selkeää näyttöä ohjelmistojen ul-koisen laadun paranemisesta TDD:n myötä verrattuna perinteiseen kehittä-mismalliin. Ohjelmistojen sisäisen laadun ja tuottavuuden paranemisen suhteen tehdyt tutkimukset olivat liian ristiriitaisia tulkinnan tekemiseksi.
Testivetoisen ohjelmistokehittämisen heikkouksiksi arvioin sen vaikean omaksumisen sekä TDD:n hyötyjä käsitelleiden tutkimuksien joukossa olleet täysin päinvastaisiin tuloksiin päätyneet tutkimukset.
Arvioin testivetoisen ohjelmistokehittämisen soveltuvan ohjelmoijille jotka ovat kokeneita, organisaatioille joilla on motivaatiota ja resursseja hoitaa TDD:hen siirtyminen hallitusti sekä ohjelmistoille joilta odotetaan korkeinta mahdollista ulkoista laatua.
...


Metadata
Show full item recordCollections
- Kandidaatintutkielmat [4186]
Related items
Showing items with similar title or keywords.
-
Asiakaskeskeinen ohjelmistokehitys
Venäläinen, Henri (2018)Tämän tutkimuksen tarkoituksena on luoda käsitys asiakaskeskeisyydestä osana ohjelmistokehitystä. Tutkimuksessa tarkastellaan myös käytänteitä asiakaskeskeisyyden ja ohjelmistokehityksen välillä. Asiakaskeskeisyyteen ... -
Työntekijän sitoutuminen ketterillä menetelmillä tehtyyn ohjelmistokehitykseen
Lehikoinen, Simone (2020)Tämä tutkielma on kirjallisuuskatsaus työntekijän sitoutumisesta ketterillä menetelmillä tehtyyn ohjelmistokehitykseen. Työntekijän sitoutumisen positiivinen merkitys organisaation liiketoimintaan ja tulokseen on huomattu ... -
Ohjelmistokehityksen ketteryys ja sen mittaaminen
Kinnunen, Hanna (2015)Tutkielmassa pyritään luomaan yleiskuva ketteryydestä ohjelmistokehitykses-sä - sen määritelmästä, laajuudesta ja toteutumisesta. Tutkielmassa käydään läpi ketteryyteen liittyvää tutkimusta pyrkien löytämään yleisesti ... -
Ketterät kehitysmenetelmät suurissa projekteissa
Nisula, Joni (2020)Tässä tutkielmassa pyritään kartoittamaan suurten projektien ketterien kehitysmenetelmien toimivuutta ja vertailemaan erilaisten mallien, kuten Scaled Agile Framework(SAFe), large-scale Scrum (LeSS), disciplined agile ... -
Behaviour-driven development mobiiliohjelmistojen kehityksen tukena
Hynninen, Samppa (2014)Lähivuosien aikana älypuhelinten yleistyminen on avannut mahdol- lisuuksia aivan uusille ohjelmistomarkkinoille. Samaan aikaan mobiilisovellusten yleistymisen kanssa myös ohjelmistokehityksen menetelmät ovat muuttuneet, ...