Skip to content

Projektin loppuraportti

1. JOHDANTO

Kevään ohjelmistoprojekti- ja testauskurssin TTOS0800 & TTOS0900 tavoitteena oli kehittää luonto- ja retkeilykohteita esittelevä Meijän metsät -karttapalvelu. Palvelun avulla yksityinen käyttäjä voi etsiä lähellä olevia retkikohteita- ja retkeilyreittejä, saada tietoa retkikohteista, säästä ja kohteiden ja reittien läheisyydessä sijaitsevista palveluista sekä raportoida maastossa havainnoista/epäkohdista.

2. TEHTÄVÄ, TAVOITE, TULOKSET

2.1. Yhteenveto projektin toteumasta

Projektin alkuvaiheet toteutuivat hyvin suunnitelman mukaan, etätöihin siirryttäessä aikataulu hieman venyi kommunikaation puutteen takia. Kommunikaatio kuitenkin parani loppua kohden ja pääsimme haluttuun lopputulokseen. Tavoitteena oli luoda helppokäyttöinen karttasovellus, jonka avulla voidaan etsiä lähellä olevia retkikohteita- ja retkeilyreittejä. Sovelluksemme vastaa melko hyvin tekemäämme suunnitelmaa. Olemme tyytyväisiä lopputulokseen, vaikka puuttumaan jäikin muutamia ominaisuuksia.

2.2. Projektin onnistuminen (suunnitelma vs. toteutuma)

prosessin rakenne:

Projekti käynnistyi 14.1.2020 ryhmien valinnalla. 16.1.2020 aloitettiin tekemään vaatimusmäärittelyä, jonka tekemistä jatkettiin joka torstai toisen etapin alkamiseen 24.2.2020 asti. Ensimmäinen etappi oli 21.2.2020, jolloin myös suoritettiin ensimmäinen katselmointi. Katselmoinnissa käytiin läpi projektin yleistilanetta. Toisen etapin alussa jaoimme ryhmän kesken eri vastuualueet ja valitsimme käytettävät teknologiat. Tämän jälkeen jatkoimme työskentelyä etänä koronan takia. Toisessa etapissa oli myös tilannekatsaus 23.3.2020, jossa käytiin läpi ryhmän yleinen tilanne, haasteet, edistyminen ja mitä ollaan saatu aikaan. Kolmas etappi alkoi 16.3.2020, johon sisältyi koekäyttötilaisuus, joka järjestettiin 9.4.2020. Koekäyttötilaisuudessa saimme tärkeää palautetta työstämme. Viimeinen eli neljäs etappi alkoi 13.4.2020, johon sisältyi lähdekoodin viimeistely, luovutustilaisuus, sekä seminaari ja loppuraporttien luovuttaminen 28.4.2020.

projektin sisäiset aikaresurssit:

toteutimme projektin alkuvaiheessa karkean tuntiarvion, johon tunteja kertyi 673. Projektin loppuvaiheessa tunteja oli kasassa kummiskin alle 400. Julkaisusuunnitelmassa ominaisuuksia julkaistiin kahden viikon välein, mutta toteutuksessa ensimmäisien ominaisuuksien julkaisemisessa meni paljon pidempään, sillä käytetyn teknologian opiskeluun menikin enemmän aikaa mitä oltiin suunniteltu. Projektin alkuvaiheessa tehtävät jakautuivat tasaisesti, mutta koodausvaiheen alkaessa ja projektijäsenen hävitessä työmäärä jakautui hieman epätasaisesti.

projektin ulkopuoliset resurssit: konsultaatiot, koulutus, katselmoinnit, testaukset jne.

Projektin ulkopuolisina resursseina toimivat toimeksiantaja Janne Laitinen, projektin ohjaaja ja konsultti Marko Rintamäki sekä erityisasiantuntijakonsultit Juho Pekki ja Teemu Kontio.

3. ONGELMAT JA NIIDEN RATKAISUT

3.1. Ongelmat suunnittelussa

Suunniteluvaiheessa oletimme, että saisimme valmiiksi paljon suuremman määrän ominaisuuksia, kuin mitä lopulta saimme aikaan. Emme osanneet varautua siihen kuinka paljon aikaa uusien työkalujen opetteluun kuluisi. Lisäksi yllätyksenä yksi tiimin jäsen jättäytyi pois projektista, joten työtä oli entistä enemmän jokaista henkilöä kohden, ja vaikkakin kriisinhallintasuunnitelmassa oli varattuna kohta tämän varalta, ei siinä mainitut toimenpiteet olleet tarpeeksi laajat tilanteen korjaamiseksi. Tämä johtunee siitä, että olimme asettaneet tiimiläisen katoamiselle alimman mahdollisen todennäköisyysluokituksen, josta huomaa kuinka pahasti aliarvioimme tapahtuneen yleisyyttä, ja todennäköisesti sen johdosta emme jaksaneet panostautua tarpeeksi hyvin sen vaatimiin ennakkotoimenpiteisiin.

3.2. Ongelmat toteutuksessa

Suunnittelimme suhteellisen hyvin projektin etenemisen, mutta mikäli olisimme pysyneet paremmin alkuperäisessä suunnitelmassa, tarkastalla ryhmänä viikottain projektin etenemistä, olisimme voineet välttyä paremmin tiimiläisen katoamisen tuottamista ongelmista, koska osasimme tiedostaa katoamisen vasta parin viikon katoajan hiljaiselon jälkeen. Tämän ja Reactin takia front-end kehitys jäi alussa paljon back-endiä jälkeen. Onneksi kuitenkin heti tilanteen tajuttuamme osasimme keskittää enemmän resursseja tämän ratkomiseen, ja Jaberin front-endille tuoman lisävoiman ansiosta tilanne tasaantui hyvin ajan kanssa.

3.3. Muut ongelmat tai toteutuneet riskit ja niiden käsittely

Koronan takia kaikki projektityöskentely siiryi etätyöskentelyyn. Kommunikaatio ryhmän välillä siirtyi discord kanavalle. Yhden ryhmän jäsenen tippuminen hidasti toimintaa paljon, joka näkyi myös lopputuloksessa valmiina olevista ominaisuuksista.

4. YHTEENVETO

4.1. Keskeiset opit

  • Ketterän kehityksen soveltaminen
  • React, nodejs, Rest API, Testlink, Robotframework ja yleisesti ohjelmistotestaus
  • Gitlab CI/CD
  • Ryhmätyö ja ryhmän välisen kommunikoinnin tärkeys
  • Etätyöskentely

4.2. Itsearviointi

4.2.1. Ryhmätyö

Tiimi työskenteli hyvin ryhmänä ja avoimen keskustelun kautta osasi siirtää resursseja niihin tehtäviin, jotka sitä eniten kaipasivat. Kriisejä oli korona, sekä ryhmäläisen katoaminen, mutta molemmista selvittiin. Koronasta huolimatta saimme kommunikoitua tarivttavat asiat netin välityksellä, ja pystyimme muokkaamaan työnkuvaamme niin, että kadonneen tiimiläisen työtehtävät jakautuivat tiimin ahkerimmille uurtajille. Hyödynsimme melko vähän ohjaajien tarjoamaa tukea, emmekä esittäneet hirveästi kysymyksiä asiakkaalle. Näissä petraus olisi varmasti näkynyt lopputuloksessa, vaikkakin emme juurikaan kohdanneet sellaisia esteitä jossa olisimme näitä resursseja kaivanneet.

4.2.2. Suunnitelmallisuus (projektityöskentely)

Suunnitteluvaiheen dokumentaatiolla saimme hyvän pohjan projektityöskentelylle, mutta toteutuksessa jäi parannettavan varaa. Olimme suunnitelleet viikottaisia palavereja, mutta etäopiskelun alettua emme siirtyneet suorittamaan niitä sähköisesti. Keräsimme paljon hyviä ideoita suunnitellessa, mutta projektin edettyä olisi ollut hyödyllistä palata niihin useammin, ja varmistua että pysymme niissä.

4.2.3. Vuorovaikutus

Yhteydenpito tiimin välillä tapahtui aluksi WhatsApp -ryhmässä, mutta etäopiskeluun siirtyessä vaihdoimme Discordiin. Sidosryhmiin pidimme yhteyttä aluksi viikottain JAMKin auditoriossa ja kurssin edetessä siirryimme Teams-kanavalle.

4.2.4. Asenne

Aiheena ohjelmistosuunnittelu kiinnosti ryhmää ja ryhmä oli valmis oppimaan uutta asiaa. Ryhmän motivaatio tippui hieman etäopiskeluun siirtyessä, mutta loppua kohden saimme taas otteen projektista. Ongelmat ratkoimme yhdessä tiimin Discord -kanavalla. Palautetta keräsimme Demotilaisuudessa ja teimme muutoksia niiden perusteella.

4.2.5. Tulos

Konkreettisena tuloksena on toimiva demo karttasovelluksesta. Aineettomana oppina etätyöskentely ja ryhmän välisen kommunikoinnin ja koordinaation tärkeys.

4.3. Arvosanaehdotukset

Mielestämme arvosanaksi työstä antaisimme 5. Työ jakautui ryhmän sisällä kohtuullisen tasaisesti. * Elmer teki Frontend koodauksen pääasiassa yksin Selman tiputtua pois ryhmästä. * Heikki ja Jaber hoiti Backendin ja tietokannan * Juho vastasi pääasiasa testauksesta ja CSC -servereistä

LÄHTEET

LIITTEET