|
|
Vorlesung: Mensch-Maschine-Dialog IIDie Vorlesung Mensch-Maschine-Dialog II vermittelt Prinzipien und Techniken, die der Architektur der Hard- und Software moderner Benutzungsschnittstellen zu Grunde liegen. Ein besonderer Schwerpunkt der Vorlesung liegt im Bereich heutiger Fenstersysteme und graphischer Benutzungsschnittstellen (Graphical User Interfaces, kurz GUIs). Die interne Funktionsweise von Fenstersystemen wird im ersten Teil der Vorlesung konzeptionell durch Herleitung eines Referenzmodelles, danach an konkreten Beispielen wie Windows und X11 beleuchtet. Die darauf aufbauenden Architekturen diverser Toolkits, UIMS-Werkzeuge und plattformübergreifender Programmierschnittstellen wird in ihrem Prinzip und an ausgewählten Beispielen erläutert. Die Vorlesung gliedert sich in folgende Kapitel:
1 Grundlagen
1.1 Umfeld und Einordnung
Historische Entwicklung des Mensch-Maschine-Dialogs seit 1945, Schwierigkeiten bei
Entwurf und Implementierung von GUIs, systembezogene und benutzerbezogene Aspekte,
ergonomische Richtlinien, Gestaltgesetze, Codierungstechniken, wichtige Usability
Heuristiken, die Physiologie der Farbwahrnehmung.
1.2 Hardwaretechnische Grundlagen
| · | 2D-Sichtgeräte: technische und ergonomische Eigenschaften von Kathodenstrahlröhre,
LC-Displays, TFT, Plasma Panels, LED, FED, VFD, Projektortechniken. |
| · | 3D-Sichtgeräte: Shutter-Brillen, RG-Brillen, autostereoskopische Displays, Head-Mounted
Displays, bewegte Projektionsflächen, CAVE. |
| · | 2D-Eingabehardware: Klassifikation von Eingabegeräten, Tastaturen, Maus, Trackball,
Joystick, Lightpen, Tabletts, Scanner, Digitalkameras. |
| · | 3D-Eingabehardware: Spaceball, Spacemouse, 3D-Tablett, Cyberbat, Motion Tracking, Motion
Capturing, Datenhandschuh, Datenanzug, 3D-Scanner. |
| · | Spracheingabe, Biometrie, Eye-Tracking, Gesteneingabe |
2 Theoretische Konzepte
2.1 Aufgaben und Architektur von Fenstersystemen
Basisaufgaben eines Fenstersystems, ein minimales Fenstersystem-API und seine
Mängel, die Notwendigkeit höherwertiger Werkzeuge, ein Anforderungskatalog für
Fenstersysteme, Kriterien für die Auswahl eines Fenstersystems
2.2 Ein Referenzmodell für Fenstersysteme
| · | Graphik- und Ereignisbasis: Aufgaben, Objekte und Operationen der Graphikbasis,
Restaurationsfunktionen nach Verdeckungen, Ausgabeprimitive und ihr Attribute, die
Struktur und Verarbeitung von Ereignissen, Erweiterungsmöglichkeiten der Graphik- und
Ereignisbasis. |
| · | Ressourcenverwaltung: logische und reale Ressourcen, Beispiele für Ressourcen
(Fenster, Zeichenflächen, Fonts, Cursor, Farbtabellen, graphischer Kontext),
Gerätemultiplex und Anwendungsdemultiplex, Synchronisationsverfahren, Einbettung des
Ressourcenverwalters in das Betriebssystem. |
| · | Window-Manger: Abgrenzung des Window-Managers zur Ressourcenverwaltung, Techniken
des Window-Managements (Menütechnik, Direktmanipulation, Fensterdekorationen,
Icon-Technik, Anordnungstechniken, Lauschtechniken, Fokuswechsel, Navigationstechniken,
Virtuelle Screens, Desktops, Späte Verfeinerung), Freiheiten und Konventionen des Window
Managers. |
| · | Anwenderwerkzeuge: Anforderungen an Werkzeuge, Toolkits, Widget-Sets, Abgrenzung
UIT-UIDS-UIMS, Programmierparadigmen: prozedural- oder objekt-orientiert, Zusammenspiel
zwischen Toolkit und Anwendung, die Ereigniswarteschleife, Callback-Mechanismen, abstrakte
Definition einfacher und zusammengesetzter Dialogbausteine, Komposition, Verfeinerung und
späte Verfeinerung von Dialogbausteinen, automatisches Geometriemanagement. |
| · | Möglichkeiten der UI-Spezifikation: sprachbasiert (Grammatiken, Ereignissprachen,
deklarativ, prozedural, Constraints, STN), graphisch, visuelle Programmierung, Application
Frameworks, Prototyping-Werkzeuge, Frames, Karten, Interface-Builder, aktuelle
Forschungsgegenstände im Bereich User Interface Design |
2.3 Aspekte verteilter Fenstersysteme
Definition eines verteilten Fenstersystems,
Anwendungsfelder für verteilte Fenstersysteme, Realisierung der Kommunikation,
Ausprägungen der Kommunikationspartner, Client-Server-Beziehungen, breitbandige und
schmalbandige Übertragung, Kommunikationsschichten im ISO/OSI-Referenzmodell,
Möglichkeiten zur Optimierung der Kommunikation, Adressierung und Authentifizierung,
Beispiele: X11, VNC, Windows Based Terminals
2.4 User Interface Management Systeme
Aufgabenbereiche von Endbenutzer, Anwendungsprogrammierer, Graphik-Designer,
Dialogautor, UI-Auswerter, Anwendungsanalytiker, Ergebnisse der Seeheim- und
Seattle-Workshops, externe, interne und geteilte Dialogsteuerung, thematische, räumliche
und zeitliche Zerlegung der Ausführungsumgebung, STN, RTN, UIDE-Projekt, die Realisierung
von UIMS mittels Fenstersystemen, Adaptionsmöglichkeiten, Beispielsysteme
3 Praktische Realisierungen
3.1 Microsoft Windows
Historisches: Kurzüberblick über die technische Weiterentwicklung von
Windows1/2/3.x, Windows95/98, Windows NT 4.0/5.0, die Rolle der Kompatibilität zu
Vorgängerversionen und Intel-Prozessoren, Windows als Betriebssystem: USER, GDI, KERNEL,
die Realisierung Graphik- und Ereignisbasis in Windows, Einordnung von Windows anhand der
Bewertungskriterien aus Teil I.
3.2 X11: Ein verteiltes Fenstersystem
Historische Entwicklung von X, Abgrenzung gegenüber Microsoft Windows, das
asynchrone X-Kommunikationsprotokoll und seine Pakettypen, die Client-Server-Architektur
von X, Aufgaben und Verteilung von X-Server und X-Clients, interner Aufbau eines
X-Servers, Graphik- und Ereignisbasis, Ereignistypen, Empfangen und Behandeln von
Ereignissen, Klassifikation von X-Ereignissen, Ressourcenverwaltung, flexible Realisierung
des Window-Management: Diskussion diverser Window-Manager (mwm, fvwm, ctwm, kwm) und ihrer
Techniken, Programmierbeispiele auf verschiedenen Ebenen: Xlib, X Toolkit Intrinsics,
Motif, XRT, der Lebenszyklus von X-Widgets, späte Verfeinerung, die Zukunft von X11:
Broadway, Desktops (CDE, KDE, GNOME)
3.3 Weitere Fenstersysteme
Einzelne weitere Fenstersysteme, die größtenteils nicht mehr genutzt werden, aber
interessante Konzepte verwirklichen.
Zum Verständnis der Vorlesung Mensch-Maschine-Dialog II sind Kenntnisse aus
Mensch-Maschine-Dialog I nützlich, aber nicht unbedingt erforderlich.
Notice: Undefined index: show_script in /export/home/www/i31www/lehre/vorlesung_details.php on line 2
nach oben
| Literatur: | A. Klingert: Einführung in Graphische Fenstersysteme, Springer-Verlag, Berlin |
| Hörerkreis: | Informatiker und Hörer anderer Fachrichtungen nach dem Vordiplom |
| Skript: | Folienkopien werden hier bereitgestellt |
|
|
|
|
|