3.5.2011

Kuinka paljon maksaa mobiilisovellus?

Eniten puhuttava asia mobiilisovellusprojekteissa on kysymys, kuinka paljon sovellus maksaa? Ja miksi se maksaa, onhan se paljon vähemään koodia kuin esimerkiksi verkkosivuissa… vai onko?
kuinka-paljon

BBC kirjoitti miksi brändit tarvitsevat oman sovelluksen. Artikkelissa sovelluksien budjetti lähti n. 23.000 €:sta jolla saa yksinkertaisen sovelluksen, n. 115.000 €:n hintaluokkaan, jonka maksaa hieman monimutkaisempi sovellus. Ja tällä hinnalla saa sovelluksen yhdelle käyttöjärjestelmälle, kuten iPhonelle. Jos haluaa saman Android laitteille, Nokia puhelimille tai Euroopassa ja USA:ssa suosituille Blackberry laitteille, hinta moninkertaistuu. Eikä tämä sisällä Tablet-sovelluksia.

Hieman aikaa vallalla oli trendi, että sovelluksen kuin sovelluksen pitää saada n. kymppitonnilla per alusta (iOS, Android, jne.), mutta nyt tuntuu, että sovellusten hinnat ovat normalisoitumassa, toisin sanoen nousussa. Kansainvälinen kilpailijamme listasi loistavasti syitä miksi näin on käymässä:

1. Yleiset Trendit

Projektien kompleksisuus on kasvanut. Yhä useammassa projektissa kommunikoidaan eri palveluihin ja rajapintoihin, sekä itse sovellusten toiminnallisuudet ovat monimutkaisempia. Vaikka iPhone ja Android kehittäjiä on tullut markkinoille, edelleen on pulaa hyvin osaavista. Kun sovellusten rooli asiakkaiden liiketoiminnassa kasvaa, myös vaatimukset laadusta kasvaa, halpaa ja hyvää ei tälläkään segmentillä löydä kovin helpolla. Käyttäjäkokemus ja sovelluksen konsepti on yhä tärkeämpi, sovelluksen hienosäätö ja viilaus voi olla jopa 50% sovellusprojektin kustannuksista

2. Middleware palvelimen tarve

Aiemmin sovellukset olivat usein ns. ”standalone” ratkaisuja. Nykyiset sovellukset integroituvat yhä useammin useisiin rajapintoihin, sisällönhallintajärjestelmiin, sosiaalisen median palveluihin sekä ”legacy” järjestelmiin. Näiden vaatimusten tukeminen johtaa yhä useammin välipalvelimen käyttöön joka hoitaa integraatiot ja tiedon muokkauksen ja näin olleen tuo huomattavasti lisää kustannuksia. Toisaalta pidemmällä tähtäimellä välipalvelin säästää huomattavasti ylläpidettävyyden ja päivitettävyyden yksinkertaistumisen johdosta. Erityisesti näin on silloin kun sovellus tehdään useammille päätelaitteille. Välipalvelimen kehityksen hinta on n. 5.000 €:sta ylöspäin jopa yli sataan tuhanteen euroon.

3. Android kehitys kallistuu

Android laitteita on jo useita erilaisia, eri ruutukoolla, prosessoireilla ja muilla ominaisuuksilla varustettuna. Yleisesti Android kehityksen on arvioitu maksavan n. 20-30% enemmän kuin iOS-kehitys.

4. Kehitysajat ovat lyhyitä

Kun päätös sovelluksen hankkimisesta tehdään, se yleensä halutaan heti. Näin ollen mahdollisesti kustannustehokkaampi ratkaisu koodauttaa sovellus halvemmissa maissa, ei ole ratkaisu. Kokemuksen kautta on huomattu ns. off-shore-kehityksen olevan n. 2-3 kertaa hitaampaa kalenteriajassa kuin kotimaassa. Samoin offshore-kehitys vaatii raudanlujaa projektinhallinnan ja mobiilialan ammattitaitoa jota on usein vain niissä taloissa, jotka tekevät paljon sovelluksia. Trendi näyttää kääntyneen takaisin kotimaiseen kehitykseen.

Geniem AppEver

Geniem on kehittänyt pitkään AppEver työkalua, jolla sovellus koodataan erityisesti mobiilikoodaukseen suunnitellulla MidXML kielellä. Tämän tarkoituksena on tehostaa koodausta käyttämällä valmiita komponentteja sekä alentaa hintaa kun halutaan tukea useita alustoja. Nyrkkisääntönä on ollut, että yksinkertaisen iPhone sovelluksen saa tehtyä n. 10,000 €:lla, Android versio tästä tulee jo n. 50% säästöllä, koska sama koodi pystytään ajamaan myös Android-puhelimissa. Sen verran koodia on hyvä optimoida, jotta voidaan käyttää kyseisen alustan ns. natiiviominaisuuksia, jotka ovat ominaisia vain ko. alustalle (esim. iPhonessa on paljon valmiita animaatioita joita on turha tehdä itse, mutta niitä ei ole Android alustassa). Toisaalta myös AppEverillä toteutettuna monipuolisempi voi nousta 30-40 k€:n hintaluokkaan, mutta edelleen muiden alustaversioiden tukemisessa saadaan selkeitä kustannussäästöjä.

AppEver Frameworkissa on myös valmiita komponentteja, joilla voidaan nopeasti kehittää välipalvelin, jonka avulla sovellus saadaan saumattomasti kommunikoimaan useiden eri rajapintojen kanssa.