Teknologiavalinnat mobiilisovelluksen kehittämisessä

Kun suunnitelmissa on kehittää mobiilisovellus, teknologian tulee seurata tarvetta. 

Siksi ennen kehitystyön aloittamista on tärkeää pohtia, kenelle ja mihin käyttötarkoitukseen mobiilisovellus rakennetaan? Entäpä millainen design tukee parhaiten käyttötarkoitusta ja tavoitteita? Kohderyhmät ja käyttötarpeet ohjaavat tuotekehitystä ja täten myös teknologiavalintoja. 

Karkeasti mobiilisovellukset voidaan käyttötarkoituksensa mukaan jakaa kolmeen ryhmään:

  • Mobiilisovellus itsessään on yrityksen tuottama palvelu. Tällaisia sovelluksia ovat esimerkiksi Wolt ja Spotify. 
  • Sovelluksen tarkoitus on tuottaa lisäarvoa varsinaisen liiketoiminnan rinnalla. Yleinen esimerkki tällaisista sovelluksista ovat kanta-asiakaskortit korvanneet yritysten asiakassovellukset.
  • Mobiilisovellus on yrityksen sisäiseen käyttöön suunniteltu työkalu, jota käyttävät vaikkapa myyjät, huoltohenkilöstö tai muuten esimerkiksi työssään paljon liikkuvat henkilöt. 

Miten valita toteutukseen sopiva teknologia

Teknologioiden valinnassa on hyvä huomioida sovelluksen suunniteltu elinkaari ja kehitysnäkymät, sillä toiset teknologiat tarjoavat tähän paremmat mahdollisuudet kuin toiset. 

Kun toteutuksessa koittaa teknologiavalintojen aika, tulee huomioida ainakin seuraavat tekijät:

  • Kenelle sovellus on tarkoitettu?
  • Millaisia teknisiä ominaisuuksia tavoitellaan?
  • Kuinka paljon ollaan valmiita investoimaan?
  • Millaisia suunnitelmia on jatkokehitykselle?
  • Mitä kehitetään itse ja mitä ulkoistetaan kumppanille?

Mobiilisovelluksen suunnitteluvaiheessa kerättyjen tietojen pohjalta kokeneet ohjelmistokehittäjät osaavat suositella tarpeenmukaiset teknologiat toteutukseen. Valintoihin vaikuttavat myös jo käytössä olevat teknologiat ja olemassa oleva osaaminen, ellei tarkoituksena ole ulkoistaa kumppanille koko kehitysprojektia. 

Suunnitelmasta toteutukseen

Mobiilisovellusten toteuttamiseen on monia erilaisia vaihtoehtoja. Tällä hetkellä yleisimmin käytettyjä ovat natiivisovellukset, PWA eli Progressive Web App -ratkaisut ja cross-platform -alustojen avulla toteutetut mobiilisovellukset. 

Natiivisovellukset

Mobiilikenttää hallinnoi kaksi käyttöjärjestelmää: Android ja iOS. Kun kehitetään käyttöjärjestelmäkohtainen sovellus, kutsutaan sitä natiivisovellukseksi. Tällä hetkellä natiivisovellukset ovat yleisin tapa toteuttaa mobiilisovelluksia, joskin usein myös kustannuksiltaan hintavin. Natiivisovellukset mahdollistavat käyttöjärjestelmäkohtaisten ominaisuuksien täysimittaisen hyödyntämisen, jolloin yleensä voidaan saavuttaa myös paras käyttökokemus. Mikäli tähtäimessä on kehittää pitkän elinkaaren mobiiliratkaisu tai mobiilisovellus itsessään on yrityksen tuottama palvelu, natiivisovellus on useimmiten tähän suositeltavin vaihtoehto. 

PWA – Progressive Web App

PWA on web-sovellus, joka on käytännössä ladattava verkkosivu, joten se on kevyempi toteuttaa kuin natiivisovellus. Ne ovat luonnostaan kaikille käyttöjärjestelmille sopivia, vaikkakin jotkut ominaisuudet toimivat paremmin toisessa käyttöjärjestelmässä kuin toisessa. PWA-sivun voi halutessaan tallentaa kuvakkeena mobiililaitteen aloitusvalikkoon, jolloin sen käyttäminen muistuttaa läheisesti ladattavan sovelluksen käyttämistä. Kuitenkaan aivan kaikkia käyttöjärjestelmäkohtaisia ominaisuuksia ei saada käyttöön, joka saattaa joissakin tilanteissa vaikuttaa käyttökokemukseen. Toisaalta, sovelluksen julkaisua eivät rajoita sovelluskauppojen säännöt. 

Alustariippumattomat, eli Cross-platform -ratkaisut

Cross-platform -kehitysalustoja on monenlaisia ja niiden tekniset ominaisuudet eroavat jokseenkin toisistaan. Tällä hetkellä Microsoftilta löytyy Xamarin, Googlelta Flutter ja React Nativen taustalta löytyy Facebook. Verrattuna natiivisovelluksiin, cross-platform -alustojen yhteisenä hyvänä puolena on se, että sama sovellus toimii niin Android kuin iOS-käyttöjärjestelmillä, jolloin yhden sovelluksen voi julkaista kahteen eri sovelluskauppaan. Toisaalta tästä syystä saatetaan joutua karsimaan joitakin toimintoja pois. Kuten PWA-sovelluksetkin, cross-platform -ratkaisut ovat usein nopeampi ja kustannustehokkaampi vaihtoehto natiivisovelluksen kehittämiselle. Haasteena kuitenkin on eri alustojen vaihteleva kehitystahti ja nopeat muutokset alustojen suosiossa. Cross-platform -alustojen suorituskyky saattaa olla natiivisovelluksia heikompi, mutta ne soveltuvat hyvin tilanteisiin, joissa sovelluksella ajatellaan olevan lyhyt elinkaari tai sen ei ole tarkoitus käyttää esimerkiksi puhelimen antureita. 

Monad Mobile -palvelut keskittyvät mobiilisovellusten kehittämiseen 

Ideasta on matkaa mobiilisovelluksen varsinaiseen toteutukseen, joten rinnalle kannattaa valita kumppani, joka osaa tukea sovelluksen kehittämisen kaikissa vaiheissa. Monad Mobile -ratkaisut keskittyvät teknisesti laadukkaiden mobiiliratkaisujen suunnitteluun, rakentamiseen ja ylläpitoon. Niiden rinnalle toteutamme tarvittaessa taustajärjestelmät ja analytiikan hyödyntämisen mallit.

Kuluttajina olemme jo tottuneet siihen, että älylaitteemme kautta voimme hoitaa niin työt, ostokset kuin pankkiasiatkin. Odotuksemme mobiilisovelluksille ovat korkeat. Meidän tehtävämme on auttaa asiakkaitamme vastaamaan näihin odotuksiin.

Kirjoittanut Aki Haapamäki