Päiväkirja
25.9.2020
Meidän kaikista ensimmäinen tapaaminen oli Valveella perjantai-iltapäivällä. Saimme käyttöömme tilavan toimistohuoneen, jossa tutustuimme toisiimme sekä tulevaan projektiin. Kaikilla oli mahtavia ideoita, ja saatiin näitäkin jo yhdisteltyä kokoelmiksi.
Kokoustimme kolmisen tuntia, jonka aikana mietimme muun muassa työtehtäviä ja sitä mihin kukanenkin suuntautuu projektin aikana. Hyviä ideoita olivat muun muassa se, ettemme käyttäisi liian kirkkaita värejä ja että myöskin värisokeudesta kärsivät pystyvät näkemään ne. Mieleen tuli myöskin suloinen ajatus norppamaskotista. Lisäksi tuli esiin ehdotus sellaisesta, että ilmastotekoja tehdessä sovellukseen kertyy pisteitä. Tästä muodostui peruspilari, jonka ympärille sovellusta lopulta alettiin rakentamaan.
3.10.2020
Lauantainen visiittimme Oulun ammattikorkeakoululle oli luentomainen tietopaketti ohjelmoinnista. Meitä ohjeistamassa oli Matti-ope OAMK:lta. Päivä kesti yhdestätoista kolmeen, ja sen aikana saatiin ammattilaisen opastuksella että itse tietoa hakien oppia kaikenlaista uutta.
Ohjelmointiprojektiin sisältyy monia erilaisia vaiheita, joilla pyritään takaamaan mahdollisimman hyvä, houkutteleva ja käytännöllinen lopputulos. Ensimmäinen vaiheista on vaatimusmäärittely, jossa määritellään tavoitellut vaatimukset. Tärkeä on myös suunnittelu, jossa koostuu kaikki oleellinen sovelluksen toimintaperiaatteesta sen ulkonäköön. Toteutusvaiheessa ohjelmoidaan meidän ilmastolaskurimme teknisesti valmiiksi, jonka jälkeen testataan vielä kaiken toimivuus. Tämän jälkeen sovellus on valmis käyttöönotettavaksi.
Hyvä ohjelmistoprojekti sisältää tavoitteet, resurssit ja aikataulun. Projekti voi olla hyvä, nopea tai halpa, ja näistä ominaisuuksista voidaan valita kaksi. Projektin aikana tulee pitää realistiset tavoitteet mielessä sekä noudattaa aikataulua, suunnitella työskentely hyvin ja pitää huolta työnjaosta sekä siitä, että jokainen tietää, mitä milloinkin tekee.
Sovelluksesta on saatava mahdollisimman helppokäyttöinen ja ymmärrettävä. Sovelluksen ei myöskään tulisi viedä liikaa akkua. Laskurin vastaukset tulee saada näytille mahdollisimman ymmärrettävässä muodossa, ja niitä voi vaikkapa verrata johonkin helposti ymmärrettävään asiaan. Helppokäyttöisyydellä tarkoitetaan käytettävyyttä.
Opimme, että sovellusta suunnitellessa tulee ottaa huomioon sen saatavuus. Sovellus tulee olla käyttövalmis jokaiselle huolimatta esimerkiksi näkö- tai kuulovammasta taikka vaikka ongelmista värinäön kanssa. Meillä on tavoitteena, että jokainen lukiolainen voi käyttää sovellusta mielekkäästi mahdollisista vaikeuksista huolimatta.
Tärkeää on ottaa myöskin kohderyhmä huomioon. Sovellus tulee olemaan pääasiassa lukiolaisille suunnattu, ja tämän tulee näkyä projektissa aina suunnittelusta valmiiseen tuotteeseen asti. On otettava huomioon, että kaikkia ei välttämättä itse ilmasto-osuus saata kiinnostaa, joten sovelluksen käyttökokemuksesta on tehtävä sen verran houkutteleva, että se koukuttaa käyttämään sitä.
8.10.2020
Tämän päivän työskentelypaja oli etänä Teamsin kautta. Kokoustimme illasta kaksi tuntia, ja sinä aikana suunniteltiin sovelluksen taustoja vielä vähän pidemmälle. Mietimme pienissä ryhmissä ryhmätöitä tehden muun muassa käyttäjän persoonaa, kilpailija-analyysia sekä jo itse ilmastotekoja.
Sovelluksen persoonalla tarkoitetaan sitä, millainen oletettu sovelluksen käyttäjä on. Meidän oletettu persoonamme on noin seitsemäntoista ikävuoden molemmin puolin oleva lukiolainen, joka haluaa tehdä pieniä ja matalan kynnyksen ilmastotekoja. Pyrimme sovellusta tehdessä siihen, että jokaiselle käyttäjälle löytyy mielekkäitä toimintavaihtoehtoja suuresta pieneen.
Kilpailija-analyysia tutkiessamme haimme netistä erilaisia ilmastolaskureita ja –sovelluksia. Kävi ilmi, että useat sovellukset käyttävät päävärinä sovelluksissaan vihreää, mikä sopikin hyvin ilmastoteemaan. Vihreä on myös miellyttävä väri silmälle, mutta sen sävyissä ja käytössä muutenkin saa olla tarkkana, sillä värisokeilla on usein vaikeuksia nähdä kyseistä väriä kunnolla. Useat laskurit myös ilmoittivat tuloksensa epäselvässä muodossa taikka olivat taulukkomaisia, joten omassa sovelluksessamme pyrimme esittämään tulokset mahdollisimman selkeässä ja miellyttävässä muodossa, jonka jokainen helposti ymmärtää.
Ilmastoteoista sovellukseemme puhuimme jo myöskin alustavasti, vaikka mitään ei vielä päättetykkään. Ideoita tullaan varmasti pyörittelemään mielessä koko projektin läpi. Hyviä esille tulleita keinoja olivat esimerkiksi jalankulun ja pyöräilyn suosiminen motorisoitujen ajoneuvojen tilalta, kierrätyksen aloittaminen sekä vaikkapa kasvispohjaisten ruokavaihtoehtojen lisääminen omaan ruokavalioon.
15.10.2020
Tänään oli Teamsissa OAMK:n Matin vetämä etätätyöpaja, jossa pohdittiin muun muassa käyttäjätarinaa sekä prototyyppiä sovellukselle. Käyttäjätarina tarkoittaa kuvausta kuvitteellisesta sovelluksen käyttäjästä, joka edustaa käyttäjäkunnan eri osa-alueita sekä suhtautuu sovelluksen taikka tuotteen eri osiin. Käyttäjätarinassa on kohdeyleisö, joka meidän projektissamme on lukiolaiset, jotta siitä on eniten hyötyä suunnittelussa. Prototyyppi taas on hieman kuin ensimmäinen, pienempi versio lopullisesta tuotoksesta. Sen tarkoituksena on projektin alkuvaiheilla antaa tärkeitä neuvoja ja näkökohtia yksinkertaisistakin asioista.
26.10.2020
Teamsin välityksellä priorisoitiin sovellukseen haluttavat ominaisuudet ja ilmastoteot lopulliseen muotoon ennen Oulun ammattikorkeakoulun opiskelijoiden kanssa aloitettavaa yhteistyötä.
Näihin ilmastotekoihin saamme laskentakaavat D-mat yritykseltä excel-taulukkona.
27.10.2020
Tänään oli Teamsissa koko porukan kick off, jossa kokoonnuimme ensimmäisen kerran kera kaikkien yhteistyökumppaneiden. Esittelimme itsemme ja ideamme, ja tunteroisen ajan juttelimme tulevasta työskentelystä. D-mat aikoo tehdä laskentakaavat ja Oulun ammattikorkeakoulun opiskelijat auttavat laskentakaavojen koodaamisessa. Mint Company auttaa meitä sovelluksen grafiikan teossa. Lähetämme heille luonnoksen sovelluksen prototyypistä, ja he tekevät tämän mukaan ehdotuksia grafiikasta.
Loka-marraskuun vaihde 2020
Lyhyehköjä kokouksia on ollut viikoittain erinäisiin asioihin liittyen osalle porukkaamme taikka kaikille. Ammattikorkeakoulun opiskelijoiden ja D-matin kanssa ollaan kokoustettu laskentakaavoihin liittyen. Näissä ollaan muun muassa keskusteltu ohjelmoinnista ja grafiikasta. Meidän tiimin Max ja Jaakko koodasivat sovelluksen etusivun ja valikon.
Joulukuu 2020
Sovellus oli tarkoitus saada 17.12 mennessä valmiiksi, mutta laskentakaavojen myöhästyminen viivästytti koko ohjelmointiprojektia. Ohjelmointi jää tiimimme harteille, kun ammattikorkeakoulun opiskelijoiden ohjelmointikurssi loppui. Onneksi Max ja Jaakko ovat eteviä koodareita ja aikovat koodata sovelluksen kahdestaan valmiiksi. Uudeksi deadlineksi sovellukselle asetettiin 14.2.2021.
Ohjelmointiurakasta 12.2.2021
Kuukausia kestänyt ohjelmointi urakka on nyt päättynyt. Sovelluksen ohjelmointi on vienyt yhteensä neljä kuukautta, mutta suuren osan siitä emme aktiivisesti ohjelmoineet sovellusta. Viimeiset kaksi viikkoa ovat olleet lähes päivittäistä ohjelmointia meidän molempien ohjelmoijien osalta, joka oli vaikeaa, koska meidän lukiomme arviointiviikko oli samoihin aikoihin, joka haittasi meidän kykyämme työskennellä projektin parissa. Kuitenkin saimme kaikki pakolliset ominaisuudet sovellukseen reilusti ennen projektin määräaikaa, joten pystyimme lisäämään sovellukseen mukavia, mutta vähemmän tärkeitä ominaisuuksia.
Itse ohjelmointi tapahtui käyttäen Ionic nimistä JavaScript-kehystä. Ionic on tapa käyttää JavaScriptiä tekemään sovelluksia puhelimelle, vaikka sitä yleensä käytetään web-ohjelmointiin. Meillä oli projektin alkaessa pelkästään alkeellinen ymmärrys web-ohjelmointiin, joten modernien työkalujen käyttö osoittautui aluksi vaikeaksi. Kuitenkin netistä löytyvien oppaiden ja omien ohjelmointitaustojen myötä saimme hyvän ymmärryksen kehitysympäristöstä.
Kommunikaatio oli avainroolissa ohjelmoinnin aikana. Oli tärkeää, että emme alkaneet molemmat työskentelemään saman asian parissa. Pidimme usein pitkiä videopuheluita, joissa päätimme, mitä me molemmat tulemme tekemään tulevina päivinä. Se oli hyödyllistä, kun pystyimme pikaisesti lähettää toisillemme viestiä esimerkiksi, jos tuli pikainen kysymys liittyen sovelluksen ulkoasuun liittyen tai uusi bugi ilmaantui toisen kirjoittamassa koodissa.
Kun yhteistyömme OAMK-tiimin kanssa päättyi, he jättivät meille suuren määrän hajanaista ja vaikea lukuista koodia. Se oli meidän hommamme kerätä nämä kaikki erilliset tiedostot ja kasata ne yksittäiseen toimivaan sovellukseen.
Me kaikki olemme tyytyväisiä lopputulokseemme ja aloitamme prosessin saada sovelluksen eri jakelualustoille.
13.2.2021
Jossain vaiheessa ohjelmointivaihetta tultiin päätökseen, että sovellus julkaistaisiin kilpailun aikarajan jälkeen. Suunnitelmat kuitenkin muuttuivat yllättäen viime hetkinä. Päivää ennen aikarajaa Jaakko otti tehtäväkseen julkaista sovelluksen Play Kauppaan.
Sovelluksesta piti ensin tehdä androidilla käytettävä versio, jonka jälkeen sen voisi ladata Play Kauppaan. Paria työkalua tarvittiin. Capacitorin avulla Ionic-projekti siirrettiin Android Studioon, jossa sitä pystyttiin testaamaan ensimmäistä kertaa mobiilisovelluksen muodossa Android-emulaattorilla.
Android Studion avulla sovellus allekirjoitettiin ja ladattiin Google Play Consoleen .apk muodossa, josta se pystyttiin muutamien ongelmien ratkomisen jälkeen julkaisemaan Play Kauppaan. Kaikkien vaiheiden suorittamisessa meni melkein koko päivä, mutta työ saatiin onneksi valmiiksi ennen aikarajaa.
Sovellus on nyt ladattavissa puhelimeen nimellä "lukiolaisten ilmastolaskuri".