Mistä ohjelmistokehitysprojektin kustannukset muodostuvat ja kuinka ostoprosessi käytännössä tapahtuu?
Ohjelmistot syntyvät varsin vakiintuneella toimintamallilla ja samojen vaiheiden kautta. Lopullisen hinnan osalta merkittävin yksittäinen tekijä on ohjelmiston toteuttamiseen tarvittava aika. Lisäksi hintaan vaikuttaa, kuinka monta eri asiantuntijaa toteuttamiseen tarvitaan. Halvimmillaan kustannus on yhden henkilön kuukausipalkan verran ja suurimmissa kokonaisuuksissa jopa useamman henkilön vuosipalkan verran.
Räätälöidyn ohjelmiston toteuttaminen alkaa asiakastarpeen kartoituksella ja siihen soveltuvan ratkaisun muotoilulla.
Ohjelmistoprojektin alkaessa asiakas ei välttämättä voi tietää, kuinka iso työ on kyseessä. Tämä johtuu siitä, että alustavat suunnitelmat ovat yleensä epätarkkoja. Riippuen asian monimutkaisuudesta asiakkaalla saattaa olla jo itsellään valmis kuva lopputuloksesta. Siksi Integralilla suosimme yhdessä iteroimista, jossa palvelumuotoilun keinoin tarkennetaan ideaa valmiimmaksi.
Iteroimisen aikana selkiytyvät ohjelmiston toiminnalliset eli liiketoimintalogiikkaa palvelevat sekä niin sanotut ei-toiminnalliset, eli ohjelman yleistä toimintaa varten tarvittavat ominaisuudet. Parhaimmillaan vaiheen lopputuotoksena toteutetaan käyttöliittymäprototyyppi, jossa käyttäjä voi edetä kuten lopputuotteessa on tarkoitus.
Suunnittelu edustaa vain noin 3–10 % valmiin lopputuotteen kustannuksista. Se kuitenkin luo osapuolille selkeän käsityksen, mitä olemme yhdessä toteuttamassa. Vaihe on verrattavissa talon rakentamiseen ja arkkitehdin kanssa laadittaviin rakennuspiirustuksiin.
Tämän pohjalta asiakkaalle laaditaan suunnitelma ohjelmiston toteuttamiseen liittyvistä asiantuntijoista sekä työvaiheista, ja annetaan tarjouksen muodossa mahdollisimman tarkat työmääräarviot. Toteutuksen aikana asiakkaalla on mahdollisuus muuttaa suunnitelmaa. Työt elävät joustavasti muutosten mukaan.
Asiakkaan rooli ohjelmistokehitysprojektissa riippuu projektista ja aihealueesta. Jos vaikkapa aihealue on monimutkainen, asiakkaan rooli on hyvin tärkeä. Yksinkertaisimmissa projekteissa rooli on pienempi.
Halvalla voi saada ohjelmistokehityksessä hyvää, jos ostaa pientä ja valmista. Usein esimerkiksi on halvempaa muokata prosesseja tukemaan ohjelmistoa kuin toisin päin. Asiakas voi myös säästää osallistumalla aktiivisesti omaan tarvekartoitukseensa ja projektinohjaukseen. Onnistunut ohjelmistoprojekti on hyvin valmisteltu.
Lopullinen hinta koostuu muistakin asioista kuin muotoilusta ja koodaamisesta. Ohjelmistokehitykseen liittyy myös graafista suunnittelua, teknologia-arkkitehtuuri – ja tietomallisuunnittelua, testausta sekä projektinhallintaa. Poikkeuksetta ohjelmisto tarvitsee palvelinympäristön ja ylläpitoa.
Ohjelmistokehitys kannattaa ajatella matkana, jonka aikana opitaan, tehostetaan omia toimintatapoja ja kehitetään kilpailukyky 3.0:aa.
Valitettava totuus ohjelmistokehityksen hinnasta ja sisällöstä on, ettei sitä voida tarkalleen tietää. Sen sijaan voit laittaa asiantuntijat selvittämään sen sinun puolestasi.