PHP Blogger

Startseite Schreib mir ne Mail! RSS Abo Webnews

10 Tipps, um die Applikations Usability zu steigern

Im letzten Artikel wurden Usability Probleme mit vermeindlich “dummen” Usern angesprochen. Klar: Das Design einer Anwendung muss sich in erster Linie an den Menschen orientieren, die die Anwendung später bedienen sollen. Der aus technischer Sicht vielleicht optimale Workflow steht dabei im Hintergrund. Leider ist das eher die Ausnahme.

Ein interessante und leider der Wahrheit entsprechende Abbildung habe ich bei Cognetics gefunden:

Cognetics: Usability Tests

Deshalb gibt’s vom PHP Blogger jetzt 10 Tipps und Tricks, wie sich die Usability steigern lässt…

…und vor allem was die üblichen Stolperfallen sind, die ein System unübersichtlich gestalten:

  1. Orientiere Dich bei der Oberfläche an Anwendungen, die der User-Zielgruppe bereits bekannt ist.
  2. Mache oft verwendete Funktionen Deiner Applikation schnell erreichbar.
  3. Alle Hauptfunktionen sollten mit höchstens 2 Klicks erreichbar sein. Der Weg dorthin muss unbedingt intuitiv sein.
  4. Verwende für die Benennung der Funktionen keine technischen, sondern umgangssprachliche Ausdrücke (Beispiel: statt “Replizieren” von Datenbanken sprich lieber von “Abgleichen” oder “Veröffentlichen”.
  5. Positioniere den gemeinsamen Nenner aller Funktionen (klassisch: “Speichern”, “Abbrechen”, “Alles markieren”, “Exportieren”, usw) immer an der gleichen Stelle. Gut eignen sich feststehende Menüs, oder Menüs, die mitscrollen.
  6. Achte darauf, das das Design nicht leidet, wenn Menüs erweitert werden müssen. Oft ist ein Applikationslayout auf eine bestimmte Anzahl von Einträgen in den Menüs eingeschränkt und muss komplett umgearbeitet werden, wenn sich der Applikationsumfang drastisch erweitert.
  7. Gruppiere die Applikationsfunktionen in sinnvolle Gruppen. Lieber eine aussagekräftige Gruppe mehr als eine allgemeine Gruppe, die unterschiedlichste Funktionen beinhaltet.
  8. Verstecke keine impliziten Funktionen! Wenn ein Button zwei Funktionen erfüllt wie “Speichern und Schließen” dann nenne ihn auch so. “Schließen” allein bedeutet in der Regel, das die Oberfläche (auf der man sich befindet) unverändert bleibt.
  9. Gib dem Benutzer die Kontrolle. Gut sind Undo- (Aktion rückgängig machen) oder Papierkorb-Funktionen (sammelt gelöschte Elemente). Wenn das nicht geht, warne den Benutzer, bevor er eine unumkehrbare Funktion ausführt und gib ihm die Möglichkeit zu Abbruch.
  10. Achte darauf, das Sicherheitsmechanismen wie Lösch-Abfragen nicht durch das Abschalten von Laufzeit-Optionen (etwa Javascript im Browser) umgangen werden können.

Interessante Links gibts hierzu übrigens bei Dr Web: http://www.drweb.de/usability/index.shtml

Und jetzt noch ein Tipp für alle, die eine Applikation betreuen: Achtet darauf, das alle wichtigen Aktionen protokolliert werden (vor allem das Löschen von Elementen). Neben Uhrzeit und Aktion sollten auch betroffene Elemente und der ausführende User geloggt werden.

So lässt sich oft zweifelsfrei nachvollziehen, wer etwas kaputt gemacht hat ;) Ich spreche da aus Erfahrung…

Ähnliche Artikel:

  1. Usability von Paginations-Elementen
  2. MySql Performance steigern

Florian meint dazu:

26. Mai 2008 um 14:24

Dem Tipp 9 kann ich nicht ganz zustimmen, obwohl das eigentlich Standard ist. Wesentlich besser ist es die Aktion ohne Nachfrage auszuführen, sie aber wieder rückgängig zu machen. Also ein Hinweis wie “Das Elemenet wurde gelöscht. Rückgängig machen” der zumindest bis die nächste Aktion ausgeführt wird an gut sichtbarer (und daher erreichbarer) Stelle plaztiert wird. Als Beispiel führe ich einfach Gmail an (Löschen einer E-Mail)

timi meint dazu:

26. Mai 2008 um 15:24

Hi Flo, das ist nur für den Fall gedacht, dass man eine Aktion nicht rückgängig machen kann. Wenn Du z.B. einen Job auf einem Fremdsystem (etwa SAP o.ä.) auslöst, über den Du keine Kontrolle hast (daher auch keine Undo-Funktion)…

Aktionen ohne Rückfrage durchzuführen halte ich für zweifelhaft. Einige Aktionen wie Batch-Jobs oder Video-Konvertierung könnten die CPU Leistung des Servers sehr stark negativ beeinflussen. Deshalb sollte man keine unnötigen Aktionen durchführen, die sich der User später wieder anders überlegt.

butzi meint dazu:

26. Mai 2008 um 16:24

Schöner Artikel.

Besonders Punkt 10 wird gern vernachlässigt.

Michael meint dazu:

27. Mai 2008 um 11:11

Hi,

ich finde die Liste recht vollständig. Gerade auch Punkt 6 ist ein Problem, mit dem man sehr häufig zu kämpfen hat.

mfg Michael

timi meint dazu:

27. Mai 2008 um 11:17

Danke ihr zwei… Wenn Euch noch weitere Tipps einfallen, immer her damit - dann erweitere ich den Artikel entsprechend :)

butzi meint dazu:

27. Mai 2008 um 12:03

Ein Tipp wäre noch, soviel Drag & Drop wie möglich. Das bekommen wir von unseren Kunden oft zu hören, warum man das nich einfach hier oder dort hinschieben kann.
Allerdings hat das wie alles auch Grenzen :-)

Der kleine Wochenrückblick 22 auf trilodge computin blog meint dazu:

30. Mai 2008 um 08:58

[...] 10 Tipps um die Usability von Applikationen zu steigern. [...]

Dirk Niemeier meint dazu:

28. Juni 2008 um 20:45

Eine Undo-Funktion ist sicherlich eine tolle Sache und aus meiner Sicht (fast) immer einem Nachfrage- und Bestätigungs-Dialog-Marathon vorzuziehen. Ausnahme ist natürlich, wenn es sich um unwiderrufliche oder sehr folgenreiche Aktionen (wie schon angesprochen z.B. recht serverlastige Sachen). In meiner Firma ist es leider Teil der “Politik”, eher mit Nachfrage-Dialogen um sich zu schmeißen, was mir persönlich sehr widerstrebt.

Wie auch immer. Interessieren würde mich viel eher die Frage, wie so eine Undo-Funktion bei Webapplikationen (PHP, Javascript, MySQL) denn aussehen könnte. Vielleicht ist es möglich bei simplen Änderungen auf der Maske einfach immer die komplette (X)HTML-Seite (per AJAX) in die Session zu speichern, aber spätestens bei Datenbankänderungen ist der Ofen für eine Undo-Funktion doch eigentlich aus, oder? Oder kann eine transaktionsorientierte Datenbank hier Abhilfe schaffen? Selbst bei Transaktionen hätte ich ja noch das Problem, dass es zu Inkonsistenzen führen kann, d.h. ich mache eine Änderung, ein anderer Benutzer greift auf meine geänderten Daten zurück und ich mache plötzlich einen Rollback (also ein Undo).

Mit freundlichen Grüßen
Dirk Niemeier

timi meint dazu:

29. Juli 2008 um 20:27

Dirk, Du hast es selbst schon gesagt - bei vielen Dingen hilft nur ein Query-Rollback um die Undo-Funktion wirklich sicher zu gestalten.

RSS für Kommentare zu diesem Artikel · TrackBack URI

Schreib Deine Meinung