Portfolio-web-sovellus
Vuokila, Reetta (2024)
Vuokila, Reetta
2024
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-2024112229473
https://urn.fi/URN:NBN:fi:amk-2024112229473
Tiivistelmä
Tämän opinnäytetyön aihe valittiin kirjoittajan mielenkiinnosta web-teknologioita kohtaan. Työn aiheena oli opiskella yleisiä web-kehityksessä käytettyjä teknologioita ja käsitteitä. Tavoitteena oli, opitun avulla, suunnitella ja toteuttaa portfolio-web-sovellus henkilökohtaiseen käyttöön. Toisena tavoitteena oli myös käyttää mahdollisimman paljon suomenkielistä sanastoa, koska alalla käytetään monesti englanninkielisiä nimiä ja käsitteitä.
Opinnäytetyön tekeminen lähti liikkeelle esitutkimuksen tekemisestä, jossa pohdittiin tuotteen hyötyjä, haittoja ja alustavia vaatimuksia. Esitutkimuksen jälkeen mietittiin tarkat vaatimukset sovelluksen toimintaan, joihin myöhemmin palattiin tuloksia arvioidessa. Kappaleessa kolme pureuduttiin teoria puoleen teknologioista. Sovelluksesta tehtiin rautalankamallit ja mockupit, jotta pystyttäisiin suunnittelemaan mahdollisimman tarkasti, miltä sovelluksen tulisi näyttää käyttäjille. Toteutuksessa käytettäviksi teknologioiksi valikoitui palvelinpuolella Firebasen tietokannat Firestore ja Cloud Storage. Tietokantoihin tallennettiin kuvat ja tekstit englanniksi ja suomeksi. Selainpuolella nämä kuvat ja tekstit saatiin miellyttävämpään muotoon React-kirjastoa, HTML:ää ja CSS:ää hyödyntäen. Interaktiiviset osat saatiin toteutettua JavaScriptillä. Sovelluksen toimivuutta varmistettiin yksikkö-, integraatio- ja järjestelmätestauksella.
Tuloksena suunniteltiin ja tehtiin portfolio-web-sovellus nykyaikaisia teknologioita käyttäen. Sovelluksessa on Etu-, Tausta- ja Projektit-sivu. Etusivulla on animaatio, jonka päätyttyä näkyviin ilmestyy lyhyt esittelyteksti. Taustasivulla kävijä voi tarkastella koulutus- ja työhistoriaa. Projektit-sivulla voi nähdä oletusnäkymänä kolme uusinta projektia ja hakea hakusanoin tiettyjä projekteja. Sovellus vastasi kaikkia toiminnallisia vaatimuksia, mutta ei-toiminnallisista vaatimuksista yhtä ei täysin saavutettu. Testauksen olisi pitänyt olla kattavampaa, etenkin rajapintojen kanssa toimivien komponenttien osalta. Suomenkielinen sanasto karttui projektin aikana, mutta tuli myös huomattua, että suomenkielistä vastinetta ei ole vielä joillekin alan sanoille.
Jatkokehityksessä sovelluksesta voisi tehdä pienlaitteille paremmin skaalautuvan version. Toisena
mahdollisena ideana olisi palvelinpuolen uudelleenteko käyttäen muita teknologioita kuten .NET tai
Azure-pilvipalvelu.
Opinnäytetyön tekeminen lähti liikkeelle esitutkimuksen tekemisestä, jossa pohdittiin tuotteen hyötyjä, haittoja ja alustavia vaatimuksia. Esitutkimuksen jälkeen mietittiin tarkat vaatimukset sovelluksen toimintaan, joihin myöhemmin palattiin tuloksia arvioidessa. Kappaleessa kolme pureuduttiin teoria puoleen teknologioista. Sovelluksesta tehtiin rautalankamallit ja mockupit, jotta pystyttäisiin suunnittelemaan mahdollisimman tarkasti, miltä sovelluksen tulisi näyttää käyttäjille. Toteutuksessa käytettäviksi teknologioiksi valikoitui palvelinpuolella Firebasen tietokannat Firestore ja Cloud Storage. Tietokantoihin tallennettiin kuvat ja tekstit englanniksi ja suomeksi. Selainpuolella nämä kuvat ja tekstit saatiin miellyttävämpään muotoon React-kirjastoa, HTML:ää ja CSS:ää hyödyntäen. Interaktiiviset osat saatiin toteutettua JavaScriptillä. Sovelluksen toimivuutta varmistettiin yksikkö-, integraatio- ja järjestelmätestauksella.
Tuloksena suunniteltiin ja tehtiin portfolio-web-sovellus nykyaikaisia teknologioita käyttäen. Sovelluksessa on Etu-, Tausta- ja Projektit-sivu. Etusivulla on animaatio, jonka päätyttyä näkyviin ilmestyy lyhyt esittelyteksti. Taustasivulla kävijä voi tarkastella koulutus- ja työhistoriaa. Projektit-sivulla voi nähdä oletusnäkymänä kolme uusinta projektia ja hakea hakusanoin tiettyjä projekteja. Sovellus vastasi kaikkia toiminnallisia vaatimuksia, mutta ei-toiminnallisista vaatimuksista yhtä ei täysin saavutettu. Testauksen olisi pitänyt olla kattavampaa, etenkin rajapintojen kanssa toimivien komponenttien osalta. Suomenkielinen sanasto karttui projektin aikana, mutta tuli myös huomattua, että suomenkielistä vastinetta ei ole vielä joillekin alan sanoille.
Jatkokehityksessä sovelluksesta voisi tehdä pienlaitteille paremmin skaalautuvan version. Toisena
mahdollisena ideana olisi palvelinpuolen uudelleenteko käyttäen muita teknologioita kuten .NET tai
Azure-pilvipalvelu.