Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

MINAR „Erfahrung und Experimente im Software Engineering“ 1 Beziehung von Erfahrungen + Experimenten (Forschungsfront): Spannende Experimentergebnisse.

Ähnliche Präsentationen


Präsentation zum Thema: "MINAR „Erfahrung und Experimente im Software Engineering“ 1 Beziehung von Erfahrungen + Experimenten (Forschungsfront): Spannende Experimentergebnisse."—  Präsentation transkript:

1 MINAR „Erfahrung und Experimente im Software Engineering“ 1 Beziehung von Erfahrungen + Experimenten (Forschungsfront): Spannende Experimentergebnisse und das FLOW-Projekt Xiaoxuan Ge

2 2Beziehung von Erfahrungen und Experimenten - Forschungsfront Gliederung  Rückblick des Seminars Zusammenfassung von vorigen Vorträgen  Empirical Software Engineering Beziehung von Erfahrung und Experimente  Forschungsfront – Beispiele SE-Experimente Erfahrung aus einem eWorkshop: Inspections oder Pair Programming Ein Replikationsexperiment: Evaluation der Lerneffektivität mittels Simulationen  Das FLOW-Projekt  „Should Computer Scientists experiment more?“  Zusammenfassung

3 3Beziehung von Erfahrungen und Experimenten - Forschungsfront Rückblick des Seminars Erfahrungen - „experience“  Wissensmanagement  Formen der Wissensumwandlung, Fünf-Phasen-Modell  Experience Base  Experience Factory, Experience Engine  Erfahrungsbasierte Prozessverbesserung in Software  CMM, QIP und GQM  Erfahrungserhebung in Projekten: Post-Mortem-Analyse  Light-weight documentation of experiences (LID)  Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Quelle: Folien zum Seminar von De Vries

4 4Beziehung von Erfahrungen und Experimenten - Forschungsfront Rückblick des Seminars Experimente - „experiment“  SE-Themen, für die sich Experimente lohnen  alte und neue Experimente, eXtreme Programming und PP  Experimente in Medizin, Psychologie und Informatik im Stilvergleich  Warum experimentieren, Experiment „Citrusduft“  Statistik für Experimente  Professor Schneider „experimetiert“  Experimentaufbau und –design  Experiment „roter Hintergrund“  Auswertung, Nutzung und Intepretation der Experimentergebnisse Quelle: Folien zum Seminar von Twelker

5 5Beziehung von Erfahrungen und Experimenten - Forschungsfront Empirical Software Engineering  Ursprung: Griechischεμπειρισμό ς „empirical“ und „empiricism“ -pir- in engen Zusammenhang mit -per- im Lateinisch Bedeutung: testen oder versuchen „experientia”  „experience“ “experimentum “  „experiment“  Empirie - „empiricism“: Wissenschaftlich, auf methodischem Weg und durch absichtlich angestellte Beobachtungen und Experimente gewonnene Erfahrung. Hinzu kommen Befragungen vorher nach bestimmten Gesichtspunkten ausgewählter Individuen oder Gruppen, so genannter Probanden. Quelle: Wikipedia

6 6Beziehung von Erfahrungen und Experimenten - Forschungsfront „ An empirical study is really just a test that compares what we believe to what we see...“  „empirical study“: Fallstudien, Befragungen, Prototyping, Experimente  Leider bis jetzt nicht den selben Erfolg im SE N. Fenton: mangelnder statist. Design, kurzer Ausführungszeit V. Basili: Vergleich schwierig, da individueller Projekte P. Johnson: Praktiker lehnen Messungen ab  Betrachtungsweise für empirische Ansätze im SE Kosten- und Gewinnfaktoren bestätigen „key way“ um Entscheidungen zu treffen, Ergebnisse stärken Allgemeineren Prozess Ablaufpan benötigt Empirical Software Engineering Zitat: Empirical Studies of Software Engineering: A Roadmap  Aufbau einer empirische Studie im SE

7 7Beziehung von Erfahrungen und Experimenten - Forschungsfront  Konzeption einer empirischen Studie im SE: Empirical Software Engineering Forschungskontext HypotheseGültigkeitsdefinition StudiendesignDatenanalyseSchlussfolgerung Durchführung der Studie

8 8Beziehung von Erfahrungen und Experimenten - Forschungsfront  Problem mit Ziel der Studie  Problemdefinition: mit entsprechenden Fachvokabular  Forschungsreview: historischen Kontext und offenen Fragen Empirical Software Engineering  Essenz der Studie High-level  low-level  Abstrakte Hypothese: „Meetings sind un- versichtbar in einem Software Inspection Process“  Konkrete Hypothese: „Teams, die Inspections mit Meetings durchführen, finden mehr Fehler als Teams, die Inspections ohne Meetings durchführen“

9 9Beziehung von Erfahrungen und Experimenten - Forschungsfront Empirical Software Engineering  Plan zum Testen der Hypothesen  Beschreibung zur physischen, interlektuellen oder kulturellen Umfeld  Definition der Variablen: Unabhängige und abhängige Variablen  Herausforderung beim Design der Studie: Einflußreiche und glaubhafte Studien zu konzipieren  Folgende Aspekte spielen eine große Rolle: Genauigkeit der Interpretation Relevanz des Ergebnisses Einfluß auf die Forschung  in Abhängigkeit von: Ressorceneinschränkung  kostenspielig Risikomanagement  möglichst minimieren

10 10Beziehung von Erfahrungen und Experimenten - Forschungsfront Empirical Software Engineering  Quantitative Analyse: Vergleichen der numerischen Daten zur Überprüfung der Null-Hypothese  Hypothese-Test und Leistungsanalyse  Qualitative Analyse: Schlecht quantifizierbare Aspekte wie Interviews, Perspektive der Beteiligten  Einfluß auf Schlussfolgerung  Konstruktionsgültigkeit: Modellierung der abs. Hypothese durch unabhäng. und abhäng. Var.  Interne Gültigkeit: Änderung der unabhäng. Var. führt zu Änderung der abhäng. Var.  Externe Gültigkeit: Ergebnis kann verallge- meinert werden

11 11Beziehung von Erfahrungen und Experimenten - Forschungsfront Empirical Software Engineering  Ergebnis Interpretation und Schlussfolgerung aus den Ergebnissen ziehen  Sicherstellen, dass genug Information geliefert wurden  alle Frage am Anfang beantwortet  zum Reproduzieren dieser Studie  Strategien zur „erfolgreichen“ Studie Klare Anforderung definieren  aufschlußreiche Frage Reproduktion einer Studien  Experimente wiederholen Mitbeteiligung von anderen  speziell Studenten im SE Involvieren von anderen Perspektiven  in qualitative Analyse bei Befragung oder Interviews  Ein bestimmter Typ: Experiment

12 12Beziehung von Erfahrungen und Experimenten - Forschungsfront  Ablauf eines Experiments  abbilden auf allgemeine empirische Studien Empirical Software Engineering Forschungskontext HypotheseGültigkeitsdefinition StudiendesignDatenanalyseSchlussfolgerung Quelle: Folien zum Seminar von Twelker

13 13Beziehung von Erfahrungen und Experimenten - Forschungsfront Forschungsfront – Beipiele SE-Experimente Erfahrung aus einem eWorkshop: Inspections and Pair Programming – Konkurrierend oder Ergänzend?  Ziel: Stärken, Schwächen: konkurrierend oder ergänzend?  Experimentbeschreibung: Basiert auf Erfahrungsaustausch Diskussion in einem Experten eWorkshop  Motivation: gleiche Ziele aber andere Ansätze: Insp.  CMM-basierte Methoden PP  agile Software Development Bessere Nutzung der beiden Methoden

14 14Beziehung von Erfahrungen und Experimenten - Forschungsfront Forschungsfront – Beipiele SE-Experimente  eWorkshop: Online, gut organisiertes Meeting, ersetzt face-to-face Workshop Platform zum Erfahrungsaustausch: effizient und kostengünstig Benutzt eine Web-basierte Chatprogramm 1.Auswahl eines Themas 2.Teilnehmer einladen 3.Pre-meeting Info-Sheet an Teilnehmer verteilen 4.Organisatoren analysieren Pre-meeting Info-Sheet 5.Zusammengestellte Themen an Teilnehmer verteilen 6.Pre-meeting-Training: Ausprobieren der Tools 7.Control-room initialisieren mit verschiedenen Rollen 8.eWorkshop ausführen 9.Post-meeting Analyse und Synthese Vorbereitungs- phase

15 15Beziehung von Erfahrungen und Experimenten - Forschungsfront Forschungsfront – Beipiele SE-Experimente Support Team mit Rollen: Leiter, Moderator, Schreiber, Analyitiker und Technical Support abgestimmt und Zwischenergebnisse präsentiert Quelle: V. Basili et al. Building an Experience Base for Software Engineering

16 16Beziehung von Erfahrungen und Experimenten - Forschungsfront Forschungsfront – Beipiele SE-Experimente  Ergebnis Interpretation des Experten eWorkshop: Themenasp.Ergebnis der Diskussion (Experience Base) Auswirkung auf Qualität  Gleiches Ziel: Qualität in SD erhöhen  Reduzieren von Fehlern, die zur nächsten Phase durchschlüpfen Insp.: hohe Qualität (low rates of defect slippage)  hohe Kosten PP: braucht mehr Beweis  weniger Kosten Perspektive des dritten Beteiligten (Third party perspective) Insp.: Mit „Third party perspective“  zusätzlichen Feedback  Ermöglicht Fokus auf zusätzlichen Aspekte mit großem Einfluß PP: Fehlen von „Third party perspective“  Kollektiver Codebesitz und Rotationsprinzip im Entwicklungsteam „könnte“ evtl. diesen Mangel umgehen Wirkungs- zyklus (feedback cyc.)  Je kürzer, umso besser Insp.: langer Feedbak Zyklus  Erreichen stabilen Zustands PP: kurzer Feedback Zyklus  Fehler sofort von Partner gefunden Quelle: F. Shull et al. Inspections and Pair Programming – competing or complementary?

17 17Beziehung von Erfahrungen und Experimenten - Forschungsfront Forschungsfront – Beipiele SE-Experimente Ein Replikationsexperiment: Evaluation der Lerneffektivität mittels Simulationen in der Lehre der Software Projektmanagement  Motivation: Hohe Bedarf an trainierten erfahrenen Software Project Manager Studenten nur Fachwissen, aber keine Erfahrungen in der Software Project Planning  Ziel: Informatikstudenten effizient SPP belehren  Erfahrung gewinnen  Experimentbeschreibung: An Universitäten mit Studenten in zwei Gruppen:  COCOMO versus System Dynamic Simulation Model Initialexperiment: Uni Kaiserslautern Replikationsexperiment: University of Oulu

18 18Beziehung von Erfahrungen und Experimenten - Forschungsfront  COCOMO (Constructive Cost Model) zur Kosten- bzw. Aufwandsschätzung in Pers.Mon, Mannjahr Anzahl von Codezeilen und Erfahrungswerten Meistens angesehen als Industriestandard  SD Simulations Modell Ganzheitliche Analyse und (Modell-) Simulation kompl. und dynam. Systeme Auswirkungen von Mgmt- Entscheidungen auf die Systemstruktur und System- verhalten  Unternehmenserfolg DYNAMO, Powersim... Forschungsfront – Beipiele SE-Experimente

19 19Beziehung von Erfahrungen und Experimenten - Forschungsfront  Experimentaufbau: Pre-Test und Post-Test  Effektivitätsmessung: abhäng. Var. Y.1: Eigene Interesse an SPM Y.2: Wissen über typischen Verhaltensmuster von SDP Y.3: Verständnis über einfache Projekt Dynamik Y.4: Verständnis über komplexe Projekt Dynamik Forschungsfront – Beipiele SE-Experimente GAGA GBGB Quelle: An Externally Replicated Experiment for Evaluating the Learning Effectiveness

20 20Beziehung von Erfahrungen und Experimenten - Forschungsfront  Hypothese zum Experiment: H0,1: Positive Lerneffektivität Steigerung der Lerneffektivität in beiden Gruppen score pre (Y.i; A) = score post (Y.i; A), score pre (Y.i; B) = score post (Y.i; B) for i = 1,…, 4 H0,2: SD Simulation Modell bessser als COCOMO Lerneffektiviät in Gruppe A ist höher als in Gruppe B a: “relative Lerneffektivität” Leistungsverbesserung zwischen pre-test post-test score diff (Y.i; A) = score diff (Y.i; B) for i = 1,…, 4 b: “absolute Lerneffektivität”: post-test  abhängig von der Art des Trainings score post (Y.i; A) = score post (Y.i; B) for i = 1,…, 4 Forschungsfront – Beipiele SE-Experimente

21 21Beziehung von Erfahrungen und Experimenten - Forschungsfront  Experimentdurchführung: Block 1- Einleitung: Aufgabe PM und typ. Probleme Diskussionen Block 2 - Rollenspiel: Illustration  Projekt, interaktiv, Rolle eines PM SD Modell  web-bas. Role-Play Block 3 - Planungsphase: Modelle kennenlernen, Konzept erstellen  Präsentation wichtigen Aspekte Block 4 - Applikation: Modell konkret aufbauen Beispielprojekt ausführen Forschungsfront – Beipiele SE-Experimente Quelle: An Externally Replicated Experiment for Evaluating the Learning Effectiveness

22 22Beziehung von Erfahrungen und Experimenten - Forschungsfront  Datenanalyse: Forschungsfront – Beipiele SE-Experimente Quelle: An Externally Replicated Experiment for Evaluating the Learning Effectiveness

23 23Beziehung von Erfahrungen und Experimenten - Forschungsfront  Experimentergebnisse: Wiederlegung der Hypothesen H0,1, H0,2a und H0,2b  Steigung der Lerneffektivität von pre-test und post-test  Gruppe A (SD Simulation Modell)  besseren Verständnis über die PD-Verhalten (Lerneffektivität) als Gruppe B (COCOMO) Befragung: web-basierte Role-play Tool gut angekommen  durch Ergebnis bestätigt  Gewinn aus dem Experiment: Experiment reproduziert  Bestätigen dasgleiche Ergebnis Probanden: Studenten Bestätigt Konzept der emp. Stud. Forschungsfront – Beipiele SE-Experimente  Andere Projekte?

24 24Beziehung von Erfahrungen und Experimenten - Forschungsfront Das FLOW-Projekt  Projekt seit 2004 am SE-Lehrstuhl an der Uni Hannover  Motivation: Ständige Anpassung an die Anforderungen von Kunden  Ziel: Qualitätssicherung von Software  FLOW: Informations- und Erfahrungsflüsse  Analyse des FLOWs  Software Engineering nach Maß (Tailoring)  Konzept der Flüssen in Projekten Projektinformationen Methoden- und SE-Wissen Erfahrungen Quelle: K. Schneider, Folien der Antrittsvorlesung

25 25Beziehung von Erfahrungen und Experimenten - Forschungsfront Das FLOW-Projekt  Ständiger Fluss von FLOWs in einem Projekt  Analyse der FLOWs: durch Experimenten Quelle: K. Schneider, Folien der Antrittsvorlesung

26 26Beziehung von Erfahrungen und Experimenten - Forschungsfront Should Computer Scientist experiment more? JahrZitierungsrate in % EMSEIEEE (TSE)IST durchschn. ZR  Fakten, die dafür sprechen? Durchschnittliche Zitierungsrate  Maß für Stellenwert einer Artikel in der Wissenschaft Quelle: Have twenty-five years of Empirical SE made a difference?

27 27Beziehung von Erfahrungen und Experimenten - Forschungsfront Victor Basili Andreas JedlitschkaMarvin Zelkowitz Pekka Abrahamsson Forrest Shull Walter Tichy  „Die große Familie“: Should Computer Scientist experiment more?

28 28Beziehung von Erfahrungen und Experimenten - Forschungsfront Should Computer Scientist experiment more?  Fraunhofer USA Inc. Center for Experimental Software Engineering in Maryland  Fraunhofer IESE Institut für Experimentelles Software Engineering  ISERN  Zweig: ISERN Experiment  ISESE:  Symposium on empirical SE  CeBASE: Center for empirically based SE   Empirical Approach to SE Quelle:

29 29Beziehung von Erfahrungen und Experimenten - Forschungsfront Should Computer Scientist experiment more?  Zitate von Walter Tichy: “… As computer science leaves adolescence behind, I hope to see the experimental branch of this discipline flourish!” Zitat: Should Computer Scientist experiment more? “Experimentation is central to the scientific process. Only experiments test theories. Only experiments can explore critical factors and bring new phenomena to light so that theories can be formulated and corrected….”

30 30Beziehung von Erfahrungen und Experimenten - Forschungsfront Zusammenfassung  Empirical Software Engineering  in engen Zusammenhang mit Erfahrung und Expereimenten  Empirische Studien: Studiendesign  relevante und einflußreiche Ergebnisse erzielen Schlussfolgerung  glaubhaft und präzise interpretiert Erfolgreich?  Reproduzierbarkeit einer Studie  Beispielprojekte eWorkshop und Replikationsexperiment Das FLOW-Projekt: SE nach Maß  Fakten, die für das „Experimentieren“ im SE sprechen: Durschnittliche Zitierungsrate wichtigsten Wissenschaftler und Institutionen Vielen Dank für Ihre Aufmerksamkeit!

31 31Beziehung von Erfahrungen und Experimenten - Forschungsfront Literaturen 1998Should Computer Scientists Experiment More? Tichy 2000Empirical Studies of Software Engineering: A Roadmap 2001A Controlled Experiment to Assess the Effectiveness of Inspection Meetings 2001Building an Experience Base for Software Engineering: A report on the first CeBASE eWorkshop, Basili 2002An Externally Replicated Experiment for Evaluating the Learning Effectiveness of Using Simulations in Software Project Management Education 2002Has Twenty-five Years of Empirical Software Engineering Made a Difference? 2004Folien der Antrittsvorlesung, Schneider 2004Empirical Software Engineering Platform and Empirical Project Monitor 2005Inspections and Pair Programming – competing or complementary? Experiences from an Expert eWorkshop, Basili, Shull 2005Empirical study design in the area of High-Performance Computing (HPC), Basili, Shull


Herunterladen ppt "MINAR „Erfahrung und Experimente im Software Engineering“ 1 Beziehung von Erfahrungen + Experimenten (Forschungsfront): Spannende Experimentergebnisse."

Ähnliche Präsentationen


Google-Anzeigen