Tarkvara pidev kasutuselevõtt tagab parema kvaliteedi ja rahulolu

Continuous deployment’i otsene kasu:
Continuous deployment’i otsene kasu:

Kui agiilse tarkvaraarenduse üks põhimõtetest on tarkvara tarnimine nii tihti kui võimalik – soovitavalt iga paari nädala tagant –, siis tarkvara pidev kasutuselevõtt ehk continuous deployment kiirendab seda tsüklit veelgi, kusjuures samas kasvab nii loodud koodi kvaliteet, arendajate võimekus kui ka kliendi rahulolu, kirjutab Concise Systems’i tarkvaraarhitekt Mikk Soone.

Igasugune tarkvara, olgu selleks siis mõni veebileht, nutitelefoni rakendus või suur infosüsteem, vajab pidevat täiendamist ja parandamist. Traditsioonilise tarkvaraarenduse puhul jõuavad uuendused kasutajateni mõnel korral aastas pärast põhjalikke testimisi. Kiirelt arenevas maailmas on seda selgelt liiga harva ja see võib saada konkurentsitakistuseks. Agiilse tarkvaraarenduse puhul jõuavad värskendused ja uued funktsioonid kasutajateni palju kiiremini – kuni isegi mitu korda nädalas, kuid ka see on liiga harv, et tagada tarkvara kõrge kvaliteet.

Kõige efektiivsem on tarkvara pidev kasutuselevõtt ehk continuous deployment (CD), mis tähendab et kohe, kui järjekordne koodijupp valmib, minnakse sellega live’i. Tavaliselt juhtub see mitu korda päevas, suuremate klientide puhul ka mitmeid kordi tunnis. Näiteks Facebook, Amazon, Flickr, Google, Netflix ja paljud teised väga suured ettevõtted tarnivad uut koodi tuhandeid kordi päevas.

Nii on tagatud tarkvara stabiilselt kõrge kvaliteet ka väga kiiresti kasvava koodihulga puhul ning samas suureneb arendajate produktiivsus. Sama oluline on ka fakt, et tarkvara pidev kasutuselevõtt on ärijuhtidele meele järgi, sest suurte versiooniuuendustega (kas kõik saab õigeks ajaks valmis? Kas kõik töötab nagu peab? Kuidas see mõjutab kasutajaid?) seotud stress väheneb drastiliselt.

Selline kiirus saavutatakse tänu sellele, et tarkvaravärskendused on väiksed, need läbivad ainult automaattestid ja võetakse seejärel kohe ka automaatselt kasutusse. Ehk teisisõnu – tarneahel on tehtud võimalikult lühikeseks ja efektiivseks ning inimlike eksimuste võimalus minimeeritud. See omakorda toob endaga kaasa paremad tooted, kuna kasutajatelt saab tehtud täiendustele kiiresti (sageli ka automaatselt) tagasisidet ja ärilist kasu mitte toovast funktsionaalsusest saab kergesti loobuda.

Kuidas tarkvara pidevalt tarnida?

Tehniliselt on CD juurutamine arendusmeeskonnas väga lihtne ja kiire – sellega saab alustada kasvõi kohe praegu. Natuke erinev lugu on aga inimfaktoriga ehk tarkvara arendajate ja selle tellijatega. Esimesed neist peavad hakkama oma töö eest senisest rohkem, aga ka erineval viisil vastutama – pideva kasutuselevõtu puhul läbib uus kood ainult automaattestimise ning kasutuselevõtt on täielikult automatiseeritud. Kuna inimpuhvrit enam pole, vastutavad tarkvara kvaliteedi eest otseselt arendajad. Selle põhjus on paljuski psühholoogiline – kui arendaja loodut testib mõni tema kolleeg käsitsi, siis puudub otsene vastutus ja kood kipub olema kehvem. Kuigi selline muutus võib mõnele arendajale alguses hirmutav tunduda, näevad nad oma töö vilju kiiresti ja see motiveerib neid tugevalt. Lisaboonusena võimaldab pidev kasutuselevõtt parandada kõik vead väga kiiresti ning tänu sellele väheneb risk, et lõppkasutajani jõuab vigane tarkvara. Seegi motiveerib arendajaid kvaliteetsemalt töötama!

Ka kliendi ehk tellija poolelt on vajalik mõtteviisi muutus. Kui siiani suhtlesid omavahel tiimi- ja ärijuhid, siis CD puhul suhtleb klient otse arendajaga, mis tähendab, et usaldusel on senisest suurem roll. Tavaliselt algab tarkvara pidev kasutuselevõtt testperioodiga, mis reeglina kasvab üle edukaks koostööks. Ka meie kogemus näitab, et klientidele selline lähenemine meeldib ja pärast lühikest testperioodi ei soovi keegi enam aeglast arendust tellida. CD on kasulik ka teistele äriliinidele nagu näiteks müügile ja turundusele, sest toote turule toomise aeg väheneb drastiliselt ja see avab senisest paremaid võimalusi.

Osale arutelus

  • Mikk Soone

Toetajad

Raadio ettevõtlikule inimesele

Hetkel eetris

Jälgi ITuudiseid sotsiaalmeedias

RSS

Toetajad

Valdkonna töökuulutused

CREDITINFO ESTONIA is looking for a PYTHON DEVELOPER

Creditinfo Eesti AS

05. oktoober 2018

DERIVCO is looking for a .NET DEVELOPER

Derivco Estonia OÜ

30. september 2018

DERIVCO is looking for a UX/UI DESIGNER

Derivco Estonia OÜ

30. september 2018

Teabevara