Ota yhteyttä

Työväen Sivistysliitto TSL Ry – Ääni Vapaudelle

Ääni vapaudelle mobiilisovellus

Syksyllä 2018 joukko aktiivisia kansalaisia lähti ajamaan muutosta suomalaiseen politiikkaan. Tavoitteena oli toteuttaa uudenlainen kampanjointimuoto, jossa yksilöiden kanssa käydyt keskustelut olivat pääosassa. Keskusteluiden tarkoituksena oli sitouttaa kansalaisia mukaan kampanjaan ja käyttämään äänioikeutensa.

Kampanjoinnin johtamisjärjestelmäksi valittiin NationBuilder. Se mahdollistaa suoran viestinnän rekisterissä oleville henkilöille, aktivoivien verkkosivujen toteutuksen sekä tukijoiden tekojen seurannan. Järjestelmä kuitenkin puuttuu mahdollisuus liittyä mukaan kansanliikkeeseen mobiililaitteen avulla.

Oddy Tech mobiilisovellus Ääni Vapaudelle splash

Oddy Tech ehdotti mobiilisovellusta

Oddy Tech ehdotti tarpeeseen ratkaisuksi mobiilisovellusta. Sovelluksen kautta olisi mahdollista viestiä suoraan käyttäjien kanssa, käyttäjät pystyisivät tekemään tukijahankintaa ja kaikki kampanjan tiedot voitaisiin koota johtamisjärjestelmään. Saadun tiedon avulla Vapaiden valtakunta -kampanjaa pystyttäisiin johtamaan suunnitellusti ja tavoitteellisesti. Lopputuloksena oli Android- ja iOs-järjestelmille luotu Ääni vapaudelle -sovellus.

”Yhteydenpito Oddy Tech:n kanssa oli toimivaa ja ripeää. Lopputuloksesta voimme olla kaikki ylpeitä – kyseessä on historian ensimmäinen suomalainen kampanjasovellus, joka toiminnallaan tukee vahvasti käytössä olevaa järjestämisen toimintamallia.” 

– Antti Mäki, Työväen Sivistysliitto TSL ry:n digitaalisten palvelujen vastaava

Ääni vapaudelle -sovellus toimi kentällä erinomaisesti ja palaute oli positiivista. Kun aiemmin on totuttu pyörittämään papereita, voidaan nyt todeta, että kampanjointia tuotiin aimo harppauksella nykyaikaan. Kampanjan aktiivit haastoivat yhteisöissään tukijoita mukaan kampanjaan ja sovelluksen kautta tiedot rekisteröityvät vaivatta käyttämäämme henkilörekisteriin.

Oddy Tech mobiilisovellus Ääni Vapaudelle lomake

Toteutuksen kulku ja tekninen kuvaus

Mobiilisovellus suunniteltiin ja toteutettiin Oddy Techin prosessien mukaisesti. Sovelluksella vastattiin kampanjan tarpeeseen, joten toteutuksen aikataulu oli tiukka. Tämän ei kuitenkaan annettu vesittää toteutuksen kestävää kehitysmallia, ketteriä menetelmiä eikä tietoturvallisuutta.

Asiakkaan puolelta hankkeeseen sitoutettiin projektivastaava, jolta saimme nopeasti vastauksia projektin edetessä. Alkuvalmisteluiden jälkeen sovellusta päästiin toteuttamaan ketterästi ja tehokkaasti, asiakkaan aktiivisen otteen ansiosta.

1. Toiminnallisuuksien kartoitus (Määrittelypalaveri)

Hanke aloitettiin määrittelypalaverilla, johon osallistui projektijohto molemmilta osapuolilta. Siinä määriteltiin tarvittavat ominaisuudet sekä niiden tarkoitukset. Käytämme määrittelypalavereissa hyväksi havaittua runkoa, jotta pääsemme samalle aaltopituudelle mahdollisimman tehokkaasti.

2. MVP vaatimusmäärittely (Palvelukuvaus)

Määrittelypalaverin jälkeen jokaisesta ominaisuudesta tehtiin palvelukuvaus, mistä kävi ilmi mitä tekniikoita tullaan käyttämään ja miten ominaisuudet tullaan toteuttamaan. Asiakas voi vapaasti vielä muuttaa tai lisätä MVP toteutukseen ominaisuuksia.

Toteutamme projektit aina ketterillä ohjelmistokehityksen menetelmillä. Tämä mahdollistaa ominaisuuksien ja toiminnallisuuksien lisäämisen myös projektin edetessä. Heti ensimmäisen virallisen julkaisun jälkeen saimme arvokasta käyttäjäpalautetta ja niihin pystyttiin reagoimaan nopeasti, keskeyttämättä sovittujen ominaisuuksien kehitystä.

3. Prototyyppi (Visuaalinen proto)

Mobiilisovelluksesta tehtiin palvelukuvauksen mukainen prototyyppi, joka toimi demottavana alustana asiakkaalle. Prototyyppi ei sisällä lopullisia toiminnallisuuksia, mutta kertoo mitä mistäkin nappulasta tapahtuu.

Prototyyppi tarjoaa molemmille osapuolille vielä paremman kuvan siitä, mitä ollaan tekemässä. Samalla päästään poistamaan mahdolliset väärinymmärrykset.

Ylläolevat vaiheet on kuvattu prosessissamme.

Oddy Tech suunnittelu, konsultointi ja prototypiointi

4. Tekninen toteutus

Prototyyppi hyväksyttiin ja käytiin vielä asiakkaan ja kehitystiimin kanssa yhteisesti läpi. Tämän jälkeen alkoi tekninen toteutus eli varsinainen koodaus.

5. Julkaisu

Ketterän ohjelmistokehityksen ansiosta kaikkia lopullisia ominaisuuksia ei ensimmäiseen 1.0 versioon edes haaveiltu. Ensimmäisessä versiossa sovelluskauppoihin julkaistiin vain tärkeimmät ja tarvittavat ominaisuudet. Muiden ominaisuuksien toteutusta jatkettiin taustalla. Mobiilisovellus liittyi kampanjaan, joten oli erittäin tärkeää saada ensimmäinen versio mahdollisimman nopeasti käyttöön.

Mobiilisovelluksesta tehtiin yhteensä 3 virallista versiojulkaisua, joista ensimmäinen tapahtui 6.5 viikkoa projektin kehitystyön aloituksesta.

Oddy Tech ketterä ohjelmistokehitys yhdessä asiakkaan kanssa
Oddy Tech mobiilisovellus Ääni Vapaudelle lomake

Tekninen kuvaus ratkaisusta

Prototyypin pohjalta alettiin alustamaan rinnakkain mobiilisovellusta sekä rajapintasiltaa.

Projekti toteutettiin hybridi mobiilisovelluksena. Tällöin yhdellä työllä (koodikannalla) saatiin sekä iOS (esim iPhone, iPad) versiot että Android versiot. Sovellus julkaistiin Googlen Play Store ja Applen App Store sovelluskauppoissa.

Hybridisovellus toteutettiin käyttäen React Native -ohjelmistokehystä, jolloin molemmat versiot saatiin toteutettua yhdellä koodilla. Toki näissä on aina omat haasteensa, sillä molemmat käyttöjärjestelmät ovat täysin erilaisia ja vaativat erilaiset asetukset sekä käytänteet.

Mobiilisovellus sisälsi mm. seuraavat ominaisuudet:

  • Rekisteröityminen
  • Tukijaksi liittyminen
  • Kirjautuminen ja salasanan palautus
  • Aikajana, johon kampanjan viestit tulivat
  • Sovellusviestit (push -viestit)
  • Tukijoiden kerääminen työpaikalla tai tapahtumassa
  • Yksittäisen tukijan lisääminen
  • Työelämäkysely
  • Soitto ominaisuus
  • Omien tietojen ja salasanan vaihto

Kuulostaako yksinkertaiselta? Sitähän se ei aivan ollut. Avasimme mitä kaikkea näiden ominaisuuksien tekeminen vaati.

Tietoturva oli erittäin tärkeä, kun käsiteltiin henkilötietoja. Henkilötietojen keräys toteutettiin nykyisen tietosuojalain mukaisesti. GDPR otettiin alusta asti huomioon, kuten kaikissa hankkeissamme. Perusidea on että tieto kulkee salattuna paikasta A paikkaan B ja tarvittaessa takaisin paikkaan A.

Uskallammekin avata teknisen ratkaisun hieman laajemmin kuin yleisesti, koska luotamme omiin ja käyttämiemme sovellusten tietoturvaratkaisuihin.

Itse kehityksen lisäksi projektiin kuului myös projektinhallintaa, testausta niin natiivilaitteilla kuin koneellisesti sekä sovellusten julkaisun sovelluskauppoihin. Lisäksi, kaikkia sovelluksia rakennettaessa niihin liittyy aina tietty määrä kuvankäsittelyä.

Rajapinnat

Nation Builder

Vapaiden valtakunta -kampanjan verkkosivusto rakennettiin Nation Builder -sovelluksen päälle. Nation Builder tarjoaa valmiit ominaisuudet hallita suuria kampanjoita sekä tietoa. Sovelluksesta löytyy myös yksinkertainen julkaisujärjestelmä, jolla voidaan tehdä kampanjasivustoja nopeastikin.

Rakensimme ensimmäistä kertaa rajapinnan mobiilisovelluksen ja Nation Builderin välille. Mobiilisovelluksessa kerätyt tiedot kulkivat kaksisuuntaisesti näiden välillä. Kirjautunut henkilö pystyi päivittämään tietojaan joko Nation Builderin tarjoamassa käyttöliittymässä tai suoraan mobiilisovelluksessa.

Kampanjasta kerätty tieto vietiin tietoturvallisesti rakentamamme rajapintasillan kautta Nation Builder -sovellukseen, missä se jatkokäsiteltiin ja kampanjan stuktuuri pysyi näin hallinnassa.

Facebook

Facebook-rajapinta rakennettiin hakemaan Vapaiden valtakunta -kampanjan Facebook sivun postaukset. Facebookista haetut viestit näytettiin sovelluksen aikajananäkymässä sekä jokaisesta uudesta viestistä lähettiin sovelluksen käyttäjälle push -viesti (sovellusviesti).

Nexmo

Käytimme Nexmon tarjoamaa Voice API rajapintaa mobiilisovelluksessa tarjottavaan soitto ominaisuuteen. Soitto ominaisuus oli rajattu tietylle käyttäjäryhmälle. Soittaminen kampanjan tukijoille tapahtui rajapinnan ansioista täysin anonyymisti.

Google Firebase Cloud Messaging, FCM

Google Firebase tarjosi nopean tavan lähettää push-viestit (sovellusviestit) eri laittelle. Mobiilisovelluksessa oli tuki sekä iOS että Android puhelimien sovellusviesteille.

Rajapintasilta

Kaikki ylläolevat rajapinnat integroitiin rajapintasillan avulla mobiilisovellukseen. Silta hoito kaiken tiedonkäsittelyn ja lähetti sen tarvittaviin palveluihin. Rajapintasilta toimi kaksisuuntaisesti.

Käytetyt teknologiat

Tietokannat

  • MariaDB

Ohjelmistokehykset ja kirjastot

  • Laravel
  • React
  • React Native

Käytetyt ohjelmisto- ja scriptikielet

  • PHP
  • JavaScript / TypeScript
  • HTML5, SCSS

Palvelimet

  • Google Compute Platform

Statistiikkaa

Projektiin osallistujien määrä Oddy Tech:ltä: 5 henkilöä.

Mobiilisovelluksen kehitykseen käytetty määrä projektista: 50%

Rajapintasillan kehitykseen käytetty määrä projektista: 30%

Muuhun hankkeeseen liittyviin toimiin käytetty määrä projektista: 20%

Ota meihin rohkeasti yhteyttä!

tech@oddy.fi
050 553 1111

Laura Nevasalo

Laura Nevasalo

Kasvu ja asiakkuudet
Client Director

Varaa etätapaaminen!

laura.nevasalo@oddy.fi
050 553 1111


Jukka Leino

Jukka Leino

Kasvu ja asiakkuudet
CEO

Varaa etätapaaminen!

jukka.leino@oddy.fi
040 516 7612






Lähetä viesti!
1
Voidaanko auttaa?
Hei!

Voidaanko auttaa?
Powered by