Terminology in Finnish

Alla on termejä, jotka auttavat ymmärtämään kirjan ohjelmistotestausta selittäviä osuuksia ja harjoituksia. Ne ovat pääasiassa ohjelmistokehityksen ja testauksen termejä, mutta olen ottanut mukaan myös muutamia yritysten toimintaan liittyviä termejä.

 

Algoritmi = yksityiskohtainen kuvaus siitä, miten jokin tehtävä suoritetaan

Alkuperäissyy = syy, josta vika johtuu. Tällainen syy mahdollistaa koko joukon samantapaisia vikoja, joten alkuperäissyy pitää poistaa.

Ammattitestaaja = ihminen, joka on erikoistunut testauksen ja on siinä erityisen hyvä.

Debuggaus = vian paikallistaminen ja vian korjaus.

DevOps = ohjelmistokehityksen ja ylläpidon yhdistäminen. Sama tiimi rakentaa ohjelmistoa ja ylläpitää sitä.

Dokumentaatio = suunnitelmat ja ohjeet siitä, mitä ohjelmiston on tarkoitus tehdä ja miten sitä käytetään.

Dokumentaatiovika = ero dokumentaation ja ohjelmiston välillä. Dokumentaatio kertoo ohjelmiston toimivan eri tavalla kuin se oikeasti toimii.

Heuristiikka = peukalosääntö, miten jokin asia usein toimii.  Heuristiikka voi sanoa, että nollalla kannattaa testata, sillä silloin löytyy usein nollan käyttöön laskuissa liittyviä vikoja. Heuristiikkoja on monia.

Häiriö = Asia, joka toimii ohjelmistossa väärin. Häiriö johtuu yleensä viasta ohjelmistossa.

Hätäkorjaus = muutos, jolla ohjelmisto saadaan toimimaan, kunnes oikea korjaus löydetään.

Jatkuva koonti = jatkuva integraatio. Koodi tehdään pienissä paloissa, jotka heti lisätään eli integroidaan aiemmin tehtyyn ohjelmistoon. Samalla ajetaan testausautomaation testit, jotta huomataan heti mahdolliset viat uudessa koodissa tai aiemmin tehdyssä koodissa.

Kattavuus = testauksen kattavuus. Tehdään sopiva määrä keskenään erilaisia testejä, jotta ollaan käyty läpi ohjelmiston käyttämisen eri vaihtoehdot. Täytyy päättää, miten kattavan testauksen haluaa, sillä kaikkia mahdollisia testejä ei ehdi tehdä. Täydellistä kattavuutta ei ehdi saavuttaa.

Ketterä kehitys = ohjelmistokehityksen tapa, jossa opitaan koko ajan jo tehdystä ohjelmistosta ja päätetään seuraavista tehtävistä palautteen perusteella. Se, mitä alussa pidettiin tärkeimpänä, ei välttämättä ole tärkeintä lopussa.

Komponentti = ohjelmiston tai laitteiston osa.

Koodaaja = ihminen, joka koodaa ohjelmistoja. Sanotaan myös ohjelmistokehittäjäksi.

Koodaus = tehtävä, jonka lopputulos on toimiva ohjelmisto. Myös ajanjakso, jonka aikana koodaus tehdään. Sanotaan myös ohjelmistokehitys, joka on tosin laajempi termi, sisältäen kaikki mahdolliset tehtävät, joita tarvitaan, että ohjelmisto toimii.

Koodi = sarja ohjeita, jotka ihminen on kirjoittanut tietokoneelle. Koodeja voi tehdä eri ohjelmointikielillä, vastaavasti kuin ihmisetkin voivat puhua eri kieliä.

Koodirivi = Koodi muodostuu useista riveistä, kuten kirjan tekstissä on monta riviä. Yhdellä rivillä voi olla monia erilaisia ohjeita tietokoneelle.

Korjata koodi = tehdään tarvittava muutos, yleensä koodiin, jotta se toimisi oikein.

Käytettävyys = se, miten helppo, mukava tai sujuva jokin asia ohjelmistossa on

Käytettävyysasiantuntija = ihminen, joka on erikoistunut tietojärjestelmien hyvän käytettävyyden suunnitteluun. Monesti myös tekee tai ohjaa käytettävyystestausta.

Käytettävyystestaaja = ihminen, joka testaa tietojärjestelmää juuri käytettävyyden kannalta. Monesti ohjelmistokehitystiimin jäsen tai käyttäjä.

Käytettävyysvika = käytettävyysongelma. Asia, joka ei varsinaisesti ole oikein tai väärin, mutta ei tyydytä kaikkia käyttäjiä. Asia voi olla vaikea löytää, oppia tai käyttää.

Käyttäjä = ihminen, joka käyttää ohjelmistoa. Ohjelmiston käyttäjän ei tarvitse omistaa ohjelmistoa, vaikka niinkin joskus on. Monesti ihmisen työnantaja, yritys, omistaa ohjelmiston. Myös ohjelmiston kehittänyt yritys voi omistaa ohjelmiston.

Laatu = se, miten hyvin asia on tehty. Eri ihmiset kokevat hyvän laadun eri tavalla.

Laina = raha, jonka pankki lainaa ihmiselle väliaikaisesti. Raha siirretään käyttäjän tilille, josta käyttäjä ottaa rahan vaikkapa maksaakseen asuntolainan. Raha pitää maksaa myöhemmin pankille takaisin, sovitusti.

Laitteisto = ohjelmiston käyttämät tietokoneet ja verkot. Kutsutaan joskus raudaksi.

Liiketoiminta = yrityksen toiminta, josta sen asiakkaat maksavat. Asiakkaat saavat tuotteen tai palvelun. Yritys saa rahaa, jolla maksetaan yrityksen työntekijöille ja omistajille näiden ajasta. Nämä puolestaan käyttävät rahan elämiseen.

Muisti = tietokoneen muisti, jossa ohjelmisto toimii, vastaavasti kuin ihminen pitää muistissaan asioita, jotta osaa toimia. Muistia on rajallisesti.

Muistin mittaus –ohjelma = koodaajan käytössä oleva ohjelma, jolla muistin käytössä olevaa määrää voi mitata. Se voi olla erillinen koodaajan apuohjelma tai osa koodaajan ohjelmistokehitysympäristöä.

Muistipiiri = tietokoneen osa, jossa tietokoneen muisti toimii.

Muistivuoto = Tietokoneen muistista loppuu tila, ja tietokone ei voi tehdä enää uusia tai vanhojakaan asioita.

Musta hattu = rikollinen, joka murtautuu järjestelmään tietoturvavikoja hyödyntäen ja käyttää löytämiään tietoja väärin, vaikkapa julkistaa niitä maailmalle tai myy niitä.

Ohjelmisto = tietokoneessa toimiva koodi, jonka avulla ihminen voi tehdä jotain, esimerkiksi pelata peliä. Monesti sanotaan vain ohjelma, vaikka oikeastaan monta ohjelmaa muodostaa ohjelmiston.

Ohjelmistoarkkitehti = ihminen, joka miettii ja valmistelee ohjelmiston rakennetta ja tekniikkaa.

Ohjelmistokehitysympäristö = ohjelmistojen kehitykseen tarkoitetut ohjelmistot, kuten koodaus- ja  testaustyökalut.

Ohjelmistokehitys = kaikki mahdolliset tehtävät, joita tarvitaan, että ohjelmisto saadaan toimimaan. Tehtäviä ovat esimerkiksi vaatimusten määrittely, koodaus ja testaus.

Ohjelmistokehitystiimi = joukko ihmisiä, jotka yhdessä rakentavat ohjelmistoa ja testaavat sitä. Vähänkään isommassa ohjelmistossa on yhden koodaajan sijasta kokonainen tiimi ihmisiä. Lyhyesti kehitystiimi.

Ohjelmointikieli = sovittu tapa kirjoittaa ohjelmistokoodia aina samalla tavalla, samalla rakenteella, samoilla sanoilla.

Paikallistaa vika = paitsi, että vika pitää huomata testauksen kautta, se pitää myös paikallistaa jollekin koodiriville, toisin sanoen keksiä, mistä vika johtuu.

Palaute = näkemykset siitä, mikä ohjelmistossa toimii ja mikä ei. Palautetta antavat kaikki, mutta erityisesti käyttäjien palaute on kiinnostavaa, sillä heille ohjelmistoa tehdään.

Palvelinohjelmisto = tietojärjestelmän se osa, jota käyttävät kaikki käyttäjät. Palvelimella ovat usein kaikki järjestelmän tiedot. Palvelin myös tekee usein suuren osa tietojärjestelmän tehtävistä. Käyttäjien käyttöliittymä on yhteydessä palvelinohjelmistoon.

Pankki = yritys, joka huolehtii ihmisten rahoista. Pankkien avulla voi maksaa ostoksistaan.

Päivitys = muutos jo käytössä olevaan ohjelmistoon. Päivitys voi olla pieni tai suuri. Se tuo ohjelmistoon vikakorjauksia tai uusia toimintoja.

Regressiotestaus = testit, joita ajetaan uudestaan aina, kun ohjelmistoon on lisätty uutta koodia. Näin selviää, onko uusi koodi hajottanut aiemmin toiminutta koodia. Regressiotestaus tehdään yleensä testausautomaation avulla.

Suorituskykytestaus = testauksen muoto, jossa mitataan järjestelmän nopeutta yhden tai useamman käyttäjän käyttäessä järjestelmää. Usein apuna käytetään suorituskykytestauksen ohjelmistoa, joka esittää useita käyttäjiä ja mittaa samalla järjestelmän nopeutta.

Suorituskykyvika = ongelma tietojärjestelmän nopeudessa. Järjestelmä toimii, mutta hitaammin kuin on odotettu tai suunniteltu.

Suunnitelma = ajatukset siitä, miten ohjelmisto rakennetaan. Suunnitelmat voivat olla suullisia tai kirjoitettuja.

Tekninen arkkitehtuuri = tehdyt valinnat tietojärjestelmän käyttämistä valmisohjelmistoista, käytetystä ohjelmointikielestä ja siitä, miten tietojärjestelmän osat liittyvät toisiinsa.

Tekninen velka = korjaamattomat viat, hätäratkaisut ja muut asiat, jotka olisi pitänyt tehdä aiemmin, mutta joita ei ole tehty. Myöhemmin tekninen velka on hyvin kallis korjata.

Tekoäly = ohjelmisto, joka pystyy oppimaan itsenäisesti, kun sitä opetetaan. Se ei vain toista tehtäviä, kuten testiautomaatiota, vaan pystyy tekemään tehtäviä uudella tavalla. Se pystyy vaikkapa yhdistämään automaatiotestejä luovasti, kuten oikea testaaja pystyisi.

Testaaja = ihminen, joka testaa. Ihminen, jolla on testaustaitoja. Voi olla testaaja, koodaaja, ylläpitäjä tai käyttäjä.

Testata = Kokeilla tai tutkia eri arvoilla, eri järjestyksessä, eri tavoilla toimiiko joku ollenkaan, tai miten hyvin se toimii. Testauksen lopputuloksena löytyy joskus vikoja. Tarkkaan ottaen testaamalla huomaa yleensä ohjelmistossa häiriön, joka johtuu yleensä viasta koodissa.

Testattavuus = se, miten helppoa on testata. Ohjelmistokehitysympäristö ja koodaajien valinnat vaikuttavat testattavuuteen, parantaen tai heikentäen sitä.

Testauksen kohde = ohjelmisto tai tietojärjestelmä, jota testataan.

Testausautomaatio = testit, joita ajetaan testausautomaatio-ohjelmistolla, ilman testaajaa. Testaaja luo ja muokkaa automaatiotestejä.

Testaustekniikka = tapa, jolla valitaan sopiva määrä testejä, jotta saadaan testattua hyvin ja kattavasti. Tekniikoita on hyvin monenlaisia, erilaisiin tarpeisiin.

Testausvika = testauksesta johtuva vika, jota ei oikeasti ole. Testaajalle tällainen vika näyttää aluksi oikealta vialta. Vika johtuu väärinymmärryksestä, testausympäristöstä tai muusta testaajan valinnasta.

Testausympäristö = ohjelmiston asennus jollekin tietokoneelle testausta varten. Testausympäristön pitäisi vastata käyttäjien oikeaa ympäristöä, mutta näin ei aina ole. Testausympäristö pidetään erillään oikeasta ympäristöstä, jotta käyttäjät eivät saisi keskeneräisiä asioita.

Testiaineisto = kaikki numerot, tekstit, sisällöt, kuvat ja käyttäjätunnukset, joita ohjelmistossa käytetään testauksen aikana. Testiaineiston pitäisi vastata oikeiden käyttäjien käyttämää aineistoa.

Tietojärjestelmä = kun ohjelmisto on laajempi kuin ohjelmisto yhdelle laitteelle, se on tietojärjestelmä, tai järjestelmä. Tietojärjestelmä ei ole kokonaan käyttäjän tietokoneella. Siihen otetaan yhteys verkon tai internetin kautta.

Tietojärjestelmän ylläpitäjä = ihminen, joka huolehtii, että tietojärjestelmä toimii moitteetta. Hän korjaa ongelmia ja muuttaa tietojärjestelmää tarvittaessa. Muutokset voivat olla vikakorjauksia, mutta myös uusia toiminnallisuuksia, jotka ohjelmistokehitystiimi on tehnyt.

Tietokanta = tietojärjestelmän osa, jossa tietoja säilytetään

Tietokone = laite, jossa ohjelmisto toimii. Tietokone on varsinaisesti laite, jossa on iso näyttö ja näppäimistö, siis esimerkiksi kannettava tietokone eli läppäri. Kuitenkin myös kännykkä eli matkapuhelin on pieni tietokone. Autossa on tietokone, jossa sen ohjelmisto toimii.

Tietotekniikka = kaikki asiat, joita tarvitaan tietokoneiden toimintaan, sisältäen ohjelmistot ja laitteet.

Tietotekniikkaprojekti = kokonaisuus, jonka aikana tiimi luo ohjelmistoon sovitut toiminnallisuudet sovitussa ajassa. Sanaa käytetään joskus kuvaamaan ohjelmistokehitystiimin työtä ilmankin sovittua aikaa.

Tietoturvallisuus = se, miten hyvin järjestelmän tietoturvaviat on poistettu ja hyökkäykset estetty.

Tietoturvatestaus = testauksen muoto, jossa etsitään tietoturvaongelmia. Sitä voi tehdä ohjelmistokehitystiimi itse, mutta usein sitä tekevät tietoturvatestaukseen erikoistuneet ihmiset.

Tietoturvavika = haavoittuvaisuus ohjelmistossa, jota hyödyntämällä hyökkääjä pääsee murtautumaan tietojärjestelmään.

Tilaaja = ihminen, joka pyytää rakentamaan ohjelmistotuotteen, eli ohjelmiston. Voi olla myös yritys, jota tietysti edustaa joku ihminen. Voidaan kutsua myös tuote-omistajaksi. Tuote-omistaja tarkentaa jatkuvasti kehitystiimin kanssa ohjelmiston vaatimuksia.

Tilannesidonnainen testaus = ajattelutapa, että tilanne vaikuttaa siihen, miten testataan. Tilanteeseen vaikuttavat esimerkiksi rakenteilla oleva ohjelmisto, kohdatut ongelmat, käyttäjät ja tiimi.

Toiminnallisuus = se, mitä ohjelmisto tekee. Verkkokaupasta voi ostaa asioita. Pankista saa rahaa. Toiminnallisuuden pitää toimia oikein kaikissa tilanteissa.

Turvallisuus = se, onko järjestelmä ihmiselle turvallinen. Kukaan ei saa vahingoittua tai kuolla.

Työkalu = ohjelmisto, jota käytetään työkaluna ohjelmiston rakentamiseen.

Vaatimukset = asiat, joita ohjelmiston pitää pystyä tekemään.

Vakavuus = viat luokitellaan usein vakavuuden mukaan. Vika voi olla vakava, mikä tarkoittaa, että se on kallis tai hyvin vahingollinen. Vika voi olla myös vähemmän vakava. Vakava vika pitää korjata nopeasti.

Valmisohjelmisto = jonkun toisen tekemä ohjelmisto, jota voidaan käyttää uuden ohjelmiston alustana tai komponenttina. Sanotaan myös kolmannen osapuolen ohjelmistoksi.

Vapauttaa muistia = kun ohjelmisto ei tarvitse enää muistin jonkin koodirivin ajamiseen, muisti pitää vapauttaa muuhun käyttöön. Vapauttaminen voi olla automaattista, tai sen voi tehdä toisella koodirivillä.

Varata muistia = kun ohjelmiston koodiriviä ajetaan, tarvitsee se muistia, joka varataan käytettäväksi. Näin jokin toinen ohjelma ei voi käyttää sillä hetkellä tuota osaa muistista.

Verkko = eri laitteet yhdistävä tietotekniikan rakenne, joka koostuu tietokoneista, jotka ovat yhteydessä toisiinsa johdoilla tai ilman kautta. Verkoista suurin on internet, johon lähes kaikki maailman tietokoneet ovat yhteydessä.

Verkkokauppa = kauppa, johon pääsee tietokoneen ja verkon välityksellä. Sieltä ostetaan asioita, jotka tulevat myöhemmin kotiin postin tuomissa paketeissa. Verkkokauppa on sekin tietojärjestelmä.

Versio = tiettynä ajanhetkenä ollut ohjelmisto tai koodi. Kun tehdään muutos koodiin, syntyy uusi versio ohjelmistosta.

Versionhallinta = tapa tai ohjelmisto, jossa talletetaan jokainen lisäys koodiin uutena versiona ohjelmistosta.

Versionhallintavika = vika, joka toistuu, vaikka se on jo aiemmin korjattu. Versionhallinta on pettänyt.

Vika = Ohjelmiston koodissa oleva ongelma, jonka takia ohjelmisto toimii väärin. Kutsutaan puhekielessä usein bugiksi. Kutsutaan joskus myös virheeksi, vaikka tarkkaan ottaen virhe tarkoittaa ihmisen tekoa, jonka seurauksena vika syntyy koodiin. 

Vikaantuminen = vian syntyminen aiemmin ehjään asiaan.

Vikojen kylväminen = ohjelmistoon tehdään tarkoituksella vikoja. Ajatus on, että kun nämä viat on löydetty, on samalla löydetty kaikki viat. Vikojen kylväminen auttaa päättämään, milloin on testattu riittävästi.

Virhe = ihmisen inhimillinen erehdys, jonka vuoksi koodiin on päätynyt vika.

Yritys = monien ihmisten yhteisö, jolle on annettu oma nimi, tarkoitus, ja paikka maailmassa. Ihmiset tekevät töitä yrityksissä ja saavat vastineeksi rahaa palkaksi.

Ylläpitotiimi = ylläpitäjät, eli ihmiset, jotka huolehtivat ohjelmiston toimivuudesta, kun sitä käytetään. Ylläpitotiimi yrittää monesti pärjätä itsekseen ongelmien kanssa, mutta pyytää tarvittaessa apua kehitystiimiltä.

Comments

Popular posts from this blog

How it all started

Back to my authoring roots - 1995

Free testing presentation for schools