Ohjelmistosuunnittelija komentaa tietokonetta

”Sovelluskehittäjä kirjoittaa koodia, jolla tietokone komennetaan tekemään haluamiamme asioita!”
Näin toimenkuvaansa kiteyttää Procompin pitkäaikainen ohjelmistosuunnittelija Marko Ruotsalainen.

Miksi ohjelmia tehdään?
Monet asiat tehdään tänä päivänä tietokonepohjaisilla järjestelmillä. Välttämättä tietokone ei ole näkyvissä, vaan äly on piilotettu laitteiden sisuksiin:
– Pyykkikone, pankkiautomaatti, autonavigaattori, älypuhelin…
– Lähimaksaminen, älylukot, työajan leimauslaitteet…
Varsinaisilla tietokoneilla voidaan tehdä esimerkiksi työvuorojen tai rekkakuormien suunnittelua, ja niihin voidaan lisätä erityistä tehokkuutta toimintojen automatisoinnilla. Lukuisten arkipäivän toimintojen takana on runsaasti älyä, joka on lähtöisin ohjelmoijan käsistä.

Miten softa syntyy?
Ohjelmistosuunnittelija, sovelluskehittäjä, koodari, ohjelmoija – Käytetäänpä mitä nimeä tahansa, tämä ammattikunta tietää miten tietokoneen saa valjastettua toteuttamaan tietokoneen käyttäjän toivomat asiat. ”Ohjelmistosuunnittelija suunnittelee ja toteuttaa ratkaisun asiakkaan tarpeeseen joko itsenäisesti tai osana suurempaa tiimiä.” Näin työtään kuvaa Jarkko Väisänen Procompilta.

Hyvä määrittely
Sovelluskehittäjän toimenkuvaan kuuluu usein erilaisten dokumenttien laatimista projektipäällikön ja toisten suunnittelijoiden kanssa. Vaatimusmäärittely kuvaa asiakkaan tarvitseman ominaisuuden selkokielisessä muodossa. Toteutuksen suunnitteluvaiheessa vaatimusmäärittelyn asiat kirjoitetaan koodaamista selkiyttäväksi ohjelmistosuunnitelmaksi. Dokumentaatiota päivitetään toteutuksen aikana tarpeen mukaan.

Huolellinen toteutus
Varsinaisesti sovelluskehittäjä on se taituri, joka muuttaa esimerkiksi suomeksi kirjoitetun, asiakkaan kanssa sovitun kehityspiirteen tietokoneen ymmärtämään muotoon. Koodikieli näyttää asiaan perehtymättömälle kummalliselta sanahelinältä, mutta tietokone on siihen tyytyväinen ja tottelee ohjeita äärimmäisen tarkasti.

Siis koodaamista?
Ohjelmointia voidaan tehdä monilla eri ohjelmointikielillä ja sitä varten ohjelmoiduilla työkaluilla. Toteutus tehdään menetelmällä, joka parhaiten palvelee kyseisessä tilanteessa. Kyse on tietokoneen käskemisestä peräkkäisillä komennoilla. Komennot ovat usein englannin kielestä johdettuja sanoja. Tietokone ei ymmärrä näitäkään komentosanoja, vaan ne käännetään ohjelmointityökalulla tietokoneen sisällä olevan prosessoriälyn ymmärtämäksi nollien ja ykkösten jonoksi. Ja kun tarkkoja ollaan, prosessori ei ymmärrä ykkösiä ja nolliakaan, vaan kyse on hallituista jännitevaihteluista – siihen tietokoneen ”ajattelu” perustuu.

Valmista tulee
Sovellusten kehittämisen timanttina Jarkko alleviivaa: ”…ehdottomasti sen, kun valmis ohjelmisto tai järjestelmän osa menee asiakkaalle tuotantokäyttöön ja se toimii vuodesta toiseen – no, niin kuin se kuuluisa junan vessa.”