X
Loading...
Ei hakutuloksia
Sisältö
Henkilöt
{ page.post_title }
{ page.titteli }
{ page.sahkoposti }
{ page.puhelinnumero }

Ohjelmoijan on aina varauduttava suuriin kuormituksiin ja virhetilanteisiin

Astronauttikin voi joskus toimia väärin

Kirjoittelen ensimmäistä ohjelmointiin liittyvää blogitekstiäni. Viime vuoden Tähdet Ja Avaruus (2015, numero 8, sivut 40-43) lehdessä oli tosi mielenkiintoinen juttu siitä, miten ohjelmoitiin Apollo-ohjelman kuualuksen tietokoneet. Kaikki varmasti tiedämme, että siihen aikaan koneiden teho oli hyvin rajallinen ja suorituskyky tuli vastaan hyvin äkkiä.

Yksi pääsuunnittelijan oivalluksia oli kuualuksen lentotietokoneen käyttöjärjestelmän rakentaminen niin, että se huomasi, koska rajat tulivat vastaan. Tilanteen tullessa eteen kuumoduulin laskeutuessa, tietokone ilmoittikin hälytyksen avulla, että rajat ovat vastassa ja tietokoneen on pakko keskittyä vain tärkeimpiin toimintoihin. Tämäkin ominaisuus oli tietokoneessa sisäänrakennettuna. Olisi ihan kiva, jos meillä ihmisilläkin olisi vakiona saman tapainen ominaisuus jo valmiiksi ohjelmoituna. Tästä olisi varmasti hyötyä stressinhallinnassa.

Toinen merkittävä oletuksien muuttaminen oli se, että ihmisten tekemiin virheisiin on varauduttava. Ennen Apolloa ajateltiin, että astronauttien voidaan olettaa olevan täysin virheettömiä toiminnassaan. Tämä ei kuitenkaan ole realistista: aina on varauduttava ihmisten tekemiin virheisiin, vaikka kyseessä olisivat huippukoulutetut astronautit. Kuulennollakin tutka meni väärään asentoon. Tästä aiheutui tietokoneen ylikuorma. Tällöin osasyynä oli virhe tarkistuslistassa, mutta ihminen oli se, joka laittoi tutkan väärään asentoon.

Näistä oletuksista ja mahdollisten virheiden perusteellisesta läpikäynnistä oli seurauksena, että Apollon ohjelmointipuoli oli aikanaan todella luotettava. Jopa niin luotettava, että ohjelmoinnista johtuvia toimintaa haittaavia virheitä ei ollut käytännössä lainkaan. Ohjelmien luotettavuudesta ei tarvinnut erikseen puhua. Tähdet ja Avaruus -lehden jutusta jäi mieleen myös kommentti, että jos ongelma vaikuttaa ratkaisemattomalta, niin kannattaa yrittää vaihtaa ongelman asiayhteyttä. Se helpottaa joissakin tilanteessa ratkaisua.

Antto Hautamäki

KIRJOITTANUT

Antto Hautamäki

Software Designer

Antto Hautamäki suorittaa parhaillaan Eatechissa työharjoittelua ohjelmistokehityksen parissa. Hän on innokas partiolainen sekä penkkiurheilija. Motto: ”Kun matemaattisetkin mahdollisuudet ovat vielä olemassa, niin silloin ei luovuteta!”

Antto Hautamäki