Experimenteller Entwurf für kontrollierte Experimente Stefan Hanenberg (University of Duisburg-Essen) Eine intuitive Einführung Prolog ● Annahme für dieses Kapitel: Menschen als Bestandteil der Forschungsfrage ● Bsp. ● ● ● Menschen können mit Technik A besser.... Menschen machen weniger Fehler mit B... Je häufiger ich (Mensch) C machte, desto schlechter werde ich in D... Prolog Wie sind hier! [Hanenberg, Faith, Hope, Love, Onward'10] Intuitive Einführung (1) ● Beispiel und Diskussion ● Ich glaube, dass die Programmiersprache Java besser als Smalltalk für die Durchführung von Softwareprojekten geeignet ist. Wie kann ich den Nachweis erbringen? Intuitive Einführung (2) ● Erste Idee ● ● Ich lasse von 2 Entwicklerteams à 5 Personen einen HTML 1.0 Browser entwickeln, dann vergleiche ich, wann beide Gruppen die Aufgabe bewältigt haben Zweite Idee ● Ich lasse von 4 Studenten “HelloWorld” schreiben, 2 Stundenten in Java, 2 Studenten in Smalltalk. Dann vergleiche ich, welche der beiden Gruppen schneller war. Intuitive Einführung Gedankenexperiment für 2te Idee (1) ● Annahmen ● Es gibt keinen Zeitunterschied zwischen Java und Smalltalk ● Jeder Student braucht (gleichverteilt) zwischen 1 und 10 Minuten Zeit in Minuten ● Java 2, 9 Smalltalk 2, 3 Konklusion Da mean(Java) > mean(ST) → Smalltalk besser geeignet ● Was ist das Problem??? Intuitive Einführung Etwas Brainstorming... ● ● ● Unterschiedliche Lösungen Was wurde eigentlich gemessen (Sprach, IDE, Editor, Vertrautheit mit Editor, Zeit, bis Student aufgibt)? Wie ist Bezug zur Aussage: „Java besser geeignet als Smalltalk?“ Terminologie für kontrollierte Experimente Ziele und Anforderungen an kontrollierte Experimente ● ● ● ● ● ● ● (Klare) Hypothesen Messen von abhängigen Variablen Kontrolle über freie Variablen und weitere Variablen (Möglichst) wenig Störfaktoren (Klarer) Experimenteller Aufbau Durchführung von Messungen Durchführung von quantitativen Analysen (Inferenzstatistik) Kontrollierte Experimente – warum? ● ● ● Aussagen über softwaretechnische Artefakte unter Einbeziehung der menschlichen Komponente Nachweis/Beleg für Richtigkeit einer „nicht vollständig formal beschreibbaren Ursache-Wirkung Beziehung“ Alternativen zu kontrollierten Experimenten ● ● Feldstudien, Case Studies Anmerkung: ● Für vollständig formal beschreibbare Aussagen sind empirische Methoden i.d.R. weniger geeignet Logik von kontrollierten Experimenten ● Grundlegende Idee aus dem kritischen Rationalismus ● Eine Hypothese wird geprüft (nicht bewiesen!) ● ● Das erfolgreiche Testen einer Hypothese erhöht das Vertrauen in diese (aber beweist sie nicht) Falsifizieren einer Hypothese zeigt (beweist), dass diese falsch ist Logik von kontrollierten Experimenten Aussagenlogische Formulierung ((H IMPL P) AND NOT P) IMPL NOT H H = Hypothese, P = Phänomen ● ● ● Wenn eine Hypothese ein Phänomen impliziert, dieses Phänomen aber nicht auftritt, so ist die Hypothese falsch Es muss nicht gezeigt werden, dass das Phänomen nicht auftritt, sondern nur, dass eine Implikation des Phänomens nicht auftritt Beispiel – – – Hypothese: „Es regnet“, Phänomen: „Draussen ist es nass“ Implikation des Phänomens: „Auf meiner Straße ist es nass“ Wenn es also auf meiner Straße nicht nass ist, dann ist Aussage „es regnet“ falsch Logik von kontrollierten Experimenten ● Kritik ● ● ● Falsifizierung einer Hypothese ist keine Boolsche Variable, sondern statistischer Wert Falsifizierung nicht endgültig (!!!), sondern nur “statistisch wahrscheinlich” Was tun, wenn Hypothese falsch ist? ● Idee 1: Gesamte Theorie verwerfen, neue Theorie erdenken – ● Gänzlich unpraktikabel (aber wissenschaftlich vertretbar) Idee 2: Teile der Theorie verwerfen und Modifizieren – Praktikabel (wenn auch aus wissenschaftlicher Sicht willkürlich => Widerspruch zu ad hoc Modifikationen a la Popper) Kontrollierte Experimente – Phasen ● Bestimmung der Hypothese(n) ● ● Verhältnis von abhängigen und unabhängigen Variablen Experimentaufbau ● Erstellung von Aufgaben, Fragebögen, etc. ● Experimentelles Design Anzahl von Gruppen, Zuordnung von Gruppen, etc. Experimentdurchführung – ● ● ● Statistische Analyse ● ● Räumlich / zeitliche Ähnlichkeit, etc. Gemessenes Verhältnis von abhängigen und unabhängigen Variablen / Vergleich mit Hypothesen Interpretation / Diskussion Hypothese ● Definition ● ● ● Überprüfbare (falsifizierbare) Aussage All-Aussage (keine Existenzaussage) D.h. Nach experimenteller Überprüfung ist unzweideutig klar, ob Hypothese widerlegt wurde Hypothese ● Beispiele “Java ist besser als Perl.” Keine Hypothese, da “besser” nicht quantifizierbar dargestellt “Die Entwicklung eines Java-Projekts kann bis zu 50% weniger Zeit beanspruchen als ein vergleichbares PerlProjekt.” Keine Hypothese, da “kann bis zu” eine Existenzaussage, keine All-Aussage “Die Entwicklung eines Java-Programms dauert 50% weniger Zeit als die Entwicklung eines Perl-Programms.” Hypothese (wenn auch etwas naiv) Unterschiedliche Formen von Hypothesen ● Unterschiedshypothesen ● ● Zusammenhangshypothesen ● ● Sagt etwas über eine zweifach gestufte Änderung einer unabhängigen Variablen im Vergleich zu abhängiger Variablen aus Sagt etwas über die (mehrfache, ordinalskalierte) Änderung einer unabhängigen Variablen im Vergleich zu abhängiger Variablen aus Beispiele ● ● “Java-Entwicklung dauert weniger Zeit als eine Perl-Entwicklung.” (Unterschiedshypothese) “Je größer die Testüberdeckung mit einem Programm, desto höher die Anzahl der gefundenen Fehler.” (Zusammenhangshypothese) Von Hypothesen zu Theorien... ● ● Eine Menge von Hypothesen wird Theorie als bezeichnet Eine Theorie kann dadurch falsifiziert werden, indem eine der Hypothesen falsifiziert wird Falsifikation einer Theorie/Hypothese ● ● Für die Falsifikation einer Theorie (oder Hypothese) ist es ausreichend, eine Implikation der Theorie (oder Hypothese) zu falsifizieren Beispiel ● ● “Die Entwicklungszeiten von Programmen m.H.v. visuellen Programmiersprachen ist geringer als die Entwicklungszeiten von Programmen m.H.v. zeichenbasierten Programmiersprachen” Für Falsifikation ist es ausreichend eine zeichenbasierte und eine visuelle Sprache zu finden, für die das nicht gilt! Ziel eines Experiments ● Unterschiedshypothesen ● ● Zusammenhangshypothesen ● ● Feststellung eines Unterschieds Zusammenhang zwischen Variablen Messen von keinem Unterschied oder keinem Zusammenhang potentielles Problem ● ● 1. Interpretation: Es gibt keinen Unterschied 2. Interpretation: Das Experiment hat „Probleme“ (später mehr) Faustregel für Hypothesen Faustregel Hypothesen 1 Unterschiedshypothesen sind einfacher zu testen als Zusammenhangshypothesen. Faustregel Hypothesen 2 Hypothesen müssen immer wohlbegründet sein und vor der Experimentdurchführung aufgestellt werden Faustregel Hypothesen 3 Ziel des Experiments ist es, einen Unterschied herbeizuführen! Experimentaufbau – Vorüberlegungen und Fallstricke Probleme bei Experimenten ● Hauptproblem : Streuung und Effektgröße Probanden: das 10x Problem ● Aufgaben: das „HelloWorld“ und „WorldDomination“-Problem Messungen: Wie messen? ● ● ● Versuchsaufbauten : Welcher Aufbau passt? Das Problem: Streuung und Effektgröße ● Beispiel Vergleich zweier Systeme, beide Stichproben normalverteilt Beispiel 1: Gleiche Mittelwerte, untersch. Streuung Das Problem: Streuung und Effektgröße Beispiel 1: Gleiche Mittelwerte, untersch. Streuung Große Überlappung => kein (signifikanter) Unterschied ● Beispiel Wenn Streuung bei gleichem Mittelwert zu groß, dann kein gemessener Unterschied! Das Problem: Streuung und Effektgröße Beispiel 1: Gleiche Mittelwerte, untersch. Streuung Große Überlappung => kein (signifikanter) Unterschied ● Kleine Überlappung => Unterschied gemessen! Beispiel Wenn Streuung bei gleichem Mittelwert zu groß, dann kein gemessener Unterschied! ● Konsequenz ● Selbst wenn Unterschied vorhanden, kann große Streuung in Stichprobe den Unterschied „zu klein“ machen Das Problem: Streuung und Effektgröße ● Beispiel Vergleich zweier Systeme, beide Stichproben normalverteilt Beispiel 2: Untersch. Mittelwerte, gleiche Streuung Das Problem: Streuung und Effektgröße Beispiel 2: Untersch. Mittelwerte, gleiche Streuung Große Überlappung => kein Unterschied ● Kleine Überlappung => Unterschied Beispiel Wenn Differenz der Mittelwerte bei gleicher Streuung zu klein, dann kein signifikanter Unterschied ● Konsequenz ● Selbst wenn Unterschied vorhanden, können zu kleine Differenz der Mittelwerte Unterschied nicht feststellbar machen Das Problem: Streuung und Effektgröße ● ● ● Streuung (und zum Teil Effektgröße) wird unter anderem durch Störvariablen beeinflusst. Störvariablen: Einflußgröße auf ein Experiment, welches nicht im Fokus des Experiments steht Problem: Störvariablen beeinflussen Messergebnisse, obwohl Störvariablen nicht im Fokus des Experiments sind ● Beispiele für Störvariablen: Kulturelle Unterschiede zwischen Probanden, Unterschiedliche Programmierstile, Unterschiedliches Vorwissen, Tagesform, Konzentriertheit, Motivation, etc., individuelle Unterschiede, etc. ● Problem ● Größenordnung von Störvariablen häufig nicht bekannt in der Softwaretechnik Faustregeln für Experimente Faustregel Experimentaufbau 1 Versuche, Streuung im Experiment gering zu halten. Faustregel Experimentaufbau 2 Versuche, Unterschiede in Mittelwerten groß genug zu halten. ● Möglicher Einfluß des Experimentierers ● ● ● ● Aufgaben, die Probanden gegeben werden Training der Probanden Experimentaufbau ...etc.... Problem Probanden: das 10x Problem (1) Frage Was ist der Unterschied zwischen einem Experiment im Bereich Blutdruck (bei Menschen) und Benutzbarkeit von Programmiersprachen? Problem Probanden: das 10x Problem (2) Mögliche Antworten ● ● ● Ich kann keine „willkürliche Person“ testen – jeder „hat“ einen Blutdruck, aber nicht jeder Proband „kann“ eine Programmiersprache => Problem: Probandengewinnung Großes Wissen über Blutdruck vorhanden (Messwerkzeuge, Durchschnittswerte, Beziehung von Blutdruck und Krankheiten, etc.) über Programmiersprachen nicht => Problem: Experiment auf recht unbekanntem Terrain Es gibt keinen Menschen auf der Welt, der einen Blutdruck über 1000 hat, aber es gibt Leute, die HelloWorld in 30 sekunden schreiben, andere in 30 Minuten! ● => Problem: Das 10x Problem Problem Probanden: das 10x Problem (3) ● Allgemein akzeptierte Annahme Zwei (auch professionelle) Entwickler können um den Faktor 10 abweichen ● Konsequenz: Es ist immer mit sehr großer Streuung zwischen Probanden zu rechnen! ● ● ● Keine großen Studien über die „Größe“ des Problems (Faktor 5, 10, 100, 1000?) => Größenordnung unbekannt, Faktor 10 ist eine Zahl, die häufig anzutreffen ist.... Annahme „häufig“ in Literatur zu finden Experimentierer „sprechen häufig“ über das Problem der Probandenstreuung Faustregel: 10x-Problem Faustregel 10x-Problem Unterstelle beim Versuchsaufbau, in der Entwickler „entwickeln“, dass es eine sehr, sehr große Streuung zwischen Entwicklern gibt Problem: Aufgabenstellung ● Problem ● ● Aufgabenstellungen haben häufig großen Einfluß auf Messungen und Ergebnisse Ziel der Aufgabenstellung ● Es muss messbar sein – ● ● Ob (und ggf. wie) die Aufgabe gelöst wurde Resultierende Messwerte sollten gut die Hypothese widerspiegeln Störvariablen sollten keine nennenswerte Rolle spielen HelloWorld-Problem ● Überlegung ● ● ● Ich möchte Unterschiede in Entwicklungszeiten zwischen Java und Smalltalk feststellen (Annahme: t(Java)<t(ST)) Idee: Ich lasse 20 Studenten „HelloWorld“ schreiben (simpelste Aufgabenstellung) und Messe Entwicklungszeit HelloWorld-Problem ● ● ● Programmieraufgabe zu simpel Faktor Zufall großes Problem Wenn Lösung der Aufgabe nur 10 Sekunden dauert, dann spiegeln sich Faktoren wie Tippgeschwindigkeit, Niesen, Gähnen sehr stark in Messwerten nieder WorldDomination-Problem ● Überlegung ● ● ● Ich möchte Unterschiede in Entwicklungszeiten zwischen Java und Smalltalk feststellen (Annahme: t(Java)<t(ST)) Idee: Ich lasse 20 Erstsemesterstudenten einen Algorithmus zur Bestimmung der starken Zusammenhangskomponenten mit Laufzeit O(n 3) erstellen WorldDomination-Problem ● ● ● Programmieraufgabe zu schwer Viele, viele unterschiedliche Faktoren (Entwurfszeit, Rumprobieren, Kollegen fragen, etc.) beeinflussen Messergebnisse => Zeitmessung erfasst nicht das Wesentliche Unterschiede (im Verhältnis zur Gesamtaufgabe) zu gering => Aufgabe „konzentriert“ sich nicht auf Hypothese Aufgabenstellung ● Ziele ● ● ● Aufgabenstellung reflektiert unmittelbar die Hypothese Keine Messverluste für „Vorbereitung, Einlesen, etc.“ Aufgabe „irgendeinen Bezug zur Realität“ (...imme problematisch...) Aufgabenstellung Faustregel Aufgabenstellung Eine Aufgabe muss so gestellt sein, dass es für den Probanden und den Experimentierer „klar“ (objektiv) ersichtlich ist, dass und wie eine Aufgabe gelöst wurde. ● Klassisches Problem: ● ● Aufgabe: Schreiben Sie HelloWorld möglichst elegant und modular ....ist einem Probanden die Aufgabenstellung klar? Problem: Wie messen? ● Messen hängt direkt von Hypothese ab Wenn Hypothese eine Aussage über Zeit ist, sollte ich keinen Blutdruck messen... ● Unterschiedliche Formen des Messens ● Direkte Messung – ● Indirekte Messung – ● Hypothese „Zeit bis zur Abgabe...“ => Zeitmessung Hypothese „Verständnis wird größer...“ => Messung der Anzahl der Fehler Meinungsbasierte Messungen – Hypothese „Entwurf verbessert sich....“ => Lass Entwürfe von Experten begutachten Problem: Wie messen? ● Messarten beeinflussen Experimentgüte ● Direkte Messung – – ● Indirekte Messung – ● „Relativ geradlinige“ quantitative Auswertung Unterschiedliche Verfahren für unterschiedliche Skalen Häufiges Problem: Unklares Verhältnis zu Hypothese Meinungsbasierte Messung – – – Gutachter müssen vorgebildet werden (Bewertungskriterien, etc. => häufig unklar) Gutachter stellen selbst Stichprobe dar (das Streuungsproblem ist nun auch in der Messung drin!) Es muss erst festgestellt werden, ob Gutachter übereinstimmen! Problem: Wie messen? ● Verhältnis von Messung auf Aufgabe ● ● Messung sollt „möglichst genau“ hinsichtlich Aufgabenstellung sein „Vorarbeiten“ (Einlesezeit, Einarbeitungszeit, Zeit für Verständnis des Problems, Erlernen der eingesetzten Techniken, etc.) sollte möglichst außerhalb der Messung liegen Problem: Wie messen? ● Aufgabe und Messung müssen „harmonieren“ ● Bsp: – – Messung der Anzahl der Laufzeitfehler in resultierender Software Aufgabenstellung (und Entwicklungszeit) muss ausreichen, damit a) Aufgaben nicht „alle a) Aufgaben nicht „alle „ausreichend gut“ gelöst werden können, damit vollständige inkorrekte Programme“ abgeben „ausreichend schlecht“ gelöst werden können, dam vollständig korrekte Programme“ abgeben Versuchsaufbauten – Einleitung ● ● Standardversuchsaufbauten aus der Medizin, Soziologie, Psychologie, etc. Ziel: Finden eines Versuchsaufbaus, der a) der Hypothese gerecht wird b) Probleme von Störvariablen reduziert c) der „praktikabel“ ist kein „zu großes Risiko“, dass am Ende nichts gemessen wird „organisatorisch durchführbar ist“ ● ● ● Notwendiges Vorwissen für Finden eines angemessenen Versuchs ● ● ● Einschätzung der Effektgröße Einschätzung der zu erwartenden Streuung Kenntnis über mögliche alternative Versuchsaufbauten Versuchsaufbauten – Einleitung ● Terminologie ● Unabhängige Variablen – – Die Teile, die bewusst vom Experimentierer beeinflußt und verändert werden Bsp: Vergleich zwischen Java + Smalltalk Unabhängige Variable = Programmiersprache Zwei Variablenausprägungen (treatments): Java, Smalltalk – ● Ggf. die Teile, die erfasst werden, aber nicht direkt kontrolliert werden können (Geschlecht, Alter der Probanden) Abhängige Variablen – – Die Variablen, auf die sich die Messungen beziehen Bsp: Vergleich der Entwicklungszeit von Java + Smalltalk Abhängige Variable (von Sprache): Entwicklungszeit Standardversuchsentwürfe für Unterschiedshypothesen ● 1-Faktorielle Versuchsaufbauten (2 Gruppen) ● ● ● AB-Between-Subject Design AB Design mit Messwiederholung 2-Faktorielle Versuchsaufbauten ● ● ● ● ● AA/AB Crossover Design AB/BA Crossover Design Latin-Square Design (Lateinische Quadrate) .... ....sehr, sehr großer Pool an unterschiedlichen Versuchsaufbauten!!! AB Between-Subject ● Charakteristika: ● ● ● ● ● ● ● Sehr einfaches Design Eine unabhängige Variable, zwei Treatments (A, B) Probanden werden zufällig in zwei Gruppen aufgeteilt Jede Gruppe erhält ein Treatment der unabhängigen Variable Messungen der (beiden) Gruppen werden miteinander verglichen Format Gruppe Treatment A X B Y Einfacher Vergleich (U-Test / t-Test) AB Between-Subject ● Beispiel: ● ● Messung ● ● Vergleich Entwicklungszeit Java+ST, Implementierung eines Parsers Entwicklungszeit 2 Gruppen ● Gruppe 1 = Java, Gruppe 2 = Smalltalk AB Between-Subject ● Probleme ● ● ● ● Streuung zwischen Probanden häufig größer als Haupteffekt Sehr große Stichprobe notwendig Ausbalancieren der Gruppen problematisch! Beispiel ● ● 10 Probanden, davon 2 sehr gute Programmierer Problem: Sehr hohe Wahrscheinlichkeit, dass beide in gleicher Gruppe sind.... AB Between-Subject mit Messwiederholung ● Charakteristika: ● ● ● ● ● ● Sehr einfaches Design Eine unabhängige Variable, zwei Treatments (A, B) Probanden werden zufällig in zwei Gruppen aufgeteilt Jede Gruppe erhält ein Treatment der unabhängigen Variable Jede Gruppe wird n-fach auf das Treatment getestet Format Gruppe Messungen Gruppe 1 2 ... n A (Treatment X) X1 X2 Xi Xn B (Treatment Y) Y1 Y2 Yi Yn AB Between-Subject mit Messwiederholung ● Vorteil ● ● Probleme ● ● ● Reduzierung des Stichprobenumfangs Ausbalancieren der Gruppen (noch immer) problematisch! Periodeneffekt (Messungen evtl. abhängig von vorherigem Ergebnis) / Lerneffekte Beispiel ● ● Aufgabe 1: Schreibe in Netzwerkstream, Aufgabe 2 schreibe auf Festplatte Problem: Es scheint wahrscheinlich, dass Messung von Aufgabe 2 von Aufgabe 1 abhängt... AB/BA Cross Over Design ● Charakteristika: ● ● ● ● Eine unabhängige Variable, zwei Treatments (A, B Probanden werden zufälligin zwei Gruppen aufgeteilt Jeder Proband wird mit jedem (!) Treatment getestet Format Gruppe Treament(1) Treament(2) 1 A B 2 B A AB/BA Cross Over Design ● Vorteil ● ● ● Probleme ● ● ● 10x-Problem geringer (jeder Proband wird auf jedes Treatment getestet) Cross-Over „kann“ das Gruppenproblem ausbalancieren Reihenfolgeneffekt (Messungen evtl. abhängig von vorherigem Ergebnis) / Lerneffekte Ausbalancieren der Gruppen (teilweise) problematisch Beispiel ● ● Aufgabe 1: Schreibe in Netzwerkstream, Aufgabe 2 schreibe auf Festplatte Problem: Es scheint wahrscheinlich, dass Messung von Aufgabe 2 von Aufgabe 1 abhängt... Crossover-Problem • Question: Do type Casts Matter? [Stuchlik, Hanenberg DLS 2011] – 21 subjects (~ 5 h/subject) – Programming Languages: Groovy & Java – 5 simple programming tasks – Measurement: time until completion – Within-subject design • Low number of subjects • High variability between subjects – Expectation: devTime(Groovy) < devTime(Java)!!! – Problem • Does learning effect matter? 55 Within-subject measurement Groovy first 1st Duration 56 Within-subject measurement Groovy first Learning 1st Duration 57 Within-subject measurement Groovy first Learning Language effect 1st Duration 58 Within-subject measurement Groovy first Learning 1st 2nd Language effect Duration 59 Within-subject measurement Groovy first measured difference Duration 60 Within-subject measurement Groovy first Java first 1st Duration Duration 61 Within-subject measurement Groovy first Java first Learning Duration 1st Duration 62 Within-subject measurement Groovy first Java first Learning Duration Language effect 1st Duration 63 Within-subject measurement Groovy first Java first measured Learning difference Duration Language effect 1st Duration 64 Within-subject measurement Groovy first Duration Java first Duration Small effect in Group „Groovy First“ Large effect in Group „Java first“ 65 AA/AB Cross Over Design ● Charakteristika: ● ● ● ● ● Eine unabhängige Variable, zwei Treatments (A, B) Probanden werden zufällig in zwei Gruppen aufgeteilt Eine Gruppe wird unter 2 Treatments getestet, Gruppe 1 ist reine Kontrollgruppe Format Gruppe Treament(1) Treament(2) 1 A A 2 A B Ziel ● Bestimmen eines Interaktionseffekts (Periode 2) AA/AB Cross Over Design ● Vorteil ● ● ● Probleme ● ● ● Eine Gruppe ist „rein“ (d.h. gute Vergleichsbasis), Reihenfolgeeffekt „weniger problematisch“ 10x-Problem geringer (jeder Proband wird auf 2x gemessen) Reihenfolgeneffekt (Messungen evtl. abhängig von vorherigem Ergebnis) / Lerneffekte Ausbalancieren der Gruppen (teilweise) problematisch Beispiel ● ● Aufgabe 1: Schreibe in Netzwerkstream, Aufgabe 2 schreibe auf Festplatte Wenn Messung von Aufgabe 2 von Aufgabe 1 abhängt ist es weniger problematisch (weil Interaktionsmessung), solange Haupteffekt in Aufgabe 2 noch stark genug ist 4-Group Between-Subject Design ● Charakteristika: ● ● ● ● ● Zwei unabhängige Variablen, jeweils zwei Treatments (A, B), (Aufgabe 1, Aufgabe 2) Probanden werden zufällig in vier Gruppen aufgeteilt Jede Gruppe wird unabhängig voneinander durchgeführt Format Gruppe Aufgabe 1 Aufgabe 2 Treatment A Gruppe 1 Gruppe 3 Treatment B Gruppe 2 Gruppe 4 Ziel ● Vergleich aller 4 Gruppen 4-Group Between-Subject Design ● Vorteil ● ● Variable „Aufgabe“ ohne cross-over Effekt Probleme ● Ausbalancieren der Gruppen problematisch (10xProblem) Latin-Square Design (3x3) ● Charakteristika: ● ● ● ● ● Zwei unabhängige Variablen, drei Treatments (A, B, C) (X, Y, Z) Probanden werden in n2 Gruppen aufgeteilt Jeder Proband erhält beide Treatments (aber nicht jede Kombination)! Format Gruppe Messungen 1 AX BY CZ 2 BX CY AZ 3 CX AY BZ Ziel ● Reihenfolgeeffekte bestimmen Latin-Square Design (3x3) ● Vorteil ● ● Größenbestimmung des Reihenfolgeeffekts Probleme ● Wenn Reihenfolgeeffekt dominanter als Haupteffekt, liefert Design nichts! Zusammenfassung Versuchsaufbauten ● Ziel ● ● Aber ● ● ● ● Reduzierung des Einflusses von Störvariablen Jedes Design hat seine Risiken Jedes Design erfordert unterschiedliche Form der Analyse (später) Jedes Design erforderlich nicht nur die „prinzipiellen Probleme“ zu verstehen, sondern auch, die Größe des Probleme/Risiken abzuschätzen! Problem ● Während in der Medizin, etc. sich Standardverfahren etabliert haben, wird in der Softwaretechnik noch „getestet“ ....choose your poison! Literatur ● ● ● Pfleeger, „Experimental Design and Analysis in Software Engineering“, Anals o Software Engineering, 1 (1995), S. 219-253 Juristo, Moreno, „Basics of Software Engineering Experimentation“, Springer, 2001 Wohlin et al., „Experimentation in Software Engineering“, Springer, 2012