Teknisen velan ja henkilöriippuvuuksien hallinta end-to-end-testauksella - Lappalainen, Aku (My University, 2025)
Monimutkaisten ja vanhojen ohjelmistojen ylläpidossa kehittäjien ymmärrys ohjelmiston toiminnasta on usein rajoittunut, koska alkuperäisiä dokumentaatioita voi olla puutteellisesti saatavilla ja koodin rakenne voi olla epäselvä tai huonosti dokumentoitu. Tämä voi tehdä virheiden jäljittämisestä ja järjestelmän laajentamisesta haasteellista. Tällöin yksittäisten kehittäjien syvällinen ymmärrys ohjelmiston toiminnasta voi olla hyvinkin merkityksellistä uusien ominaisuuksien tai ohjelmiston virheiden korjaamisen kannalta, sillä se mahdollistaa nopeamman ja tarkemman ongelmanratkaisun. Tutkimuksen tarkoituksena on selvittää tarkemmin mikä on teknisen velan ja henkilöriippuvuuksien suhde, sekä tutkia pystytäänkö kattavilla end-to-end-testeillä vaikuttamaan teknisen velan ja henkilöriippuvuuksien hallintaan. Tavoitteena on selvittää kirjallisuuslähteiden pohjalta, miten henkilöriippuvuus ja tekninen velka liittyvät toisiinsa, sekä kuinka kattavat end-to-end -testit vaikuttavat sovelluskehityksen teknisen velan ja henkilöriippuvuuksien hallintaan. Lisäksi tutkimus sisältää kyselytutkimuksen, jonka tarkoituksena on selvittää miten ohjelmistokehittäjät suhtautuvat end-to-end-testien käyttöön teknisen velan ja henkilöriippuvuuksien hallinnan välineenä. Tarkasteltaessa teknisen velan ja henkilöriippuvuuden suhdetta suurin uhkatekijä on kirjallisuuskatsauksen mukaan teknisen velan aiheuttama kontekstin monimutkaistuminen. Monimutkaistuminen taas aiheuttaa merkittäviä regressiohaasteita. E2e-testien pääasiallinen hyöty tässä yhteydessä liittyy niiden dokumentointiominaisuuksiin. Ne kuvaavat tiettyjä järjestelmän kannalta kriittisiä polkuja, mutta eivät ole suoranaisesti teknisen velan hallinnan työkalu. Myös kyselytutkimuksessa e2e-testien hyötynä pidettiin niiden dokumentointiominaisuuksia, mutta niiden roolia teknisen velan hallinnassa ei pidetä kovin merkittävänä. Sen sijaan niiden merkitys korostuu henkilöriippuvuuksien vähentämisessä.
Keywords: end-to-end, ohjelmistotestaus, tekninen velka, henkilöriippuvuus, legacy-järjestelmä