Visualisierung verteilter Systeme



Ähnliche Dokumente
OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Erstellen von x-y-diagrammen in OpenOffice.calc

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Professionelle Seminare im Bereich MS-Office

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.

Wir basteln einen Jahreskalender mit MS Excel.

Leichte-Sprache-Bilder

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Internet Explorer Version 6

Gibt es einen Geschmacksunterschied zwischen Coca Cola und Cola Zero?

Der monatliche Tarif für ein Handy wurde als lineare Funktion der Form f(x) = k x + d modelliert (siehe Grafik).

Step by Step Webserver unter Windows Server von Christian Bartl

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

Noten ausrechnen mit Excel/Tabellenkalkulation. 1) Individuellen Notenschlüssel/Punkteschlüssel erstellen

Updatehinweise für die Version forma 5.5.5

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Excel Pivot-Tabellen 2010 effektiv

Hilfe zur Urlaubsplanung und Zeiterfassung

SJ OFFICE - Update 3.0

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

How to do? Projekte - Zeiterfassung

Lizenzierung von StarMoney 10 bzw. StarMoney Business 7 durchführen

Teaser-Bilder erstellen mit GIMP. Bildbearbeitung mit GIMP 1

Informationsblatt Induktionsbeweis

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

HIER GEHT ES UM IHR GUTES GELD ZINSRECHNUNG IM UNTERNEHMEN

Zwischenablage (Bilder, Texte,...)

Bilder zum Upload verkleinern

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Aufgabe 5 Excel 2013 (Fortgeschrittene)

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Beispiel(unten ist der Spielfeldrand):

Tipp III: Leiten Sie eine immer direkt anwendbare Formel her zur Berechnung der sogenannten "bedingten Wahrscheinlichkeit".

kleines keyword brevier Keywords sind das Salz in der Suppe des Online Marketing Gordian Hense

Bedienungsanleitung Albumdesigner. Neues Projekt: Bestehendes Projekt öffnen:

EINFACHES HAUSHALT- KASSABUCH

Word 2010 Schnellbausteine

Tutorial: Homogenitätstest

Zwei einfache Kennzahlen für große Engagements

Umgang mit der Software ebuddy Ändern von IP Adresse, Firmware und erstellen von Backups von ewon Geräten.

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Anwendungsbeispiele Buchhaltung

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Elexis-BlueEvidence-Connector

Wie Sie mit Mastern arbeiten

Professionelle Seminare im Bereich MS-Office

Dieses erste Kreisdiagramm, bezieht sich auf das gesamte Testergebnis der kompletten 182 getesteten Personen. Ergebnis

Durch Wissen Millionär WerDen... Wer hat zuerst die Million erreicht? spielanleitung Zahl der spieler: alter: redaktion / autor: inhalt:

Einführung in das Arbeiten mit MS Excel. 1. Bearbeitungs

Kurzanleitung zur Bereitstellung von Sachverhalten und Lösungen zum Universitätsrepetitorium auf dem Server unirep.rewi.hu-berlin.

Lizenzierung von StarMoney 9.0 bzw. StarMoney Business 6.0 durchführen

Dossier: Rechnungen und Lieferscheine in Word

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Anleitung, WebRecherche

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Agentur für Werbung & Internet. Schritt für Schritt: Newsletter mit WebEdition versenden

Abb. 1. Abb. 2.

Du hast hier die Möglichkeit Adressen zu erfassen, Lieferscheine & Rechnungen zu drucken und Deine Artikel zu verwalten.

ecaros2 - Accountmanager

p-cost Benutzerhandbuch Alfred Pabinger

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Was ist Sozial-Raum-Orientierung?

COMPUTERIA VOM SERIENBRIEFE UND ETIKETTENDRUCK

Bedingungen. Bedingungen. Bedingungen

Aufgabe 1 (Excel) Anwendungssoftware 1 / 11 Semesterschlussprüfung

Updateanleitung für SFirm 3.1

Zusatzmodul Lagerverwaltung

Solar Dorf Projekt. Von. Arthegan Sivanesan & Tieu Long Pham

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Microsoft Update Windows Update

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Hinweise zum Übungsblatt Formatierung von Text:

impact ordering Info Produktkonfigurator

1 Mathematische Grundlagen

15.3 Bedingte Wahrscheinlichkeit und Unabhängigkeit

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Anleitung über den Umgang mit Schildern

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren

Text Formatierung in Excel

Bundesverband Flachglas Großhandel Isolierglasherstellung Veredlung e.v. U g -Werte-Tabellen nach DIN EN 673. Flachglasbranche.

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Anleitung zum neuen Überaumbuchungssystem der Hochschule für Musik und Tanz Köln

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Instruktionsheft für neue Webshop Hamifleurs

Installationshinweise für OpenOffice Portable auf einem Wechseldatenträger Stand: 27. März 2003 LS Stuttgart, Kaufmännische ZPG

Elternzeit Was ist das?

Fotostammtisch-Schaumburg

Transkript:

Visualisierung verteilter Systeme End-User Software Visualizations for Fault Localization Referentin Maren Settekorn

Die Autoren Margaret M. Burnett, Professorin am Institut für Informatik der Oregon State University Curtis Cook Professor Emeritus Joseph R. Ruthruff Student Shrinu Prabhakararao Student Marc Fisher II Student Eugene Rogan Creswick Student Martin Main Student

Inhalt Motivation WYSIWYT Forms/3 Techniken zur Visualisierung Das Experiment Ergebnisse

Motivation 2005 ca 2,75 Millionen professionelle Programmierer in den USA dagegen ca 55 Millionen Endbenutzer die programmieren Für Profis gibt es viele Tools, die bei der Fehlersuche helfen Endbenutzer haben weder die Tools noch die Ausbildung

Ziel der Gruppe Eine Software, die mit Spreadsheetsprogrammierenden Benutzern bei der Fehlersuche hilft Benutzer soll mögliche Fehler durch die Farbe der entsprechenden Felder finden

WYSIWYT(I) What You See Is What You Test An Oregon State University entwickelte Testmethode Coloriert die Umrandung einer Zelle je nachdem, ob diese getested ist oder nicht Relativ billig und schnell

WYSIWYT(II) Annahme: Tabellen wachsen nach und nach -> Benutzer testen auch nach und nach In Forms/3 kann Benutzer eine Zelle abhaken, wenn sie korrekt ist, oder x-en Ungetestete Zellen sind rot, abgehakte und deren Erzeuger und Verbraucher blau

Forms/3 An der Oregon State University entwickelt Zur Zeit in Version 1.1 (June 19, 1998) Läuft nur auf Sun/Solaris und Hewlett- Packard/HP-UX Website: http://web.engr.oregonstate.edu/~burnett/forms3/forms3.html

Features von Forms/3 Darstellung nicht als Tabelle (wie in Excel) sondern als einzelne Zellen Man kann durch einen Klick eine neue Zelle hinzufügen Formel einer Zelle festlegen, unter anderem Konstante, Strings, booleans algebraische Ausdrücke mit + - * / und mod, If-then-else

Features Einfärben von Zellumrandungen Rot ungetestet, blau fertig getestet Darstellung von farbigen Datenflusspfeilen Definition : einer Zelle wird explizit ein Wert zugewiesen Use : der Wert einer Zelle wird von einer anderen benutzt eine Beziehung ist erst fertig getestet, wenn alle definition-use-paare getestet sind

Beispiel

Beurteilung von Forms/3 + Zellen bei kleinen spreadsheets vielleicht übersichtlicher als Tabellenkalkulator + Sensibilisiert Benutzer für Fehlersuche Wird aber schnell unübersichtlicher wenn es viele Zellen gibt Bedienung relativ unkomfortabel Keine neue Version zum download

Ziel Entwicklung eines Programms, das das Auffinden von Fehlern erleichtert Benutzer kann Zellen abhaken oder als fehlerhaft markieren Jede Markierung beeinflusst die Farbe dieser und der verbundenen Zellen (Produzenten und Konsumenten)

Test-Count Technik Produzenten einer Zelle: tragen zu dem Wert der Zelle bei gehören zu vorhergehender Zeitscheibe Konsumenten einer Zelle: nutzen den Wert der Zelle gehören zu späterer Zeitscheibe

Eigenschaft 1 Wenn Zelle Z oder einer der Konsumenten von Z als fehlerhaft markiert ist, ist die Wahrscheinlichkeit dafür, dass Z fehlerhaft ist, größer als 0. Eine Zelle, die zu einem falschen Wert beigetragen hat, kann fehlerhaft sein.

Eigenschaft 2 Die Fehlerwahrscheinlichkeit von Zelle Z ist proportional zu der Anzahl der fehlerhaften Tests von Z Wenn eine Zelle zu mehr fehlerhaften Werten beigetragen haben kann, als eine andere, ist es wahrscheinlicher, dass sie fehlerhaft ist.

Eigenschaft 3 Die Fehlerwahrscheinlichkeit von Zelle Z ist umgekehrt proportional zu der Anzahl der erfolgreichen Tests von Z Wenn eine Zelle zu mehr korrekten Werten beigetragen haben kann, als eine andere, ist es wahrscheinlicher, dass sie korrekt ist.

Berechnung der Fehlerwahrscheinlichkeit Anzahl fehlerhafter Tests af Anzahl korrekter Tests ak Fehlerwahrscheinlichkeit f f(z) = max (1,2 * af - ak) Fehlerwahrscheinlichkeit niedrig 1 bis 2, mittel 3 bis 4, hoch 5 bis 9 und sehr hoch 10 und drüber

Beispiel Test-Count Technik

Kosten für Test-Count(I) Benutzer kann konstante Werte oder Formeln ändern, oder Zellen markieren Erfordert Updates in O(1) Zeit Beziehungen zwischen Zellen werden in beide Richtungen gespeichert Zeit zum aktualisieren der Datenstruktur nach hinzufügen einer Testmarke: O(up) u maximale Anzahl an Referenzen einer Zelle p Anzahl der Produzenten von Z

Kosten für Test-Count(II) Zeit zum Ändern einer Formel : O(mc*max(u,Preis der Änderungsoperation) m # der Markierungen die Z erreichen c # der Konsumenten die durch die Änderung der Zelle betroffen sind u maximale # an Referenzen einer Zelle

Blocking Technik Eigenschaft 4 Wenn Zelle Z als fehlerhaft markiert ist, wird die Verbreitung der Wirkung eines korrekten Tests an einem von Z s Konsumenten zu den Produzenten von Z abgeblockt

Eigenschaft 5 Wenn Zelle Z als korrekt markiert ist, wird die Verbreitung der Wirkung eines fehlerhaften Tests an einem von Z s Konsumenten zu den Produzenten von Z abgeblockt Ausnahme: Wenn Zelle Z oder einer der Konsumenten von Z als fehlerhaft markiert ist, ist die Wahrscheinlichkeit dafür, dass Z fehlerhaft ist, größer als 0.

Berechnung der Fehlerwahrscheinlichkeit Hat Zelle Z keine fehlerhaften Tests ist die Fehlerwahrscheinlichkeit f null. Hat Z fehlerhafte Tests, die aber nicht erreichbar sind, ist f niedrig f = max (1, aef (aek/2)) aef Anzahl erreichbarer fehlerhafter Tests aek Anzahl erreichbarer korrekter Tests

Beispiel Blocking Technik

Kosten der Blocking Technik Kosten für Änderung einer Formel: O(p+em 2 ) Kosten für Zufügen einer Markierung O((p+e)m 2 ) p # der Produzenten von Z e # der Abhängigkeiten in der Z vorhergehenden Zeitscheibe m # der Markierungen im ganzen Programm

Nearest Consumers Technik Greedy Algorithmus Soll alle 5 genannten Eigenschaften mit geringen Kosten erfüllen Änderungen nach einer Markierung berücksichtigen nur die direkten Konsumenten

Nearest Consumers Technik Wenn Zelle Z markiert wird, errechnet man die Fehlerwahrscheinlichkeit von Z aus der Markierung der Zelle und den Fehlerwahrscheinlichkeiten von Z s direkten Konsumenten. Dann wird die Fehlerwahrscheinlichkeit von Z s direkten Produzenten errechnet

Berechnung der Fehlerwahrscheinlichkeit DK seien die direkten Konsumenten von Z x # der X-Marken in DK y # der korrekten Marken in DK z = 1 falls x > 1 und y = 0 oder x > y und y > 0 oder x > y und Z fehlerhaft z = 0 sonst

Berechnung der Fehlerwahrscheinlichkeit Fehlerwahrscheinlichkeit f von Zelle Z: f(z)= durchschnitt(f(dk)) + z Ausnahmen: Z als korrekt markiert -> f(z) niedrig Z als fehlerhaft markiert und durchschnitt(f(dk)) < mittel -> f(z) mittel Z als fehlerhaft markiert -> f(z) und f(dk) können nicht kleiner werden und umgekehrt

Beispiel Nearest Consumers

Experiment Ziel: Beantwortung der Frage, welche der für Endbenutzer in interaktiver Umgebung gedachten vorgestellten Techniken soll man verfolgen und wie müssen sie verändert werden?

Experiment Für das Experiment wurden Teilnehmer eines EDV-Kurses rekrutiert Den Testern wurden 2 verschiedene Forms/3-Dokumente, Change und Grades vorgesetzt, in denen sie die 3 festen Fehler finden sollten Tester durften keine Formeln ändern

Change Errechnet die optimale Anzahl an Dollar, Vierteldollar, 10-Cent-Stücken, 5-Cent- Stücken und 1-Cent-Stücken, die man beim Wechseln eines Gefäßes voller Pennies zurückbekommt Begrenzter Datenfluss und nur eine mögliche Ausgabe

Grades Berechnet eine Note (A, B, C, D, F) aus den bei 4 Quizfragen und einer Zusatzfrage erreichten Punkten. Es gibt mehrere relativ unabhängige Datenfluss-Pfade.

Ergebnisse Effizienz Wie gut werden korrekte Zellen visuell von fehlerbehafteten unterschieden? Robustheit Wie gut ist die Unterscheidung, wenn der Benutzer korrekte Zellen als falsch markiert und umgekehrt? Verhältnis zwischen Effizienz und Kosten

Effizienz Untersuchung der Unterscheidbarkeit zwischen falschen und korrekten Zellen zu Beginn der Testphase, nachdem die erste Zelle als fehlerhaft markiert wurde am Ende der Testphase

Effizienz Hypothese 1 Zu dem Zeitpunkt, an dem die erste Zelle als fehlerhaft markiert wird, gibt es keinen signifikanten Unterschied zwischen der Effizienz der drei Techniken zur Fehlerlokalisierung.

Effizienz Hypothese 2 Zu dem Zeitpunkt, da alle Tests abgeschlossen sind, gibt es keinen signifikanten Unterschied zwischen der Effizienz der drei Techniken.

Effizienz - Change Erstes X Letztes X TC B NC TC B NC Change 0.212-0.008 0.201-0.466-0.227-0.152 Beim ersten Feedback liefert die Blocking Technik das beste Ergebnis Am Ende des Testvorgangs ist die Test-Count Technik deutlich besser als die anderen

Effizienz - Grades Erstes X Letztes X TC B NC TC B NC Grades -0.016-0.093-0.190-0.151-0.031 0.081 Am Anfang war die Nearest-Consumer Technik deutlich besser als die anderen Am Ende ist auch hier die Test-Count Technik am besten

Ergebnisse Effizienz Beide Hypothesen sind falsch, es gibt große Unterschiede zwischen den Techniken Am Ende des Testens schnitt die Test- Count Technik am besten ab Für das erste Feedback scheint Blocking bei nur einem Pfad am geeignetsten zu sein, bei vielen Datenpfaden die Nearest-Consumer Technik

Effizienz dunkelste Zelle tatsächlich fehlerhaft? korrekt fälschlich TC B NC TC B NC Change 18.18% 13.64% 31.82% 11.36% 13.64% 9.09% Grades 44.19% 51,16% 39.53% 6,98% 11.63% 16.28% Bei Changes mit Nearest-Consumers ist bei ca 30% der Tests die dunkelste Zelle fehlerbehaftet Bei Grades bei Blocking Technik in etwa 50% der Tests

Robustheit Die Benutzer können Zellen, die korrekt sind, als fehlerhaft markieren und umgekehrt Perfekte Testläufe enthalten keine falschen Markierungen Unperfekte Testläufe enthalten fälschlich platzierte Markierungen

Robustheit Hypothese 3 Wenn die erste Zelle als falsch markiert wird, gibt es für perfekte Testläufe keine signifikanten Unterschiede in der Effizienz der drei Techniken.

Robustheit Hypothese 4 Wenn alle Tests komplett sind, gibt es bei perfekten Testläufen keine signifikanten Effizienzunterschiede zwischen den Techniken.

Robustheit Hypothese 5 Zu der Zeit, da alle Tests beendet sind, gibt es bei unperfekten Testläufen keine signifikanten Unterschiede in der Effizienz der Techniken.

Perfekte Testläufe Erstes X Letztes X TC B NC TC B NC Change 0.089-0.078 0.078-0.667-0.389-0.456 Grades -0.296-0.333-0.722-0.037 0 0.148 Beim Testende ist die Test-Count Technik gut Zu Begin der Testphase ist bei Changes die Blocking Technik am besten, bei Grades die Nearest-Consumer Technik

Unperfekte Testläufe TC B NC Change -0.362-0.144 0.006 Grades -0.181-0.039 0.064 Die Test-Count Technik schneidet am besten ab

Ergebnisse Robustheit Hypothese 4 könnte zutreffend sein, die anderen beiden müssen fallengelassen werden Für perfekte Testläufe gibt es zur Zeit, da die Testphase abgeschlossen ist, nur geringe Unterschiede zwischen den Techniken Die Test-Count Technik ist gegen Ende des Tests am robustesten

Ergebnisse des Experiments Bei den letzten Tests liefert die Test-Count Technik stets das beste Ergebnis, die Historie, die dabei gespeichert wird, erscheint also sinnvoll Am Anfang der Testphase liefern die Blocking oder die Nearest-Consumer Technik bessere Ergebnisse

Ergebnisse des Experiments Es scheint sinnvoll, die billige Nearest- Consumer Technik und die Blocking Technik für die frühen Phasen der Tests zu verwenden Die teure Test-Count Technik könnte dann in den späten Phasen des Tests gute Dienste leisten

Beurteilung - Vorteile Einfärben möglicherweise fehlerbehafteter Zellen kann bei der Fehlersuche helfen Eingefärbte Datenflusspfeile und leicht einzublendende Formeln helfen bei der Lokalisierung des Fehlers

Beurteilung - Nachteile Zellen mit konstantem Wert führen häufig zu unerwarteten Werten, werden aber nicht eingefärbt Benutzer können einen Schock bekommen, wenn plötzlich sehr viele Zellen rot angezeigt werden Die vorgestellten Techniken liefern noch keine wirklich guten Werte für Effizienz und Robustheit Fehlerhafte und korrekte Zellen werden eingefärbt

Quellen J. Ruthruff et al.: End-user software visualizations for fault localization. Proc. 1. ACM Symp. on Software Visualization, 2003. Karen Rothermel's MS thesis (2000): "Empirical Studies of a WYSIWYT Testing Methodology". OSU readers: http://web.engr.oregonstate.edu/~burnett/forms3/theses.ht ml Die Homepage von Forms/3 http://web.engr.oregonstate.edu/~burnett/forms3/forms3.ht ml

Das wars von mir Noch Fragen?