Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
58 Cards in this Set
- Front
- Back
Externes Design
vs Internes Design |
Benutzersicht: Look and feel
Entwicklersicht: Implementierung, Architektur, Codeaufteilung, Patterns, etc. |
|
Conceptual Model
vs Action & Presentation Language |
Vorstellung im Kopf des Benutzers
das sichtbare UI |
|
ISO 9241-11 und Quesenbery
(Usability Kriterien) |
Effektivität: Benutzer können ihre Ziele erreichen
Effizienz: Benutzer erreichen Ziele mit angemessenem Aufwand Zufriedenheit: Benutzer werden in ihrer Zufriedenheit nicht beeinträchtigt |
|
UI Design Prozess (Usability Kompakt)
|
Analyse
Modellieren Spezifikation Evaluation Realisierung |
|
UI Design Prozess (Usability Kompakt)
--> Analyse |
Aktivität: Benutzer beobachten
Aktivität: Workshops |
|
UI Design Prozess (Usability Kompakt)
--> Modellieren |
Ergebnis: Personas
Ergebnis: Szenarios Ergebnis: Low-FiGUI Design |
|
UI Design Prozess (Usability Kompakt)
--> Spezifikation |
Ergebnis: UseCases, Feature List
Ergebnis: Requirements Document Ergebnis: Detail External Design |
|
UI Design Prozess (Usability Kompakt)
--> Realisierung |
Ergebnis: Internal Design
|
|
component listener
|
reagiert auf Änderung der Grösse, Position oder Sichtbarkeit der Komponente
|
|
focus listener
|
reagiert wenn die Komponente den Fokus bekommt oder verliert
|
|
key listener
|
reagiert wenn ein key input kommt (aber nur falls die Komponente den Fokus hat)
|
|
mouse listener
|
reagiert auf Mausklicks, Cursor der sich über der Komponente befindet oder sie verlässt
|
|
mouse-motion listener
|
reagiert sobald der Cursor innerhalb der Komponente die Position ändert
|
|
mouse-wheel listener
|
reagiert sobald das mouse-wheel gedreht wird
|
|
hierarchy listener
|
Listens for changes to a component's containment hierarchy of changed events.
|
|
hierarchy bounds listener
|
Listens for changes to a component's containment hierarchy of moved and resized events.
|
|
Layout-Regeln nach Galitz
|
Balance: Unausgewogen / Ausgewogen (z.B linke Spalte höher als rechte)
Symmetrie: Unsymmetrisch / Symmetrisch Regelmässig: Unregelmässig / Regelmässig (Durcheinander vs. Geordnet) Vorhersehbar: Unvorhersehbar / Vorsehbar Sequenzialität: das Auge führen (oben |
|
UI-Controls für Auswahl-Aufgaben
--> Einzelauswahl |
Bestes: Radio Buttons
bei wenig Platz: DropDown/Pop-Up List Box |
|
UI-Controls für Auswahl-Aufgaben
--> Mehrfachauswahl |
Bestes: Checkboxen
bei wenig Platz: Multiple-Selection List |
|
UI-Controls für Auswahl-Aufgaben
--> Offene Einfachwahl |
Bestes: Radio Buttons mit "Andere"
bei wenig Platz: Combobox |
|
UI-Controls für Auswahl-Aufgaben
--> Wert in einem Bereich setzen |
Bestes: Spin Button
bei wenig Platz: Textbox |
|
3 Schichten Modell
|
Presentation: User Interface
Domain: Model Persistence: Datenhaltung |
|
Nielsen Regeln zur Heuristischen Evaluation
|
Sichtbarkeit des Systemstatus
Enger Bezug zw. System und realer Welt Nutzerkontrolle und Freiheit Konsistenz & Konformität mit Standards Fehler-Vorbeugung Sichtbarkeit statt sich-erinnern-müssen Flexibilität und Nutzungseffizienz Ästhetik und minimalistischer Aufbau Nutzern helfen Fehler zu bemerken und zu beheben Hilfe und Dokumentation |
|
Nielsen Kriterien
--> Sichtbarkeit des System-Status |
In welchem Bereich befinden wir uns?
Wait Cursor, Button/Menu enable/disable, Progressbar, CRUD |
|
Nielsen Kriterien
--> Enger Bezug zwischen System und realer Welt |
Entwickler- und Benutzer-Vokabular unterschiedlich
|
|
Nielsen Kriterien
--> Nutzerkontrolle und Freiheit |
Sichtbare Informationen können auch (am Ort) verändert werden, Abbrechen (auch mit „falschen“ Daten), Speichern (auch mit „falschen“ Daten?), Undo, keine überstrenge Validierung
(zB nur Postleitzahlen mit 4 Zahlen zulassen) |
|
Nielsen Kriterien
--> Konsistenz & Konformität mit Standards |
Operationen und Informationen verschwinden nicht (resize), Sinnlose Operationen disabled, Formate vorgeben (Field Help), Selektieren statt Eingeben (z.B. Datum), aber Achtung bei sehr langen Listen
|
|
Nielsen Kriterien
--> Sichtbarkeit als Sich-erinnern-Müssen |
Menüs statt Kommandos, Neutippen von Informationen verhindern
|
|
Nielsen Kriterien
--> Flexibilität und Nutzungseffizienz |
Mauswege minimieren mit Menüs, Shortcuts, Buttons, Popups, keine unnötige Navigation (z.B. Suchanfrage und Resultat in verschiedenen Fenstern)
|
|
Nielsen Kriterien
--> Ästhetik und minimalistischer Aufbau |
Aufgabenorientiert Informationen zeigen/verteilen (nicht alles im gleichen Screen), Benutzern beim Ordnung halten helfen (nicht gleiches Objekt mehrfach)
|
|
Nielsen Kriterien
--> Nutzern helfen, Fehler zu bemerken, zu diagnostizieren und zu beheben |
Undo statt Dialoge, Validierung mit Field Help (real time validierung)
|
|
Nielsen Kriterien
--> Hilfe und Dokumentation |
Verweis auf Benutzerhandbuch/Hilfe
|
|
Typen von GUI Benutzer Aktionen
|
Navigation
Objekt-Gruppen Operationen & Selektion Objekt-Operationen Anwendungs-Operationen(Anwendung als Objekt) Datenhaltung / Import / Export |
|
Typen von GUI Benutzer Aktionen
--> Navigation |
Zur „richtigen“ Ansicht gelangen
Zur richtigen Objekt-Gruppe gelangen |
|
Typen von GUI Benutzer Aktionen
--> Objekt-Gruppen Operationen & Selektion |
Objekte Erstellen, Löschen, Sortieren, Filtern (CRUD) Objekt(e) selektieren
|
|
Typen von GUI Benutzer Aktionen
--> Objekt-Operationen |
Eigenschaften ansehen & verändern
Undo |
|
Typen von GUI Benutzer Aktionen
--> Anwendungs-Operationen(Anwendung als Objekt) |
Einstellungen ändern
Hilfe |
|
Typen von GUI Benutzer Aktionen
--> Datenhaltung / Import / Export |
Physiches Speichern
Versenden (z.B. via Mail, Message) |
|
GUI Controls zur Aktionsauslösung
|
Menüs
Context-Menüs (JPopupMenu) Buttons Toolbars Pop-Ups |
|
"Action" in Swing
|
Operationen als Objekte Kapseln
Vorteil: Wiederverwendbarkeit (enable/disable, Validierung, Benennung, etc. nur einmal machen) --> Action Implementiert immer "ActionListener" |
|
Begrifferklärung: Mnemonics
|
Aktivierung durch Alt + Key (Hierachisch), angezeigt durch underline
|
|
Begrifferklärung: Accellerators
|
Direkte Aktivierung (z.B. "ctrl & x" für ausschneiden, "ctrl & c" für kopieren, "ctrl & v" für einfügen)
|
|
Begrifferklärung: Default Button
|
Aktivierung mit Return (z.B. Enter drücken statt OK-Button) --> Default Button --> einer pro Frame, speziell markiert
|
|
Begrifferklärung: Input Map
|
Für jede Komponente kann mittels Input Maps eine Abbildung zwischen Tastaturbefehl und Aktion festgelegt werden (nicht angezeigt im UI).
--> Jede Komponente hat zwei Tabellen: InputMap: Abbildung von Tastaturbefehl auf Aktionsnamen. ActionMap: Abbildung von Aktionsnamen auf Aktionen. component.getInputMap().put(KeyStroke.getKeyStroke("F2"), „doSomething"); component.getActionMap().put("doSomething", anAction); //anAction: javax.swing.Action |
|
Drag & Drop erlauben
|
setDragEnabled für Komponente auf true setzen
--> textField.setDragEnabled(true); |
|
JTables: TableModel
|
informiert die JTable über notwendige Updates mittels Aufruf von fireTableRowsUpdated/Deleted/Inserted/Changed
|
|
JTables: SelectionModel
|
bedient ListSelectionChangedListener
Modus kann eingestellt werden (SingleSelection, MultiSelection, etc) |
|
JTables: RowSorter(mit Filter)
|
Tables können mit RowSorter sortiert werden (Dreiecklein beim TableHeader in jeder Spalte)
table.setAutoCreateRowSorter(true) oder sorter = new TableRowSorter<BaseTableModel<Order>>(tableOrdersModel); tableOrders.setRowSorter(sorter); |
|
Checkbox (true, false) in JTable
|
Cellrenderer auf Spalte, getColumnClass überschreiben und Boolean.class zurück geben
|
|
Schneiderman: 8 Golden Rules
|
Strebe nach Konsistenz
Ermögliche es häufigen Nutzern, Abkürzungen zu benutzen Biete informative Rückmeldungen Entwerfe abgeschlossene Dialoge Biete einfache Fehlerbehandlung Erlaube einfache Umkehrung von Aktionen Unterstütze interne und lokale Kontrolle Verringere Abfragen des Kurzzeitgedächtnisses |
|
Schneiderman: 8 Golden Rules
--> Strebe nach Konsistenz |
Interne und externe Konsistenz
|
|
Schneiderman: 8 Golden Rules
--> Ermögliche es häufigen Nutzern, Abkürzungen zu benutzen |
Experten und Anfänger unterstützen (Mnemonics, Accelerators)
Universal Usability |
|
Schneiderman: 8 Golden Rules
--> Biete informative Rückmeldungen |
Feedback über laufende Funktionen oder den Systemstatus
|
|
Schneiderman: 8 Golden Rules
--> Entwerfe abgeschlossene Dialoge |
Klar machen wann eine Funktion/Befehlskette abgeschlossen ist
|
|
Schneiderman: 8 Golden Rules
--> Biete einfache Fehlerbehandlung |
Informationen zur Fehlersituation
Auswege |
|
Schneiderman: 8 Golden Rules
--> Erlaube einfache Umkehrung von Aktionen |
Undo-Funktion
|
|
Schneiderman: 8 Golden Rules
--> Unterstütze interne und lokale Kontrolle |
Benutzer fühlt sich in Kontrolle
|
|
Schneiderman: 8 Golden Rules
--> Verringere Abfragen des Kurzzeitgedächtnisses |
Anzeigen statt Abfragen
|