Kokeiden arvioinnista TIES542 Ohjelmointikielten periaatteet, kevät 2016

Samankaltaiset tiedostot
ABHELSINKI UNIVERSITY OF TECHNOLOGY

Harjoitus 7: NCSS - Tilastollinen analyysi

Tilastollinen testaus. Vilkkumaa / Kuusinen 1

Mat Tilastollisen analyysin perusteet, kevät 2007

Odotusarvoparien vertailu. Vilkkumaa / Kuusinen 1

Väliestimointi (jatkoa) Heliövaara 1

OHJ-7600 Ihminen ja tekniikka -seminaari, 4 op Käyttäjäkokemuksen kvantitatiivinen analyysi. Luento 3

Sovellettu todennäköisyyslaskenta B

Luentokalvoja tilastollisesta päättelystä. Kalvot laatinut Aki Taanila Päivitetty

T Luonnollisen kielen tilastollinen käsittely Vastaukset 3, ti , 8:30-10:00 Kollokaatiot, Versio 1.1

Tässä harjoituksessa käydään läpi R-ohjelman käyttöä esimerkkidatan avulla. eli matriisissa on 200 riviä (havainnot) ja 7 saraketta (mittaus-arvot)

Matemaatikot ja tilastotieteilijät

Yksisuuntainen varianssianalyysi (jatkoa) Heliövaara 1

Tekijä(t) Vuosi Nro. Arviointikriteeri K E? NA

Pienet ännät tutkimuksessa Tilastollisen analyysin työpaja. Jari Westerholm Niilo Mäki instituutti Jyväskylän yliopisto

Perusnäkymä yksisuuntaiseen ANOVAaan

Yksisuuntainen varianssianalyysi (jatkoa) Kuusinen/Heliövaara 1

Aineistoista. Laadulliset menetelmät: miksi tarpeen? Haastattelut, fokusryhmät, havainnointi, historiantutkimus, miksei videointikin

Mitä tarvitsee tietää biostatistiikasta ja miksi? Matti Uhari Lastentautien klinikka Oulun yliopisto

Argumenteista ja niiden arvioinnista TIES542 Ohjelmointikielten periaatteet, kevät 2016

T Luonnollisten kielten tilastollinen käsittely

Estimointi. Luottamusvälin laskeminen keskiarvolle α/2 α/2 0.1

Otoskoon arviointi. Tero Vahlberg

Kliininen arviointi ja kliininen tieto mikä riittää?

2. TILASTOLLINEN TESTAAMINEN...

Tilastollisen analyysin perusteet Luento 8: Lineaarinen regressio, testejä ja luottamusvälejä

Tilastollisia peruskäsitteitä ja Monte Carlo

Tilastollisen analyysin perusteet Luento 10: Johdatus varianssianalyysiin

Tilastollisen analyysin perusteet Luento 2: Tilastolliset testit

Kokeellinen yhteiskuntatiede

MONISTE 2 Kirjoittanut Elina Katainen

Tilastotieteen jatkokurssi syksy 2003 Välikoe

Luottamisvälin avulla voidaan arvioida populaation tuntematonta parametria.

Mat Sovellettu todennäköisyyslasku A

Tilastollisten aineistojen kerääminen ja mittaaminen

Tilastollinen testaaminen tai Tilastollinen päättely. Geneettinen analyysi

Sisällysluettelo ESIPUHE KIRJAN 1. PAINOKSEEN...3 ESIPUHE KIRJAN 2. PAINOKSEEN...3 SISÄLLYSLUETTELO...4

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Estimointi. Otantajakauma

Luottamisvälin avulla voidaan arvioida populaation tuntematonta parametria.

7. Lohkominen ja sulautus 2 k kokeissa. Lohkominen (Blocking)

Sanajärjestyksen ja intensiteetin vaikutus suomen intonaation havaitsemisessa ja tuotossa

pitkittäisaineistoissa

Kokeellinen interventiotutkimus

Sovellettu todennäköisyyslaskenta B

Mitä eri tutkimusmetodeilla tuotetusta tiedosta voidaan päätellä? Juha Pekkanen, prof Hjelt Instituutti, HY Terveyden ja Hyvinvoinnin laitos

Kieli merkitys ja logiikka. 2: Helpot ja monimutkaiset. Luento 2. Monimutkaiset ongelmat. Monimutkaiset ongelmat

Tutkimusasetelmat. - Oikea asetelma oikeaan paikkaan - Vaikeakin tutkimusongelma voi olla ratkaistavissa oikealla tutkimusasetelmalla

¼ ¼ joten tulokset ovat muuttuneet ja nimenomaan huontontuneet eivätkä tulleet paremmiksi.

Koesuunnittelu ja tilastolliset mallit Johdanto. TKK (c) Ilkka Mellin (2005) 1

FoA5 Tilastollisen analyysin perusteet puheentutkimuksessa. 9. luento. Pertti Palo

Kandidaatintutkielman aineistonkeruu ja analyysi

Aineistokoko ja voima-analyysi

Johdatus tilastotieteeseen Tilastollisten aineistojen kerääminen ja mittaaminen. TKK (c) Ilkka Mellin (2005) 1

Sovellettu todennäköisyyslaskenta B

Sisällysluettelo ESIPUHE... 4 ALKUSANAT E-KIRJA VERSIOON... 5 SISÄLLYSLUETTELO JOHDANTO TILASTOLLISEEN PÄÄTTELYYN TODENNÄKÖISYYS...

pitkittäisaineistoissa

HAVAITUT JA ODOTETUT FREKVENSSIT

Mat Tilastollisen analyysin perusteet, kevät 2007

Ilkka Mellin Tilastolliset menetelmät. Osa 3: Tilastolliset testit. Tilastollinen testaus. TKK (c) Ilkka Mellin (2007) 1

Puheentutkimuksen tilastoanalyysin perusteet. 8. luento. Pertti Palo

Jos nyt on saatu havaintoarvot Ü ½ Ü Ò niin suurimman uskottavuuden

voidaan hylätä, pienempi vai suurempi kuin 1 %?

10. laskuharjoituskierros, vko 14, ratkaisut

Aki Taanila VARIANSSIANALYYSI

Mitä IHMEttä on MIXTURE -mallintaminen?

Luottamisvälin avulla voidaan arvioida populaation tuntematonta parametria.

Prolog kielenä Periaatteet Yhteenveto. Prolog. Toni ja Laura Fadjukoff. 9. joulukuuta 2010

MTTTP5, luento Luottamusväli, määritelmä

SELVITTÄJÄN KOMPETENSSISTA

PÄIVI PORTAANKORVA-KOIVISTO

Move! laadun varmistus arvioinnissa. Marjo Rinne, TtT, erikoistutkija UKK instituutti, Tampere

Tilastollisen analyysin perusteet Luento 11: Epäparametrinen vastine ANOVAlle

TIEA255 Tietotekniikan teemaseminaari ohjelmointikielet ja kehitysalustat. Antti-Juhani Kaijanaho. 16. helmikuuta 2011

Tietotekniikan valintakoe

FoA5 Tilastollisen analyysin perusteet puheentutkimuksessa. 6. luento. Pertti Palo

Kynä-paperi -harjoitukset. Taina Lehtinen Taina I Lehtinen Helsingin yliopisto

MTTTA1 Tilastomenetelmien perusteet 5 op Luento , osa 1. 1 Kokonaisuudet johon opintojakso kuuluu

Johdatus tilastotieteeseen Testit suhdeasteikollisille muuttujille. TKK (c) Ilkka Mellin (2004) 1

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.

Testejä suhdeasteikollisille muuttujille

Johdatus tilastotieteeseen Tilastollisten aineistojen kerääminen ja mittaaminen. TKK (c) Ilkka Mellin (2004) 1

1. Tutkitaan tavallista kahden selittäjän regressiomallia

χ = Mat Sovellettu todennäköisyyslasku 11. harjoitukset/ratkaisut

Tietojenkäsittelyteorian alkeet, osa 2

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi. Viikko 5

Lisätehtäviä ratkaisuineen luentomonisteen lukuun 6 liittyen., jos otoskeskiarvo on suurempi kuin 13,96. Mikä on testissä käytetty α:n arvo?

r = n = 121 Tilastollista testausta varten määritetään aluksi hypoteesit.

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään

Sovellettu todennäköisyyslaskenta B

Opetusmateriaali. Tutkimustehtävien tekeminen

KLIINISTEN TUTKIMUSTEN SUUNNITTELU JA KOEASETELMAT. Vesa Kiviniemi (FL) Itä-Suomen yliopisto

Perimmäinen kysymys. Työllistämisen tukitoimien vaikuttavuuden arvioinnista. Mitkä ovat tukitoimen X vaikutukset Y:hyn? Kari Hämäläinen (VATT)

VALTIOTIETEELLINEN TIEDEKUNTA TILASTOTIETEEN VALINTAKOE Ratkaisut ja arvostelu < X 170

Interventiotutkimuksen arviointi

Tilastollisen tutkimuksen vaiheet

MTTTA1 Tilastomenetelmien perusteet 5 op Luento Kokonaisuudet johon opintojakso kuuluu

Tilastollisen analyysin perusteet Luento 4: Testi suhteelliselle osuudelle

12. Javan toistorakenteet 12.1

Transkriptio:

Kokeiden arvioinnista TIES542 Ohjelmointikielten periaatteet, kevät 2016 Antti-Juhani Kaijanaho 19. tammikuuta 2016 Kokeella (engl. experiment) tarkoitan tässä monisteessa tutkimusta, jossa tutkijat pyrkivät todellista koetilannetta manipuloimalla tuottamaan mitattavia muutoksia tai eroja koetilanteessa. 1 Koeasetelma Tyypillinen (joskaan ei ainoa mahdollinen) koeasetelma on seuraavanlainen. Tutkijat pyrkivät osoittamaan, että ohjelmointikieli A on parempi kuin ohjelmointikieli B. He rekrytoivat jostakin 2n koehenkilöä (engl. experimental subject, participant), jotka eivät osaa kumpaakaan kieltä, ja jakavat heidät arvalla kahteen n ihmisen ryhmään. Toiselle ryhmälle he opettavat kielen A ja toiselle kielen B. Sen jälkeen he laittavat kummankin ryhmän toteuttamaan jonkin tietyn ohjelmointitehtävän sillä kielellä, joka heille opetettiin. Kunkin koehenkilön käyttämä aika hyväksyttävään lopputulokseen kirjataan ylös. Ryhmien keskimääräisillä suoriutumisajoilla huomataan olevan eroa kielen A hyväksi; tilastollisella testillä todetaan p = 0.02. Tutkijat raportoivat kielen A olevan keskimäärin parempi kuin kieli B. 1 Tässä kuvitteellisessa esimerkissä manipulointi ilmenee siten, että osalle koehenkilöistä opetetaan yksi kieli ja osalle toinen kieli, ja kukin laitetaan laatimaan oppimallaan kielellä tietty ohjelma. Tällä manipuloinnilla saadaan aikaan mitattava ero ryhmien välille keskimääräisessä suoriutumisajassa. Kokeiden analyysissä koemanipulaatio mallitetaan mahdollisimman yksinkertaisena matemaattisena muuttujana, jota kutsutaan riippumattomaksi muuttujaksi (engl. independent variable). Riippumattoman muuttujan arvoja kutsutaan toisinaan käsittelyiksi (engl. treatment). Kokeen tulos johdetaan puolestaan mittauksista, jotka mallitetaan riippuvana muuttujana (engl. dependent variable). Ylläolevassa esimerkissä riippumattomaksi muuttujaksi 1 Tämä ei ole esimerkki hyvästä kokeesta. Koeasetelmaan liittyy ongelmia. 1

kelpaa ohjelmointikieli sillä on kaksi arvoa, A ja B, jotka ovat siten käsittelyjä ja riippuvaksi muuttujaksi aika hyväksyttyyn suoritukseen se on positiivinen reaaliluku. 2 Ylläoleva esimerkkikoe on koehenkilöiden välinen (engl. between subjects): kullekin koehenkilölle määrätään yksi riippumattoman muuttujan arvo ja kokeen tulos luetaan vertailemalla koehenkilöiden tuloksia toisiinsa. Jotkut kokeet ovat koehenkilöiden sisäisiä (engl. within subjects): jokainen koehenkilö testataan riippumattoman muuttujan kaikilla arvoilla ja kokeen tulos luetaan vertailemalla kunkin koehenkilön omia tuloksia toisiinsa; jos esimerkkikokeessa jokainen koehenkilö opettelisi molemmat kielet ja ohjelmoisi testiohjelman kummallakin kielellä, koe olisi koehenkilöiden sisäinen. Yksi tärkeimmistä kokeen luotettavuuteen vaikuttavista kysymyksistä on, onko se kontrolloitu. Kontrolloidussa kokeessa on aina kyse kahden tai useamman eri käsittelyn vertailusta. Tavallisesti yksi tai useampi vertailtavista käsittelyistä on kontrolli, jolloin muita kutsutaan interventioiksi, ja tällöin tarkoitus on, että mikäli kontrolli pärjää paremmin kuin jokin interventioista, kyseinen interventio on kokeen perusteella hylättävä. Kontrollina käytetään yleensä jotain yleisesti hyväksyttyä ja laajasti käytettyä käsittelyä. Esimerkiksi, jos kokeen tarkoituksena on osoittaa uuden ohjelmointikielen ylivertaisuus, voidaan kontrolliksi ottaa jokin vertailukohdaksi sopiva laajasti käytössä oleva kieli. Kokeen kontrolliin kuuluu olennaisena seikkana se, että kaikki muut tekijät kuin riippumattomat muuttujat pyritään pitämään muuttumattomina. Lisäksi joskus ennakoitavissa olevat häiriötekijät pyritään sulkemaan pois tilastollisin keinoin käyttämällä niitä kovariaatteina. Esimerkkikokeessa ongelmana on esimerkiksi se, kuinka nämä kaksi kieltä voidaan opettaa tasavertaisesti niin, että opetuksesta ei johdu kokeen luotettavuutta sekoittavia eroja. Koehenkilöiden sisäisissä kokeissa on lisäksi kontrolloitava myös järjestys, jolla käsittelyitä testataan. Jos esimerkiksi vertaillaan Javaa ja C#:aa, tulee joillakin koehenkilöillä ensin testata Javaa ja sitten C#:aa ja toisilla ensin C#:aa ja sitten Javaa. Tätä kutsutaan koeasetelman tasapainottamikseksi (engl. counterbalancing). Jos kaikki mahdolliset järjestykset testataan, koeasetelma on täysin tasapainotettu (engl. fully counterbalanced). Jos tasapainotus jätetään tekemättä tai se tehdään vaillinaisesti, voi olla, että osa havaitusta tuloksesta selittyy valitulla järjestyksellä. 2 Joskus kokeissa mitataan riippuvien muuttujien lisäksi kovariaatteja (engl. covariant). Näitä muuttujia ei koeasetelmassa manipuloida eikä niistä lueta kokeen tulosta, mutta niiden arvellaan vaikuttavan jollakin tavalla kokeen lopputulokseen ja niitä siksi käytetään tulosten tilastollisessa analyysissä apuna. Ylläolevassa esimerkissä ei ole kovariaatteja mitattu, mutta esimerkiksi koehenkilön opiskelumenestystä olisi voitu käyttää kovariaattina. 2

Koehenkilöiden jako ryhmiin tapahtuu tavallisesti arpomalla. Tällöin puhutaan satunnaistetusta kokeesta (engl. randomized controlled trial (RCT)). Arpomisen etu on, että tällöin kukaan ihminen ei voi vahingossa tai tahallaan vaikuttaa ryhmien muodostumiseen eikä siten voi antaa jollekin käsittelylle etulyöntiasemaa. Arpomisen haittana on, että se on todella vaikea tehdä oikein, ja se voi joskus aiheuttaa eettisiä ongelmia. 3 Joskus koeraportti väittää kokeen olevan satunnaistettu vaikka se oikeasti sitä ei ole: esimerkiksi ryhmiin jako koehenkilöiden nimien MD5-tarkistussummien perusteella ei ole satunnainen vaan systemaattinen. Samassa kokeessa voidaan testata useiden riippumattomien muuttujien vaikutusta riippuviin muuttujiin samanaikaisesti. Tällöin puhutaan faktorikoeasetelmasta (engl. factorial design) ja riippumattomia muuttujia kutsutaan tässä yhteydessä usein faktoreiksi (engl. factor). Esimerkiksi Fischer ja Hanenberg 4 käyttivät riippumattomina muuttujina eli faktoreina ohjelmointikieltä (JavaScript vai TypeScript) ja koodintäydennystä (päällä vai pois). Tällöin asianmukainen kokeen kontrolli vaatii, että kaikkia riippumattomien muuttujien arvojen yhdistelmiä testataan. Kahden riippumattoman muuttujan tapauksessa piirretään usein taulukko, jossa muttujien yhdistelmien jakaminen koehenkilöryhmille ilmoitetaan. Esimerkiksi: 5 code completion no code completion JavaScript Group 1 Group 2 TypeScript Group 3 Group 4 Se, onko koe koehenkilöiden välinen vai koehenkilöiden sisäinen, voi olla kullekin riippumattomalle muuttujalle eri. Esimerkiksi edellä mainitussa Fischerin ja Hanenbergin kokeessa koodintäydennys on koehenkilöiden välinen ja kieli koehenkilöiden sisäinen (osittain tasapainotettu) faktori. Niinpä heidän todellinen koeasetelmansa vaatii kaksiosaisen taulukon (suora lainaus kuten edellä, ilman poistoja): 3 Joskus väitetään, että satunnaistaminen poistaa kaikki häiritsevät tekijät kokeesta. Tämä on varsin uskomaton väite, enkä ole sille koskaan nähnyt hyvää perustelua. 4 Lars Fischer, Stefan Hanenberg: An Empirical Investigation of the Effects of Type Systems and Code Completion on API Usability using TypeScript and JavaScript in MS Visual Studio. In Proceedings of the 11th Symposium on Dynamic Languages (DLS 15), 154 167, 2015. doi:10.1145/2816707.2816720 5 Taulukko on suora lainaus edellämainitusta Fischerin ja Hanenbergin tutkimuksesta, heidän kuvansa 2 sivulta 157, round 1, kierroksen nimi poistettu. 3

Round 1 code completion no code completion JavaScript Group 1 Group 2 TypeScript Group 3 Group 4 Round 2 code completion no code completion TypeScript Group 1 Group 2 JavaScript Group 3 Group 4 2 Kokeen tulosten analyysi Miten tahansa koe onkaan järjestetty, tuloksena on tavallisesti joukko riippuvan muuttujan mittauksia, joista jokaiseen liittyy mm. tieto, millä riippumattoman muuttujan arvolla se on mitattu. Tästä tilastoaineistosta voidaan sitten laskea havaittu efekti. Ylläolevan kuvitteellisen kokeen tapauksessa lasketaan hyväksyttyyn suoritukseen käytetyn ajan keskiarvo kummallekin kielelle erikseen; havaittu efekti on näiden erotus. Edellä mainitun Fischerin ja Hanenbergin kokeen havaittu efekti on myös hyväksyttyyn suoritukseen vaaditun ajan keskiarvojen erotus. Havaitun efektin pistearvo ei sinänsä kerro mitään. Siksi usein koeraportissa ilmoitetaan myös sen luottamusväli (engl. confidence interval). Luottamusvälin kanssa tulee aina ilmoittaa myös luottamustaso (yleensä, mutta ei aina, 95 %). Tämä usein ilmoitetaan esimerkiksi näin: The observed difference in mean time to successful completion was 15 minutes (95 % CI 10 to 20 minutes). Luottamusvälin käsite on varsin hankala ymmärtää, ja se usein selitetään väärin. Edellä esitetty raportti ei tarkoita, että todellinen efekti olisi 95 %:n todennäköisyydellä 10 ja 20 minuutin välillä. Sen sijaan se tarkoittaa, että jos käyttäydymme ikään kuin todellinen efekti olisi 10 ja 20 minuutin välillä, teemme virheen 5 %:n todennäköisyydellä. Luottamusvälin asemesta tai sen lisäksi usein raportoidaan tilastollinen hypoteesitesti. Tavanomaisesti testattava hypoteesi 6 on, että todellinen efekti on nolla (eli eroa ei todellisuudessa ole), ja vaihtoehtoinen hypoteesi on, että todellinen efekti on jotain muuta kuin nolla (eli eroa on, joskin sen suuruusluokasta ei ole tietoa). Lisäksi kiinnitetään käytettävä testi sekä α-taso eli todennäköisyys, jolla testi virheellisesti kertoo testattavan hypoteesin olevan väärä. Tämän jälkeen voidaan koedata ajaa tilastollisen analyysiohjelmiston läpi ja katsoa, millaisen p-arvon ohjelma antaa valitulla testillä. Jos p < α, testattava hypoteesi hylätään. Tavallisesti tutkimusraportissa ilmoitetaan valittu testi, valittu α-taso sekä aineistosta laskettu p-arvo. 6 Testattavaa hypoteesia kutsutaan joskus myös nollahypoteesiksi (engl. null hypothesis). 4

On tavallista, että tutkimusraportissa käytetään ilmaisua tilastollisesti merkitsevä (engl. statistically significant). Tämä tarkoittaa vain, että hypoteesitestissä testattava hypoteesi hylättiin. Raportissa pitäisi aina myös ilmoittaa, mitä α-tasoa eli merkitsevyystasoa (engl. significance level) käytettiin. Hypoteesitesti on yhtä vaikea tulkittava kuin luottamusvälikin. Yleinen virhe on tulkita raportoitu p-arvo testattavan hypoteesin todennäköisyydeksi; sitä se ei ole. Oikea tulkinta on: mikäli aina, kun testattava hypoteeesi hylätään, käyttäydymme ikään kuin se olisi epätosi, teemme virheen todennäköisyydellä α. Hypoteesitesteihin liittyy merkittävä ongelma, jota kutsutaan p-arvon nikkaroimiseksi (engl. p-value hacking). Luottamustaso ja merkitsevyystaso ilmaisevat todennäköisyyden kertatestauksen virheelle. Jos testejä tehdään runsaasti, todennäköisyys sille, että ainakin yksi antaa tilastollisesti merkitsevän tuloksen, kasvaa. Esimerkiksi jos tehdään sata testiä merkitsevyystasolla α = 0.05, on todennäköisyys, että ainakin yksi niistä tuottaa tilastollisesti merkitsevän tuloksen vaikka mitään todellista ilmiötä ei havaittu, 1 (1 0.05) 100 0.99. Asiaa kuvaa hyvin kuvan 1 sarjakuva. 7 Hypoteesitesti ja luottamusväli kertovat olennaisesti saman informaation: jos nolla ei sisälly (1 p) 100 %:n luottamusväliin, vastaava hypoteesin tulos on nolla testi α-tasolla p on tilastollisesti merkisevä. Myös p-arvon nikkarointi on luottamusvälienkin ongelma. Kokeen analyysineen voi tulkita induktiiviseksi argumentiksi: teimme näin, havaitsimme noin, sen vuoksi on niin. Aiemmassa monisteessa mainitsemani subjektiiviseen todennäköisyyteen perustava argumentin analyysi voi käyttää tällaisia tilastollisia analyysejä apunaan. Valitettavasti sen tekeminen täsmällisesti numeroiden kanssa on työlästä: tavallisesti raportoitujen tietojen lisäksi tarvitaan käytetyn testin voimafunktio. 8 3 Validiteettiuhat Kokeiden arvioinnissä käytetään tavallisesti validiteettiuhkien (engl. threats to validity) käsitettä. Tässä validiteetilla ei valitettavasti tarkoiteta deduktiivisen argumentin validiteettia. Validiteettiuhka tarkoittaa potentiaalisia 7 Ks. esim. Joseph P. Simmons, Leif D. Nelson, Uri Simonsohn: False-Positive Psychology: Undisclosed Flexibility in Data Collection and Analysis Allows Presenting Anything as Significant. Psychological Science 22 (11), 1359 1366, 2011. doi:10.1177/0956797611417632. 8 Asiaa on käsitelty tarkemmin väitöskirjani luvussa 4.5. Antti-Juhani Kaijanaho: Evidence-Based Programming Language Design: A Philosophical and Methodological Exploration. University of Jyväskylä, Jyväskylä Studies in Computing 222, 2015. 5

Kuva 1: Randall Munroe. XKCD: Significant https://xkcd.com/882/. CC BY-NC. 6

syytä, jonka vuoksi kokeen tulos voi olla virheellinen. Hyvä koeraportti sisältää jo itse validiteettiuhkien tarkastelua, mutta kriittisen lukijan tulee aina pohtia asiaa myös itse. Tässä yhteydessä puhutaan usein seuraavista validiteettityypeistä: Konstruktiovaliditeetti (engl. construct validity) Usein kokeella halutaan selvittää vastaus johonkin hankalasti mitattavaan kysymykseen. Koetta varten kysymystä muokataan niin, että siitä tulee mitattava. Tähän muokkaamiseen liittyy vakava uhka siitä, että koe ei enää mittaa sitä, mitä sen on tarkoitus mitata. Esimerkiksi koe, joka haluaa verrata staattista ja dynaamista tyypitystä, saattaa testata asiaa vertaamalla TypeScriptiä ja JavaScriptiä; kysymys on, katoaako tässä yksinkertaistuksessa jotain oleellista? Sisäinen validiteetti (engl. internal validity) Kokeen sisäisen logiikan pätevyys. Ulkoinen validiteetti (engl. external validity) Kokeen tulosten yleistettävyys muihin kuin itse koetilanteeseen ja muihin ihmisiin kuin koehenkilöihin. 4 Koeraportin arviointi Aivan ensimmäinen kysymys koeraportin arvioinnissa on, onko kyseessä oikeasti koe. Moni tutkimusraportti kuvailee itseään sanalla experiment olematta oikeasti koe. Älä luota pelkästään siihen, että raportissa esiintyy kyseinen sana! Koeraportin arvioinnissa tulee selvittää, mitä kokeessa oikeasti testattiin. Mitkä olivat riippumattomat ja riippuvat muuttujat? Tässä ei kannata luottaa koeraportin omiin luonnehdintoihin, sillä ne ovat usein ylioptimistisia tai muuten epätarkkoja; esimerkiksi, jos kokeessa verrataan TypeScriptiä ja JavaScriptiä, koeraportissa saatetaan silti puhua koko ajan dynaamisen ja staattisen tyypityksen vertaamisesta vaikka näillä kielillä on muitakin eroja kuin pelkästään tyypitys. Tämän jälkeen kokeen arvioinnissa kannattaa noudattaa Paul Glaszioun urheilukilpailuanalogiaa 9 First, was there a fair start? [... ] Second, was the race fair? [... ] Third, was it a fair finish? 9 Sharon E. Straus, Paul Glasziou, W. Scott Richardson, R. Brian Haynes: Evidence- Based Medicine: How to practice and teach it. 4th Edition. Edinburgh: Churchill Livingstone, 2011. Lainaus sivulta 63. 7

Reilu lähtö: tarkista koeasetelman asianmukaisuus. Onko koe asianmukaisesti kontrolloitu? Tehtiinkö ryhmäjako arpomalla tai muulla tutkijoiden epäasiallista valtaa vähentävällä tavalla? Reilu kilpailu: Onko kokeen läpivienti tehty niin, että kaikilla käsittelyillä on yhtäläinen mahdollisuus pärjätä? Esimerkiksi kahta kieltä vertailevassa kokeessa koehenkilöillä voi olla huomattavasti enemmän aiempaa kokemusta toisesta kielestä tai kieliä ei opeteta tasavertaisesti. Reilu maaliintulo: Analysoitiinko tulokset asianmukaisesti? Tyypillinen ongelma tässä on tilastollisten hypoteesitestien liikakäyttö, joka johtaa siihen, että tilastollisesti merkitseviä tuloksia tulee lähes varmasti riippumatta siitä, onko todellista vaikutusta olemassa. Useiden yksittäisten testien asemesta on aina parempi käyttää kokeen kokonaisuuden kerta-analyysiä monimuuttujamenetelmillä (esim. ANOVA). Hankalaksi tämän arvioinnin tekee se, että moni raportoi vain tilastollisesti merkitsevät testit, eikä lukija siten voi tietää, kuinka paljon tehtiin muita testejä. Jos ongelmia löytyy, pitää arvioida, ovatko ongelmat niin vakavia, että ne vaarantavat tulosten luotettavuuden. 8