Universität Karlsruhe  
 
 
 Das Institut
 Lehre
 Publikationen
 Projekte
  Home
 
  Suchen
 
  Wiki (intern)
 
  Kontakt


Vorlesung: Mensch-Maschine-Dialog II

Die 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

 
  Bei Fragen oder Kommentaren wenden Sie Sich bitte an: i31www.ira.uka.de
Copyright © Institut für Betriebs- und Dialogsysteme
Letzte Änderung: 04. October 2011
     
Druckversion