Legacy-ohjelmiston modernisointi
Poels, Heidi (2022)
Poels, Heidi
2022
Tietojenkäsittelytieteiden kandidaattiohjelma - Bachelor's Programme in Computer Sciences
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ä
2022-12-10
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202212088980
https://urn.fi/URN:NBN:fi:tuni-202212088980
Tiivistelmä
Tänä päivänä suurimmassa osassa organisaatioita on käytössä organisaation toiminnan kannalta tärkeä ohjelmisto. Jos organisaatio on perustettu vuosikymmeniä sitten, ohjelmisto on jo ikääntynyt ja sisältää tarpeettomia osia. Digitalisaation myötä ohjelmistojen määrän on kasvanut räjähdysmäisesti, ja ohjelmiston ylläpito on tärkeämpää kuin koskaan. Legacy-ohjelmisto on vanhahko ohjelmisto, joka ei enää suoriudu tarkoitetusta tehtävästä toivotulla tavalla. Legacy-ohjelmiston tunnusmerkkejä ovat ikä, laajuus ja hitaus. Iältään legacy-ohjelmisto on 20–30 vuotta vanha, ja koodikannasta osa koodista on jo poistunut käytöstä. Toinen tunnistava tekijä on koodikannan laajuus. Laajuuteen vaikuttaa esimerkiksi vanhentunut koodi, jota ei olla poistettu koodikannasta. Viimeisenä tunnusmerkkinä on legacy-ohjelmiston hitaus. Koska koodikanta on laaja ja ylimääräistä koodia on paljon, ohjelmiston käyttö hidastuu.
Tutkielma on kirjallisuuskatsaus ja tutkin legacy-ohjelmiston tunnistavia tekijöitä, sekä miten legacy-ohjelmistoa voi modernisoida. Tutkimuskysymykseni on ”Miten legacy-ohjelmisto tunnistetaan ja modernisoidaan?” Tutkielmassa käytetty aineisto on haettu Andor-tietokannasta ja ScienceDirect-tietokannasta. Mukana on myös muutama ei-tieteellinen lähde terminologian selittämistä varten.
Lehman kirjoitti 1990-luvulla kahdeksan ohjelmiston evoluutioon liittyvää sääntöä. Sääntöjen avulla ohjelmiston parissa työskentelevä voi tunnistaa ohjelmiston käyttäytymistä, ja miten evoluutio näyttäytyy ohjelmistossa. Nämä säännöt ovat nykypäivänäkin ajan-kohtaisia. Useat työn lähteistä viittaavat Lehmanin ohjelmiston evoluution sääntöihin. Lehmanin sääntöjen perusteella todetaan ohjelmiston olevan jatkuvasti muuttuva entiteetti. Ohjelmistoa tulee modernisoida sen elinkaaren aikana niin käyttäjätyytyväisyyden kuin ylläpidettävyyden kannalta. Legacy-ohjelmistoa ei myöskään voi poistaa, koska legacy-ohjelmistossa on usein liiketoiminnan kannalta tärkeää tietoa ja logiikkaa. Ilman kyseistä logiikkaa liiketoiminta ei toimi.
Legacy-ohjelmiston modernisointi on täten organisaatiolle tärkeä askel. Legacy-ohjelmiston modernisointi tapahtuu valitsemalla organisaatiolle ja kehitystiimille sopivat menetelmät. Tämän tutkielman perusteella suosittelen koodin refaktorointia ja ketterän työtavan omaksumista organisaatiossa. Tutkielma esittelee kaikkiaan neljä menetelmää, joista toimivin menetelmä saadaan yhdistelemällä kahta tai useampaa menetelmää organisaatiolle sopivaksi.
Tutkielma on kirjallisuuskatsaus ja tutkin legacy-ohjelmiston tunnistavia tekijöitä, sekä miten legacy-ohjelmistoa voi modernisoida. Tutkimuskysymykseni on ”Miten legacy-ohjelmisto tunnistetaan ja modernisoidaan?” Tutkielmassa käytetty aineisto on haettu Andor-tietokannasta ja ScienceDirect-tietokannasta. Mukana on myös muutama ei-tieteellinen lähde terminologian selittämistä varten.
Lehman kirjoitti 1990-luvulla kahdeksan ohjelmiston evoluutioon liittyvää sääntöä. Sääntöjen avulla ohjelmiston parissa työskentelevä voi tunnistaa ohjelmiston käyttäytymistä, ja miten evoluutio näyttäytyy ohjelmistossa. Nämä säännöt ovat nykypäivänäkin ajan-kohtaisia. Useat työn lähteistä viittaavat Lehmanin ohjelmiston evoluution sääntöihin. Lehmanin sääntöjen perusteella todetaan ohjelmiston olevan jatkuvasti muuttuva entiteetti. Ohjelmistoa tulee modernisoida sen elinkaaren aikana niin käyttäjätyytyväisyyden kuin ylläpidettävyyden kannalta. Legacy-ohjelmistoa ei myöskään voi poistaa, koska legacy-ohjelmistossa on usein liiketoiminnan kannalta tärkeää tietoa ja logiikkaa. Ilman kyseistä logiikkaa liiketoiminta ei toimi.
Legacy-ohjelmiston modernisointi on täten organisaatiolle tärkeä askel. Legacy-ohjelmiston modernisointi tapahtuu valitsemalla organisaatiolle ja kehitystiimille sopivat menetelmät. Tämän tutkielman perusteella suosittelen koodin refaktorointia ja ketterän työtavan omaksumista organisaatiossa. Tutkielma esittelee kaikkiaan neljä menetelmää, joista toimivin menetelmä saadaan yhdistelemällä kahta tai useampaa menetelmää organisaatiolle sopivaksi.
Kokoelmat
- Kandidaatintutkielmat [10016]