2 research outputs found

    Web-sovellusten modernisointi yhden sivun sovelluksiksi arkkitehtuurinäkökulmasta

    Get PDF
    Perinteiset web-sovellukset ovat rakenteeltaan monen sivun sovelluksia, joissa palvelin vastaa asiakkaan tekemiin palvelinpyytöihin kokonaisilla HTML-sivuilla. Tämän seurauksena koko käyttöliittymä on kerralla päivitettävä, jotta uusi sivu voidaan esittää käyttäjälle. Web-sovellusten sovellusalueiden laajentuessa ja toiminnallisuuden monimutkaistuessa monen sivun sovellusten toimintaperiaate alkoi kuitenkin aiheuttaa haasteita. Jatkuva yhteydenpito palvelimeen kokonaisten web-sivujen siirtämiseksi hidastaa sovelluksen toimintaa ja heikentää käyttökokemusta. Ratkaisuna kohdattuihin haasteisiin ovat syntyneet yhden sivun sovellukset. Yhden sivun sovelluksissa palvelimen palauttama sisältö muodostuu esimerkiksi HTML-sivun osasta tai JSON-muotoisesta datasta kokonaisten HTML-sivujen sijaan. Asiakaskomponentissa suoritettava JavaScript-koodi vastaa vastaanotetun datan asettamisesta oikeaan kohtaan web-sivua. Tämä mahdollistaa sivujen osittaisen päivittämisen, jolloin koko käyttöliittymää ei ole tarpeen ladata uudelleen. Nykyaikaisten web-sovellusten kasvaneet vaatimukset aiheuttavat tarpeen vanhentuneiden monen sivun sovellusten modernisoimiseksi. Modernisoinnilla viitataan kaikkeen sellaiseen toimintaan, jossa alkuperäinen sovellus pyritään muuntamaan kohdesovellukseksi muuttamatta merkittävästi sovelluksen toiminnallisuutta. Tässä diplomityössä tarkastellaan arkkitehtuurimuutoksia modernisointiprosessissa, jossa vanhentunut monen sivun sovellus muunnetaan yhden sivun sovellukseksi. Tarkoituksena on selvittää millaisia korkean tason muutoksia sovelluksen rakenteessa ja komponenttien vastuunjaossa ilmenee. Työ toteutettiin kirjallisuusselvityksenä verkkomateriaaleja, teknisiä dokumentaatioita, kirjoja ja tieteellisistä tietokannoista haettuja tutkimusartikkeleita hyödyntäen. Modernisointimenetelmien ja muun soveltuvan aineiston tarkastelun pohjalta voidaan tunnistaa useita modernisointiprosessissa ilmeneviä arkkitehtuurimuutoksia. Merkittävimmät muutokset ovat asiakaskomponentissa suoritettavan sovelluslogiikan määrän kasvaminen, tapahtumapohjaisuuden korostuminen asiakkaan toiminnassa, sovelluksen tilanhallinnan monimutkaistuminen ja web-sivujen kokoamisen siirtyminen palvelimelta asiakkaalle
    corecore