Ohjelmistokehitys

Ketterät menetelmät ohjelmistokehityksessä

Ilkka Toivanen 04.07.2019

Ohjelmistokehitysprojektin vaikein tehtävä on muuntaa käyttäjien ja asiakkaiden abstraktit tarpeet toimivaksi tuotteeksi tai palveluksi. Haastetta on vuosien saatossa pyritty ratkaisemaan monin tavoin. Useimmiten tehokkain tapa ratkaista tämä tilanne on edetä palanen kerrallaan. Kutsumme tätä menetelmää ketteräksi kehittämiseksi (agile development).

Kun hirsitaloa rakennetaan, se pystytetään hirsi kerrallaan. Jos yleisesti kerrotun tarinan hypoteettinen elefantti olisi syötävä, se syötäisiin palanen kerrallaan. Kun ohjelmistoa koodataan, on viisaampaa toteuttaa sitä ominaisuus kerrallaan.

 

Iteratiivisuus on kaikille osapuolille parhaaksi

 

Jatkuva eteneminen mahdollistaa käyttäjien ja asiakkaan mukanaolon ja tuotteen arvioinnin sitä mukaa kun kehitys etenee. Näin virheisiin, puutteisiin tai väärinkäsityksiin voidaan puuttua nopeasti ja voimme toteuttaa muutokset ketterästi ja nopeasti. 

 

Iteratiivinen kehitysmalli on juurikin tätä - tuotetta tai palvelua voidaan tarkastella osina kokonaisuuden muodostuessa, jolloin lopullisia tarpeita voidaan myös uudelleenarvioida.

 

Ketterät menetelmät ohjelmistokehityksessä ovat tulleet toimiakseen. Ne yhdistettynä Devops-menetelmiin takaavat ohjelmiston läpinäkyvän rakentumisen suoraan asiakkaan silmien edessä. Ketterät menetelmät eivät yksin takaa riittävää etenemisnopeutta ja virheetöntä tuotantoonvientiä, vaan yhdistettynä automatisoituihin konfiguraationhallintaan, testaukseen, kokoonpanoon ja julkaisuun vähennetään manuaalisen työn tarvetta, nopeutetaan tuotantoonvientiä ja vähennetään virheitä.

 

Soveltaminen tarpeiden mukaan on viisautta

 

Menetelmiä on syytä soveltaa asiakas- ja projektikohtaisesti. Me olemme käyttäneet eri variaatioita ketterän kehityksen ja Devopsin menetelmistä kymmenissä projekteissa. Emme juutu menetelmiin vain menetelmien vuoksi, vaan sovellamme niitä kulloisenkin tarpeen mukaan. 

 

Ymmärtämällä projektien luonne ja käytettävien menetelmien tarve voitetaan ajassa, kustannuksissa ja lopputuloksissa.

 

Menestyksekkäässä ketterässä projektissa kaikki osapuolet tietävät yhdessä, mitä ongelmaa ollaan ratkaisemassa, roolit ovat selkeitä, vastuut ja tuoteomistajuus on hallinnassa sekä ymmärretään millainen projektin toimintaympäristö on. Sen mukaan valitaan, miten uskollisesti eri malleja noudatetaan ja miten niitä sovelletaan. Devops kulkee ketterän kehityksen mukana käsi kädessä – samoin soveltaen ja ymmärtäen toimintaympäristöä.

Projekti mielessä? Ole yhteydessä niin lähdetään toteuttamaan sitä yhdessä!