Usean verkkopalvelun yhteinen koodipohja
Pesu, Valtteri (2019)
Pesu, Valtteri
2019
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019112722804
https://urn.fi/URN:NBN:fi:amk-2019112722804
Tiivistelmä
Insinöörityössä oli tarkoituksena kehittää yritykselle koodipohja, jolla uudistetaan yrityksen olemassa olevia palveluita. Työn tarkoituksena oli toteuttaa usealle verkkopalvelulle yhtenäinen koodipohja, jota on helppo ylläpitää. Myös uusien palveluiden lisääminen haluttiin nopeasti toteutettavaksi. Työssä opittuja tekniikoita oli tarkoitus hyödyntää muissakin tulevissa projekteissa.
Koska uudistus koski koko palvelun toimintaa, insinöörityö rajattiin selainpuolen teknologioihin, joihin kuuluivat Vue-ohjelmistokehys ja Vue-suunnittelujärjestelmä. Näiden lisäksi keskityttiin siihen, mitkä asiat vaikuttavat koodipohjan ylläpidettävyyteen ja miten koodipohjaa näillä teknologioilla kehitettiin. Koodipohjaan kehitettiin modulaarinen rakenne, eli koodipohjassa oli palvelukohtaista koodia ja kaikkien palveluiden käytössä olevaa koodia. Vue-suunnittelujärjestelmää käytettiin yleisten Vue-komponenttien jakamiseen palveluun npm-pakettienhallinnan kautta, ja logiikka pidettiin selainpuolen koodipohjassa.
Uusien kokonaisuuksien toteutuksen aikana huomattiin monia asioita, joita pystyttiin parantamaan etenkin asioiden nimeämisissä sekä suunnittelujärjestelmän ja selainpuolen koodipohjan välisen kehittämisen välillä. Näihin ongelmiin saatiin paljon parannuksia aikaan erilaisilla skripteillä ja sääntöjen sopimisilla. Kun ensimmäinen palvelu oli melkein valmis, toteutettiin samaan koodipohjaan toinen palvelu, jonka aikana huomattiin lisää puutteita koodipohjan rakenteessa. Kuitenkin lopputuloksena ongelmista huolimatta saavutettiin järjestelmälle asetetut tavoitteet ja koodipohjaa voidaan hyödyntää muidenkin palveluiden uudistamiseen. Teknologioista opittiin paljon hyviä asioita, ja koodipohja saatiin helpommin ylläpidettäväksi selainpuolen koodipohjan edetessä.
Koska uudistus koski koko palvelun toimintaa, insinöörityö rajattiin selainpuolen teknologioihin, joihin kuuluivat Vue-ohjelmistokehys ja Vue-suunnittelujärjestelmä. Näiden lisäksi keskityttiin siihen, mitkä asiat vaikuttavat koodipohjan ylläpidettävyyteen ja miten koodipohjaa näillä teknologioilla kehitettiin. Koodipohjaan kehitettiin modulaarinen rakenne, eli koodipohjassa oli palvelukohtaista koodia ja kaikkien palveluiden käytössä olevaa koodia. Vue-suunnittelujärjestelmää käytettiin yleisten Vue-komponenttien jakamiseen palveluun npm-pakettienhallinnan kautta, ja logiikka pidettiin selainpuolen koodipohjassa.
Uusien kokonaisuuksien toteutuksen aikana huomattiin monia asioita, joita pystyttiin parantamaan etenkin asioiden nimeämisissä sekä suunnittelujärjestelmän ja selainpuolen koodipohjan välisen kehittämisen välillä. Näihin ongelmiin saatiin paljon parannuksia aikaan erilaisilla skripteillä ja sääntöjen sopimisilla. Kun ensimmäinen palvelu oli melkein valmis, toteutettiin samaan koodipohjaan toinen palvelu, jonka aikana huomattiin lisää puutteita koodipohjan rakenteessa. Kuitenkin lopputuloksena ongelmista huolimatta saavutettiin järjestelmälle asetetut tavoitteet ja koodipohjaa voidaan hyödyntää muidenkin palveluiden uudistamiseen. Teknologioista opittiin paljon hyviä asioita, ja koodipohja saatiin helpommin ylläpidettäväksi selainpuolen koodipohjan edetessä.