SE-Themen, für die sich Experimente lohnen Nazli Soltani 7.12.2005.

Slides:



Advertisements
Ähnliche Präsentationen
Qualitative Marktforschung
Advertisements

Matrixmultiplikation
Lexikon der Qualität Begriffe in Verbindung mit Qualität und ISO9000 finden sie auch im Lexikon der Qualität erläutert (
Qualität „Qualität ist die Gesamtheit von Eigenschaften und Merkmalen eines Produkts oder einer Tätigkeit, die sich auf deren Eignung zur Erfüllung gegebener.
Phasen und ihre Workflows
Programmieren im Großen von Markus Schmidt und Benno Kröger.
IT-Projektmanagement
Wissensanalyse von Aufgaben mit TKS Eine Methode zur Problemlösung
WML – Wireless Markup Language Vortrag von Eduard Jakel.
Untersuchung und szenariobasierte Entwicklung von Websites zur Orientierung in Universitätsstudiengängen unter Berücksichtigung von Prinzipien des Web.
Ruby on Rails im Überblick
1© The Delos Partnership 2006 January 2006 LEAN ENTERPRISE Implementierungsworkshop.
Der Stellenmarkt im Focus
Versuch einer Definition Was ist Evaluation!?
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Erfahrungen aus Tests komplexer Systeme
Risiken und Chancen Risiko Beurteilung: Dazu gehört die Identifikationen von Risiken, ihre Analyse und das Ordnen nach Prioritäten. Risiko Kontrolle: Dazu.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Regeln für Tester - best practice 1 Prüfe das eigene Programm nie als Einziger Testen.
es gibt (fast) nichts, was nicht anders gemacht werden könnte
Java: Objektorientierte Programmierung
K-Modeler Engineering
Cassey - Common Answer Set Evaluation sYstem Jean Gressmann Benjamin Kaufmann Robert Lenk.
Fehlerabdeckung/ Regressionstest1 Testen und Analysieren von Software Fehlerbehebung und Re-Engineering Fehlerabdeckung/ Regressionstest Vortragende:
– Team 2 Aktueller Projektleiter: Christian Krapp
eXtreme Programming (XP)
Professionelles Projektmanagement in der Praxis
Brandenburgische Technische Universität Cottbus Program Profiling Andrzej Filipiak Übung Testen von Software SoSe 2006.
Experimente in Medizin, Psychologie und Informatik im Stilvergleich
Experimentaufbau und -design
A. Zündorf, SE Group Reverse Engineering K2 1 Übersicht 1.Quelltextanalyse mit regulären Ausdrücken 2.Compilertechniken 3.Prozessanalyse 4.Dynamische Analyse.
A. Zündorf, SE Group Reverse Engineering K2 1 Übersicht 1.Quelltextanalyse mit regulären Ausdrücken 2.Compilertechniken 3.Prozessanalyse 4.Dynamische Analyse.
Vortrag III Hier in der Vorlesungszeit! Anwesenheitspflicht Jede Gruppe hat 6 Minuten! Stellt eure GUI vor –was ihr besonderes gemacht habt –Spektakuläre.
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Test Summary: m ein Fehler pro Tag m Test First m Funktionstests.
Workshop: Qualifizierung für Groupware 7. September 1999 Dortmund Herzlich willkommen zum.
Software Design Patterns Extreme Programming (XP).
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Was machen wir besser als die Wettbewerber
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Berliner Rahmenpläne Informatik für die Sekundarstufe I
Best Fit Matching von Punktewolken
Übersicht Motivation Konzeption Umsetzung/ Implementierung
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Michael Haverbeck System Engineer
Don`t make me think! A Common Sense Approach to Web Usability
Testgetriebene Entwicklung (TDD)
Warum brauche ich ein CMS – Content Management System?
Mit 3 Schichte zum Erfolg
Binde & Wallner Engineering GmbH
Hartmut Klauck Universität Frankfurt SS
Agenda 13: Begrüßung & Einführung in das Thema
Definitionen der SWT (1)
Finnische Lehrerinnenbildung: Forschungsorientiert Englisch Research-based teaching According to the teaching philosophy of the University, teaching and.
Empirische Softwaretechnik
Context-awareness Andreas Bossard, Matthias Hert.
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Clean Code Software-Entwicklung als Handwerkskunst Thomas Nagel, November 2011.
EPROG Tutorium #4 Philipp Effenberger
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
User Interface Design and Evaluation
1 Proseminar TUM Informatik PalmPilot und Handspring: Technik, Programmierung, Anwendung Hacks Daniel Schweighart
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Seite 1 © 2007 Dr. Schwaiger Roland VP SW-Technologien WS 2007/2008 VP Softwaretechnologien WS2007/2008 SAP GUI Pattern und Componentry Dr.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Test-Driven Development
Software Product Line Adoption
Gregor Graf Oracle Portal (Part of the Oracle Application Server 9i) Gregor Graf (2001,2002)
„Förderwolke“ A Cloud-based exchange platform for the qualitative enhancement and improvement of inclusive education Dipl. Reha-Päd. Hanna Linke scientific.
Practical Exercises and Theory
 Präsentation transkript:

SE-Themen, für die sich Experimente lohnen Nazli Soltani

Nazli Soltani Themen von SE Experimente 2/27 Gliederung Experimente Aktuelle Experimente (2005) eXtreme Programmierung Paar-Programmierung Test First relativ neue Experimente (1996) Reading Technik Code Reading vs Functional Testing vs Structural Testing Cleanroom vs non-Cleanroom Senario Based Reading Ältere Experimente (1986) Studentisches Beispiel

Nazli Soltani Themen von SE Experimente 3/27 Experiment Experiment ist : "a form of empirical study where the researcher has a control over some of the conditions in which the study takes place and control over the independent variables being studied (execution and measuremnet controls) Vivtor R. Basili 1999 Experimentation provides a systematic, disciplined, quantifiable and controlled way of evaluating humanbased activities Wholin 2000

Nazli Soltani Themen von SE Experimente 4/27 Experiment Experimente : kontrollierte Experimente über kleine Objekte in vitro Anfänger und Experten quasi-experiments oder pre-experimental designs große Projekte in vivo mit Experten involvieren meistens eine qualitative Analyse

Nazli Soltani Themen von SE Experimente 5/27 Experimentieren die Wissenschaftler genug? Eine Zusammenfassung von 612 Veröffentlichungen im SE (Zelkowitz, 1997): 30% davon beinhalteten keine Experimente, obwohl es notwendig war.(20% in andere Wissenschaften) Eine Zusammenfassung von 400 Veröffentlichungen (Tichy, 1995): 40% davon beinhalteten keine Experimente und die brauchten empirische Bewertung.

Nazli Soltani Themen von SE Experimente 6/27 Warum Experimentieren die Wissenschaftler nicht genug? Die meisten behaupten: Es gibt genug Experimente Informatiker sehen ihre Behauptungen nicht kritisch genug. Experimente sind zu teuer gute Planung minimiert die Kosten gute Experimente sind die höhen Kosten wert

Nazli Soltani Themen von SE Experimente 7/27 Experimentieren die Wissenschaftler genug? Die Experimente verlangsamen die Prozesse mehrere Veröffentlichungen mit bedeutungsvoller Bewertungen beschleunigen den Prozess Technology changes too fast die Frage ist sehr schnell irrelevant die Frage ist nicht genau definiert Es war von Anfang an nicht die Mühe wert.

Nazli Soltani Themen von SE Experimente 8/27 Aktuelle Experimente : eXtreme Programmierung eXtreme Programming die bekannteste Agile Methode am sorgfältigsten untersuchten Praktiken von XP: Paar-Programmierung und Testgetriebene - Entwicklung. Eine Zusammenfassung von durchgeführten Experimenten Universität Karlsruhe 2005 Walter F. Tichy, Matthias M. Müller, und Frank Padberg Fakultät für Informatik

Nazli Soltani Themen von SE Experimente 9/27 Paar Programmierung 3 Szenarien : Paar-Programmierung : 2 Entwickler vor einem Rechner Partner-Programmierung : 2 Entwickler vor 2 Rechnern lösen die Aufgabe in konventioneller Gruppenarbeit Einzel-Programmierung : ein Entwickler löst die Aufgabe allein

Nazli Soltani Themen von SE Experimente 10/27 Paar Programmierung Quantitativen Studien ökonomische Aspekte Ausgleich der verdoppelten Entwicklungs- Kosten durch die schnellere Entwicklung und die bessere Qualität Qualitative Studien soziale Effekte Auswirkung auf die Lehre

Nazli Soltani Themen von SE Experimente 11/27 Paar-Programmierung

Nazli Soltani Themen von SE Experimente 12/27 Test-First liegen brauchbare Studien vor nicht so viel wie bei PP 2 Faktoren : Zeitpunkt des Erstellens des Tests immer vor der Entwicklung der zu testenden Software-Komponente automatische Durchführbarkeit des Tests als Regressionstest bekannt

Nazli Soltani Themen von SE Experimente 13/27 Experimente über Testgetriebene Entwicklung (TGE) Übersicht über die untersuchten Testtechniken

Nazli Soltani Themen von SE Experimente 14/27 Experimente über TGE Empirische Studien über testgetriebenes Entwickeln Merkmale der Studien über testgetriebene Entwicklung

Nazli Soltani Themen von SE Experimente 15/27 Experimente über TGE verlangt ein Umdenken der Entwickler nur mit nachträglichem Testen vertraut sind erfordert eine lange Lernkurve Ohne entsprechende Schulung führt zu oberflächlichem Testen, das die Entwickler in falscher Sicherheit lockt die Zeitspanne unbekannt nicht Vertrautheit mit der Methode Richtige TGE führt zu besser testbaren Komponenten besserer Qualität

Nazli Soltani Themen von SE Experimente 16/27 Experimente über XP An der Universität Hannover Thomas Flohr, Thorsten Schneider Ergebnisse Test-First führt zu einer schnelleren Entwicklung Studenten lehnen Test-First nicht ab PP um Prozesserfüllung zu sichern Studenten: Test-First nicht besser oder schlechter

Nazli Soltani Themen von SE Experimente 17/27 Relativ neue Experimente Experimente über Reading-Techniques Was ist eine Reading-Technique? a concrete set of instructions given to the reader saying how to read and what to look for in a software product. Software Reading: the individual analysis of a software artifact e.g., requirements, design, code, test plans to achieve the understanding needed for a particular task e.g., defect detection, reuse, maintenance an der Universität von Maryland von V.Basili und NASA.

Nazli Soltani Themen von SE Experimente 18/27 Experimente über Reading Techniques Serie von Experimenten: Code Reading vs Functional Testing vs Structural Testing Cleanroom vs non-Cleanroom defect-based reading vs ad-hoc reading vs check-list reading perspective-based reading vs NASAs reading Technik.

Nazli Soltani Themen von SE Experimente 19/27 Experimente über Reading Techniques Code Reading vs Functional Testing vs Structural Testing Vergleich von Fehler-Erkennung und Kosten Verschiedene Fehler-Klassen Ergebniss: Code Reading mehr effektive für Interface-Fehler- Erkennung Functional und Structural Testing mehr effektive für control flow Fehler über 90% : functional testing besser ?! Entwickler wollen nicht glauben, dass reading besser ist.

Nazli Soltani Themen von SE Experimente 20/27 Experimente über Reading Techniques Implementieret im SEL Entwicklungsprozess sehr wenig effektive lesen und nachher testen nicht gelesen wie sie müssten erzwingen zum Lesen Cleanroom vs non-Cleanroom Cleanroom-Entwickler waren motiviert zum Lesen Cleanroom/Reading war effektiv verringert die kosten für Veränderungen Cleanroom Produkt weniger Komplex näher an der Anforderungen

Nazli Soltani Themen von SE Experimente 21/27 Experimente über Reading Techniques Senario-Based Reading Zielgesteuert anpassbar an der Umgebung und dem Projekt verwendbar in vorhandenen Methoden, z.B. Inspektionen spezifische Notation Zwei Familien von Senario-Based reading techniques für Anforderungs-Dokumente Perspektive-Based Reading fokussiert auf verschiedene Sicht des Anwenders für Anforderungsdokumente im Englisch Defect-Based Reading fokussiert auf verschiedenen Fehlerklasse für Anforderungsdokumente in SCR Style (Software Cost Reduction)

Nazli Soltani Themen von SE Experimente 22/27 Experimente über Reading Techniques Experimente defect-based reading vs ad-hoc reading vs check-list reading perspective-based reading vs NASAs reading Technik. Vergleich von Effektivität der Fehlerekennung

Nazli Soltani Themen von SE Experimente 23/27 Experimente über Reading Techniques Ergebnisse: Senario-Based Reading besser als Ad-Hoc, check-list and NASAs Readingsmethode wenn wenig vertraut mit dem Arbeitsgebiet PBR soll besser an der Umgebung angepasst werden Effekt mehr in Teamarbeit findet verschiedene Fehlerklassen abhängig von der Sicht

Nazli Soltani Themen von SE Experimente 24/27 Ältere Experimente Programm Debugging Gould, Drongowski(1974) die Effekte von debugging aids Fehlertyp Entwickler oder Verwalter Ergebnisse: Zuweisungsfehlern Schwierig zu finden mit Erfahrung einfacher debugging aids nicht hilfreich

Nazli Soltani Themen von SE Experimente 25/27 Ältere Experimente Flowcharts vs Programm Design Languages (PDL) Ramsey, Atwood, Van Doren (1983) aus der Sicht des Entwicklers Ergebnisse: Kommunikation und Design Performance besser bei PDL

Nazli Soltani Themen von SE Experimente 26/27 Studentisches Beispiel Masterarbeit zu zweit Frage: ob die Paare die Arbeit beschleunigen oder sich gegenseitig aufhalten??? ähnlich wie PP? DIE Frage: Welche DIE für welche zwecke? Eclipse Net-Beans von Sun JBuilder von Borland am schnellsten und besten entwickeln?

Nazli Soltani Themen von SE Experimente 27/27 Studentisches Beispiel Alle verfügen über: Syntax Highlighting Editor, Debugger und Compiler Setzen von Breakpoints beim Debuggen der Editor kann nach den Bedürfnissen des Benutzer angepasst werden Anzeige der Zeilennummern Klassenbrowser zum Anzeigen der Klassenstrukturen eingebauter API Browser (Code Komplettierung) Entwicklung für verschiedene SDK Versionen möglich (1.3, 1.4 oder 1.5) …

Nazli Soltani Themen von SE Experimente Gliederung Experimente Aktuelle Experimente (2005) eXtreme Programmierung Paar-Programmierung Test First relativ neue Experimente (1996) Reading Technik Code Reading vs Functional Testing vs Structural Testing Cleanroom vs non-Cleanroom Senario Based Reading Ältere Experimente (1986) Studentisches Beispiel

Nazli Soltani Themen von SE Experimente Quelle V. R. Basili and F. Lanuble, "Building Knowledge through Families of Experiments,"IEEE Transactions on Software Engineering, vol. 25, pp , Walter F. Tichy, Matthias M. Müller and Frank Padberg, Ist XP etwas für mich? Empirische Studien zur Einschätzung von XP Fakultät für Informatik, Universität Karlsruhe, Walter F. Tichy,Should Computer Scientists Experiment More?,1998. V. R. Basili, Experimentation in Software Engineering,1986, Matthias M. Müller, Johannes Link, Roland Sand, and Guido Malpohl, Extreme Programming in Curriculum: Experiences from Academia and Industry Universität Karlsruhe, andrena objects ag, V. R. Basili, Evolving an Packaging Reading Technologies, 1996.