Ohjelmistokehitys on monelle vieras aihealue, minkä vuoksi sen ympärillä liikkuu paljon myyttejä ja vanhentuneita mielikuvia. Jotkut kokevat ohjelmistokehityksen jopa mörkönä, johon sekaantumista pyritään välttämään viimeiseen asti. Nykypäivän ohjelmistokehitys on kuitenkin kaikkea muuta kuin kankeaa ja kallista, minkä vuoksi päätimme murtaa muutamia ohjelmistokehityksen ympärillä pyöriviä myyttejä!
Ohjelmistokehitysprojektit mielletään usein kalliiksi ja epävarmoiksi projekteiksi, joissa budjetit paukkuvat ja lopputuloksesta tulee aina kalliimpi, kuin mitä aluksi suunniteltiin. Välillä saatetaan huomata, että arvokkaita työtunteja on käytetty täysin epäolennaisten toiminnallisuuksien hiomiseen. Toki ohjelmistoprojektin laajuus, tyyli ja toivotut ominaisuudet vaikuttavat hintalappuun, mutta nykyään on mahdollista toteuttaa monenlaisia ohjelmistoprojekteja kustannustehokkaaseen hintaan.
Ketterä ohjelmistokehitys mahdollistaa sen, että ohjelmistoprojekti voidaan toteuttaa myös budjetin osalta ketterästi. Paras lopputulos saadaan keskittämällä käytössä oleva budjetti tärkeimpien toiminnallisuuksien kehittämiseen. Ketterää ohjelmistokehitystä tehdään lyhyiden sprinttien kautta. Jokaiselle sprintille luodaan omat tavoitteet, aikataulu ja budjetti. Yksi sprintti kestää yleensä muutaman viikon, minkä jälkeen käydään läpi sprintin aikana luodut toiminnallisuudet. Tämän jälkeen päätetään, mihin seuraava osa budjetista sijoitetaan. Näin budjetin seuranta helpottuu ja budjetissa on helpompi pysyä. Määrität asiakkaana itse, kuinka paljon rahaa haluat ohjelmistoprojektiin panostaa.
Moni ajattelee, että valmiin ohjelmiston toiminnallisuudet määräytyvät ainoastaan sen mukaan, mikä on teknisesti mahdollista. Tietenkin tekniset asiat vaikuttavat jossain määrin siihen, kuinka tietyt asiat voidaan toteuttaa, mutta ohjelmistokehityksen keskiössä tulisi aina olla asiakkaan toiveet ja tarpeet. On ohjelmistotalon tehtävä selvittää, kuinka nämä toiminnallisuudet saadaan teknisesti toteutettua mahdollisimman kustannustehokkaasti ja järkevästi, jatkokehitysmahdollisuudet huomioiden. Sopiva tekniikka valitaan toivotun lopputuloksen mukaan.
Omaan tarpeeseen sopivan ohjelmistotalon valintaan kannattaa panostaa. Toiset ohjelmistotalot ovat erikoistuneet tiettyyn tekniikkaan, kun taas toiset tekevät projekteja joustavasti eri alustoilla ja ohjelmistokielillä. Meillä asiakkaat yllättyvät usein positiivisesti siitä, kuinka laajan mittakaavan osaamista henkilömäärältään pienestä ohjelmistotalostamme löytyy.
Perinteinen ohjelmistokehityksen vesiputousmalli vaatii, että projektin pienetkin yksityiskohdat on tiedettävä jo aivan alussa. Todellisuudessa ohjelmistoprojektit muovautuvat lähes poikkeuksetta matkalla, kun toiminnallisuuksien prioriteetit kirkastuvat ja testikäyttäjiltä saadaan palautetta. Usein muutoksille ei ole perinteisessä mallissa kuitenkaan varattu resursseja niin aikataulun kuin budjetinkaan osalta, minkä vuoksi projekti pitkittyy ja rahaa kuluu budjetoitua enemmän.
Ketterä ohjelmistokehitys mahdollistaa nimensä mukaisesti ohjelmiston kehittämisen ketterästi. Sprinttityylisen työskentelytavan vuoksi ohjelmistosta syntyy säännöllisesti pieniä kokonaisuuksia, joita voidaan kehittää palautteen ja kirkastuneiden tavoitteiden pohjalta eteenpäin. Jokaiseen sprinttiin luodaan omat tavoitteet, aikataulut ja budjetti, minkä ansiosta kehitystyö voidaan ohjata tärkeimmän prioriteetin toiminnallisuuksiin. Näin saadaan paras vastine aika- ja raharesursseille sekä toimivampi lopputulos, joka vastaa parhaiten projektin todellisia tavoitteita. Ketterässä ohjelmistokehityksessä projektin aloitukseen riittävät raamit ja alustava idea siitä, millainen ohjelmistosta halutaan. Loppu hioutuu matkan varrella tiiviillä yhteistyöllä.
Monella saattaa olla mielikuva, että ohjelmistokehittäjät ovat yksin pimeässä huoneessa koodaavia nörttejä, jotka kaihtavat sosiaalista kanssakäymistä. Tietenkin meitä löytyy moneen junaan, mutta useimmiten ohjelmistokehittäjät ovat ihan samanlaisia ihmisiä, kuin kaikki muutkin. Parhaimmillaan ohjelmistokehittäjästä muodostuu tärkeä osa tiimiäsi – etenkin silloin, kun valitset kehittäjän, jota kiinnostaa aidosti kehittää toimintaasi ja sitä tukevia ohjelmistoja.
Ketterä ohjelmistokehitys toteutetaan tiiviissä yhteistyössä asiakkaan kanssa, molemminpuolisesti ideoiden ja säännöllisesti yhdessä kehittäen. Nykypäivän ohjelmistokehittäjät ovat yhä useammin luovia, sosiaalisia ja kehityshenkisiä tekijöitä. Yhdessä luomalla syntyy paras lopputulos, kun kehittäjän tekninen osaaminen kohtaa asiakkaan tarpeet ja toiveet.
Ennen saatettiin ajatella, että ohjelmistoprojektiin sitoudutaan vähintään vuodeksi, ellei pidemmäksikin. Maali häämötti jossain hamassa tulevaisuudessa ja projektin parissa puurrettiin pitkään. Ohjelmistokehitys onnistuu kuitenkin myös hyvin ketterästi, kun se tehdään oikeanlaisella mallilla. Ketterän ohjelmistokehityksen mallin sprintit kestävät viikosta kuukauteen, ja jokaisen sprintin lopuksi valmistuu jokin kokonaisuus lopullisesta ohjelmistosta. Ketterän ohjelmistokehityksen mallilla ohjelmiston ensiversio saadaan nopeammin julkaistua, sillä siinä keskitytään aina tärkeimmän prioriteetin toimintojen kehittämiseen. Lopputulos on usein myös laadukkaampi, kun mahdollisia ongelmakohtia voidaan korjata jo matkan varrella käyttäjäpalautteen pohjalta.
Kuten huomaat, ohjelmistokehitys ei ole nykypäivänä välttämättä kallis, aikaavievä tai monimutkainen prosessi. Ketterän ohjelmistokehityksen avulla on mahdollista luoda laadukkaita ohjelmistoja kustannustehokkaasti, nopeasti ja ketterästi!
Anna-Leena Poukkanen on aloittanut HR-Managerina Trinerialla.
Trineria Oy:n uusi laatujärjestelmä täyttää ISO 9001:2015 -standardin vaatimukset.
Digitaalinen partiolaisaloite on työkalu kehittämisaloitteiden keräämiseen ja käsittelyyn.
Ohjelmistokehityksen hankinta onnistuu helpommin, kun huomioi muutamia asioita heti alussa. Kokosimme kuusi käytännönläheistä askelta yrityksen ostoprosessia helpottamaan.
IteWikin juttusarja esittelee ohjelmistoalan yrityksiä ja ihmisiä niiden takana. Räätälöityjä teollisen Internetin ohjelmistoja kehittävä Trineria tavoittelee 40-60 % vuotuista kasvua.
Otimme Trinerialla OKR-mallin käyttöön, koska halusimme jalkauttaa yrityksen uuden strategian jokapäiväisen työn tasolle.
Justus Sydänmaa on aloittanut Trinerialla Software Developer Traineena.
Johannes Manninen on aloittanut Software Developerina. Hän tuo mukanaan laajaa kokemusta ja osaamista.
Trinerian CEO:n Leif Setälän loppuvuoden tervehdys