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
Post a Comment