![Page 1: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/1.jpg)
Prinzipien derSoftware Visualisierung
Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005.
Andreas Wedel
![Page 2: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/2.jpg)
Übersicht Was ist Software Visualisierung? Teilgebiete der Software Visualisierung. Zielgruppe! Wichtige Faktoren Visualisierungspipeline Beispiele Praktische Aufgaben (Interpretation von SV)
![Page 3: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/3.jpg)
Was ist Software Visualisierung? Teilgebiet des Software Engineering
Größeres Team Höheres Scheiterungsrisiko Typisches Projekt: nicht fristgerecht + über
Budget Lesen von 1MLOC mit 125 Loc/Hr benötigt
8000 Std. = 200 40-Std. Wochen = 4 Jahre Versuche Software verständlicher zu machen.
![Page 4: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/4.jpg)
Was ist Software Visualisierung? Teilgebiet der Informationsvisualisierung.
Visualisierung ist: "... use of computer-supported, interactive, visual representations of data to amplify cognition." (Card, Mackinlay und Shneiderman, 1999)
![Page 5: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/5.jpg)
Was ist Software Visualisierung? Teilgebiet der Informationsvisualisierung. Viele Variablen Große Datenmengen Voneinander abhängige Daten Ausreißer Verständigungsfragen: Kontext + Detail Informationsüberfluss Statisch oder dynamisch?
![Page 6: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/6.jpg)
Teilgebiete der Software Visualisierung
![Page 7: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/7.jpg)
![Page 8: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/8.jpg)
Zielgruppe! Zwei Hauptaufgaben
Software-Entwicklung (Bildung, Schüler, Lehrer) Software-Verstehen (Industrie, Entwickler, Tester)
Erfahrene Benutzer vs. Anfänger Entwickler vs. Manager Experten verlangen:
Kontrolle (bestimme selbst den Fokus) Skalierung (anwendbar für größere Probleme) Geschwindigkeit und Vollständigkeit
![Page 9: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/9.jpg)
Besteht ein Markt für SV?
![Page 10: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/10.jpg)
Software Visualisierung Techniken und Werkzeuge können helfen…
![Page 11: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/11.jpg)
Software Visualisierung … zumindest ein wenig
![Page 12: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/12.jpg)
Visuellen Informationsüberfluss vermeiden Überschwemmung mit Komplexität und
Datenmengen hemmt Verständnis. „Magische Nummer“ 7 +/- 2 Dimensionen Was visualisiere ich und was lasse ich weg? Passende Metaphern finden. Skalierung auf „real-world“ Probleme. Komplexitätsmanagement
![Page 13: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/13.jpg)
„Magische Nummer“ 7 +/- 2 G. A. Miller 1957, The Magical Number 7 plus or
minus two: Some Limits on our Capacity for Processing Information.
Experiments on maximal number of points, pitches, numbers, … poeple can identify.
…humans can process or hold in memory about seven (plus or minus two) items of information at a time
primary basis for the chunking principle!
![Page 14: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/14.jpg)
2 7 6 4 9
![Page 15: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/15.jpg)
2 7 6 5 8 3 7 5 8 4 3 6 6 7 5
![Page 16: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/16.jpg)
email The same argument was used in the Lady Bird Johnson Act
to prohibit billboards within X feet of highways, and the billiard industry (a strange group that deserves an essay of its own) was hurting. They hired a man to travel around from town to town trying to refute the claims that more than 7 items of information could cause accidents. The man's wife did not like her husband being constantly on the road, so she asked him about it. He told her that the root of his trouble was some damn Harvard professor who wrote a paper about 7 bits of information. She, being herself a psychologist, said that she did not think that that was what Professor Miller's paper said.
![Page 17: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/17.jpg)
Wichtige Faktoren bei der Software-Visualisierung (nach Knight 2002) Skalierbarkeit
Anwendbar auf größere Softwaresysteme? Evolution Navigation, Interaktion und Orientierung
Verständlichkeit und Übersichtlichkeit? Automatisierung
Menschliche Interaktion bei großen Projekten?
![Page 18: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/18.jpg)
Die Visualisierungspipeline Aufbereitung der Information
Was kann dargestellt werden?
Enkodierung Wie wird visualisiert?
Präsentation und Interaktion Was nimmt der Benutzer wie dar?
![Page 19: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/19.jpg)
Aufbereiten der Information – Was? Statisch oder dynamisch? Nach Roman und Cox vier Aspekte:
Code Pretty-Printer, Zoomlinsen, Farben,...
Steuerung Welche Komponenten waren wann aktiv, Kommunikation,
Synchronisation, …
Daten und Interne Datenstruktur, …
Verhalten Zustände, Abfolge von Ereignissen, …
![Page 20: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/20.jpg)
Enkodierung – Wie? Graphical excellence… [Tufte, 1983] … is the well-designed presentation of interesting data – a matter of
substance, of statistics, and of design. … consists of complex ideas communicated with clarity, precision, and
efficiency. … requires telling the truth about the data … gives the viewer the greatest number of ideas in the shortest time with
the least ink in the smallest space.
![Page 21: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/21.jpg)
Enkodierung – Wie? Aufgabe der Visualisierung besteht darin, die
Entwicklung von Vorstellungsbildern und mentalen Modellen zu fördern.
Wichtige Rollen: Effizienz: Verständlichkeit, Aussagekraft, Eindeutigkeit Ästhetik: Farb- und Formgestaltung Informationsdichte, Übersichtlichkeit und Kompaktheit Vertrautheit und Praxisbezug Erwartungskonformität und Interaktivität
![Page 22: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/22.jpg)
Enkodierung – Wie? Welche Medien sind für die Software-Visualisierung
geeignet? Papier Computermonitore VR-Umgebungen Hochauflösende, große Displays
Welcher Detailgrad wird verwendet? Direkte oder abstrakte Darstellung
Wie kann der Animator die Visualisierung bestimmen? Prozeduren implementieren, selbständiges Lernen, …
![Page 23: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/23.jpg)
Präsentation und Interaktion Graphisches Vokabular (z.B. in 2D)
Position auf der Ebene Größe (Länge, Fläche, Volumen) Helligkeitswert Musterung, Textur, Farbe Richtung, Orientierung, Form …
![Page 24: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/24.jpg)
Präsentation und Interaktion Interaktionsmöglichkeiten durch
Steuerung (z.B. Bildlaufleisten) Über die Abbildung (z.B. Klicken)
![Page 25: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/25.jpg)
Beispiele - SeeSoft
![Page 26: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/26.jpg)
Beispiele - SeeSoft Code age – Neuer Kode in rot, alter in blau
![Page 27: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/27.jpg)
Beispiele - SeeSoft Execution profile – Rote Zeilen werden oft
ausgeführt, schwarze Zeilen sind Kommentare
![Page 28: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/28.jpg)
Beispiele - Imsovision IMmersive Software VISualisatION (nutzt Cave)
![Page 29: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/29.jpg)
Beispiele - Treemaps
![Page 30: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/30.jpg)
Beispiele – FishEye View (Applet)
![Page 31: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/31.jpg)
Beispiele – Glyphs Chernoff Faces (bis zu 15 Dimensionen)
![Page 32: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/32.jpg)
Beispiele – Glyphs Kiviat Charts
![Page 33: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/33.jpg)
Beispiele – CodeCrawler
![Page 34: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/34.jpg)
Beispiele – Class BluePrint
![Page 35: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/35.jpg)
Beispiele – Class BluePrint
![Page 36: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/36.jpg)
Beispiele – Class BluePrint
Klasse hat 3 initialize layer methods wobei die rechten beiden von der linken aufgerufen werden.
Kein Überschreiben, keine konstanten Methoden, kein Erweitern (aus Farbschema erkennbar)
![Page 37: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/37.jpg)
Beispiele – Class BluePrint
![Page 38: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/38.jpg)
Beispiele – OO Tableau Software Visualisierung zur Evaluierung von
OO Software (Manager‘s View)
![Page 39: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/39.jpg)
Studien zu Erfahrungen mit SV (1) Umfrage Bassil und Keller unter Benutzern (2001):
Wichtigste Vorteile sind Zeitersparnis bei der Ausführung von Aufgaben Besseres Verständnis des analysierten Softwaresystems
Funktionale Aspekte wie Suchen, Browsen, Farben und Zugriff auf darunter liegendem Source Code wichtig.
Hierarchische Darstellung gewünscht. Werkzeugzuverlässigkeit wichtigster Punkt. Gefolgt von
einfacher Benutzbarkeit und Unterstützung großer Systeme. Kaum gewünscht: Animation, 3D, VR-Technik Herausforderung: Third Party Tools integrieren sowie
Datenimport und Datenexport
![Page 40: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/40.jpg)
Studien zu Erfahrungen mit SV (2) Umfrage Koschke unter Wissenschaftlern
(2003)
SV notwendig:
40 %
SV wichtig:
42 %
![Page 41: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/41.jpg)
Studien zu Erfahrungen mit SV (2)
![Page 42: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/42.jpg)
Studien zu Erfahrungen mit SV (2)
![Page 43: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/43.jpg)
Aktuelle Situation und Ausblick Erst 2002 mit VISSOFT und 2003 mit SoftVis sind
eigenständige Konferenzen berufen worden. 10 Jahre nach dem Höhepunkt der Technologie! Forderung nach Standard-Austauschformaten zur
Integration in Programmen Erstellen von Kriterien zur Evaluation. Wissenschaft und Industrie setzen verschiedene
Prioritäten. 3D Cyberspace und Datenhandschuh erfolgreich?
![Page 44: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/44.jpg)
Praktische Aufgabe 1 Interpretiere folgendes „Ternary Diagram“:
Ermöglicht eine „Extra-Dimension“ Normalisierte Koordinaten (im Bezug auf Anzahl Aufrufe/Zugriffe)
![Page 45: Prinzipien der Software Visualisierung Vortrag im Rahmen des Praktikums eXtreme Programming im Februar/März 2005. Andreas Wedel](https://reader036.vdocuments.pub/reader036/viewer/2022062622/55204d6749795902118bc403/html5/thumbnails/45.jpg)
Praktische Aufgabe 2 Class Blueprint:
Was könnte der Blueprint der folgenden Klasse über die Klasse selbst aussagen?