Laadunvalvonnan helpottaminen automatisoinnilla
Nieminen, Hannes (2014)
Nieminen, Hannes
Metropolia Ammattikorkeakoulu
2014
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2014053011076
https://urn.fi/URN:NBN:fi:amk-2014053011076
Tiivistelmä
Työ tehtiin rakennusalan suunnittelun ja konsultoinnin, sekä ohjelmistokehityksen asiantuntijayritykselle Granlund Oy:lle, jossa työskentelee yhteensä noin 500 talotekniikan sekä kiinteistö-, energia- ja ohjelmistoalan ammattilaista. Työn tarkoituksena oli parantaa vielä suurelta osalta kehitysvaiheessa olevan Granlund Designer -verkkosovelluksen lähdekoodin laadunvalvontaa ja ylläpitoa. Lisäksi helpottaa katselmointia sekä automatisoida mahdollisimman paljon näihin liittyviä toimenpiteitä.
Suurena osana työssä oli NDepend- ja ReSharper-laadunvalvontatyökalujen käyttöönotto. Työssä kartoitettiin, miten sovelluksen laadunvalvontaa voidaan parantaa, mitkä ovat kehitysryhmän toivomia muutoksia, mitä asioita sovellukset mahdollistavat, valittiin sovelluksista halutut toiminnallisuudet sekä tehtiin käyttöönotto asennuksia, asetuksien säätöä ja kehittäjien perehdyttämistä myöten. Työssä käsiteltiin myös laatua käsitteenä ja sen merkitystä sovelluskehityksessä. Lähdekoodin laadun saavuttamisessa tärkeitä asioita ovat ylläpidettävyys, joustavuus, tehokkuus, modulaarisuus, uudelleenkäytettävyys, luettavuus, testattavuus ja vikasietoisuus. Edellä mainitut sovellukset mahdollistavat paljon erilaisia mittareita, joilla voidaan automaattisesti seurata koodin laatua ja yhdenmukaisuutta, sekä valvoa, että asiat tehdään ennalta määriteltyjen ohjeiden ja sovelluskehitysryhmän käytäntöjen mukaisesti. Sovelluksilla voidaan myös automatisoida raportteja valittujen parametrien mukaisesti, joilla voidaan pitää yllä käsitystä sovelluksen tilasta helposti.
Työssä päästiin haluttuihin tavoitteisiin NDependin ja ReSharperin osalta ja lopputulokseen voidaan olla tyytyväisiä. Työkalut helpottavat huomattavasti virheiden havaitsemista ja laadun ylläpitämistä haluttujen sääntöjen mukaisesti. NDepend luo raportin aina kun muutoksia viedään versiohallintaan ja kääntöpalvelin tekee uuden käännöksen. ReSharper taas on jatkuvasti käytössä jokaisen kehittäjän työympäristössä antamassa korjausehdotuksia ja parantamassa kehitystyötä. Katselmoinnin osalta ei kuitenkaan päästy aivan toivottuun lopputulokseen käyttämällä NDepend tai ReSharper sovelluksia, mitä myös epäiltiin työtä aloitettaessa. Haluttiin kuitenkin määritellä, josko toiminnallisuuden olisi saanut näitä työkaluja käyttäen toteutettua. Lopuksi päätettiin, että tulevaisuudessa tutkitaan Review Assistant -sovellusta, jonka pitäisi soveltua tarkoitukseen hyvin.
Suurena osana työssä oli NDepend- ja ReSharper-laadunvalvontatyökalujen käyttöönotto. Työssä kartoitettiin, miten sovelluksen laadunvalvontaa voidaan parantaa, mitkä ovat kehitysryhmän toivomia muutoksia, mitä asioita sovellukset mahdollistavat, valittiin sovelluksista halutut toiminnallisuudet sekä tehtiin käyttöönotto asennuksia, asetuksien säätöä ja kehittäjien perehdyttämistä myöten. Työssä käsiteltiin myös laatua käsitteenä ja sen merkitystä sovelluskehityksessä. Lähdekoodin laadun saavuttamisessa tärkeitä asioita ovat ylläpidettävyys, joustavuus, tehokkuus, modulaarisuus, uudelleenkäytettävyys, luettavuus, testattavuus ja vikasietoisuus. Edellä mainitut sovellukset mahdollistavat paljon erilaisia mittareita, joilla voidaan automaattisesti seurata koodin laatua ja yhdenmukaisuutta, sekä valvoa, että asiat tehdään ennalta määriteltyjen ohjeiden ja sovelluskehitysryhmän käytäntöjen mukaisesti. Sovelluksilla voidaan myös automatisoida raportteja valittujen parametrien mukaisesti, joilla voidaan pitää yllä käsitystä sovelluksen tilasta helposti.
Työssä päästiin haluttuihin tavoitteisiin NDependin ja ReSharperin osalta ja lopputulokseen voidaan olla tyytyväisiä. Työkalut helpottavat huomattavasti virheiden havaitsemista ja laadun ylläpitämistä haluttujen sääntöjen mukaisesti. NDepend luo raportin aina kun muutoksia viedään versiohallintaan ja kääntöpalvelin tekee uuden käännöksen. ReSharper taas on jatkuvasti käytössä jokaisen kehittäjän työympäristössä antamassa korjausehdotuksia ja parantamassa kehitystyötä. Katselmoinnin osalta ei kuitenkaan päästy aivan toivottuun lopputulokseen käyttämällä NDepend tai ReSharper sovelluksia, mitä myös epäiltiin työtä aloitettaessa. Haluttiin kuitenkin määritellä, josko toiminnallisuuden olisi saanut näitä työkaluja käyttäen toteutettua. Lopuksi päätettiin, että tulevaisuudessa tutkitaan Review Assistant -sovellusta, jonka pitäisi soveltua tarkoitukseen hyvin.