it-swarm.com.de

Legacy-Anwendungen und Legacy-Benutzer "modernisieren"

Ich habe die Aufgabe, viele ältere UNIX-basierte Anwendungen auf neue webbasierte Anwendungen zu modernisieren. Die UNIX-Anwendungen sind vollständig tastaturbasiert (dh "04", um die vierte Anwendung auszuwählen, "Enter", um zum nächsten Feld zu gelangen, "M", um zum Menü zurückzukehren usw.). Die Benutzer dieser Legacy-Anwendungen sind daran gewöhnt Dies und sind ziemlich schnell in der Arbeit mit diesen Anwendungen, da sie ihre Verknüpfungen kennen.

Wenn sie die neuen webbasierten Versionen sehen, werden sie oft verschoben. Sie sehen viel Klicken und haben sofort das Gefühl, dass sie nicht so produktiv sein können. Einige der Probleme sind Sturheit, andere sind Training, andere sind möglicherweise, dass die neuen Schnittstellen nicht so intuitiv sind, wie sie sein könnten.

Was können aus Sicht der Benutzerfreundlichkeit getan werden, um diese Benutzer anzuleiten? Welche Arten von Verknüpfungen, Funktionen und Optionen können/sollten in Webanwendungen integriert werden, um eine schnelle Dateneingabe zu ermöglichen?

(Möglicherweise müssen Benutzer die Tabulatortaste und "Datei> Drucken" kennenlernen.)

4
dangowans

Philosophischer Hintergrund

Für den Benutzer ist das System die Benutzeroberfläche. Dies ist eigentlich die Definition einer Schnittstelle durch die Programmierer. Sie können jeden anderen Teil nach Belieben ändern, solange die Benutzeroberfläche dieselbe bleibt, die die Benutzer nicht bemerken. Sobald Sie jedoch die Benutzeroberfläche ändern, wirken Sie sich auf das Leben der Benutzer aus.

DA01 ist genau das Richtige für datenintensive Anwendungen, obwohl sie eine sehr große Lernkurve haben, ist die Tastatur die beste Schnittstelle.

Sie sind jedoch nicht intuitiv. Sie sagen dem Benutzer nicht wirklich, wie sie verwendet werden sollen. Sie erfordern normalerweise ein Handbuch, interne Hilfe und viel Schulung.

Die Frage ist also: wie können Sie anklickbare Anwendungen erstellen, die weiterhin mit denselben alten Tastaturkürzeln verwendet werden können, an die alle Benutzer gewöhnt sind, während Sie neuen/nicht geschulten Benutzern eine intuitive Benutzeroberfläche bieten ?

Forschungshintergrund

Erfahren Sie alles über die folgenden Dinge:

  • Jeff Raskins Biografie, da er ein großer Fan der Tastatur war
  • Die Canon Cat (Raskin hat es geschafft) und Archy
  • The Humane Interface von Raskin (Pro-Tipp: Amazon bietet keine Kindle-Version an, aber Safari Books Online bietet eine digitale Version, die Sie mit dem Reader auf iOS/Android lesen können
  • Mozilla Ubiquity, die Benutzeroberfläche von Raskins Sohn Aza Raskin (ein bemerkenswerter UX-Designer)

Vielleicht ist es ein bisschen einseitig, alles ist Raskin-Zeug, aber sie zeigen Ihnen immer noch, wie man eine effektive, tastaturbasierte Benutzeroberfläche erstellt, was Sie in den neuesten "Entwürfen für Touchscreens wie iPhone" nicht finden können. iPad oder Android "Art von Büchern.

Nutzerforschung

Als nächstes erhalten Sie einen Bildschirm + ein Keylog und erfahren, wie Benutzer das System verwenden. Ein effektives Werkzeug hierfür wäre der Befehl UNIX script , mit dem 'Typoskripte' erstellt werden, die Sie wiedergeben können. Hoffentlich gibt es keine versteckten Zeichenverknüpfungen, sonst benötigen Sie möglicherweise auch Keymon .

Erstellen von Storyboards mit ursprünglicher Funktionalität

Zeichnen Sie als Nächstes ein Flussdiagramm, wobei jeder Tastenbildschirm mit einem Pfeil verbunden ist, und notieren Sie für jeden Pfeil die Tasten, die Sie tatsächlich dorthin bringen. Ein Beispiel wäre:

TUI flow example

Funktionalität verbessern

Hier kommt der Trick: Gestalten Sie jeden der Tastenbildschirme mit ihrem grafischen Äquivalent neu , um sicherzustellen, dass die Tastaturkürzel zwischen ihnen gleich bleiben .

Es kann sein, dass Sie keine Bestätigung benötigen, sondern stattdessen ein Rückgängigmachen wünschen. Stellen Sie sicher, dass in diesem Fall das "y" zur Bestätigung ohne Fehler aufgefressen wird (z. B. wenn ein y innerhalb von 1 Sekunde eintritt - kognitive Barrierezeit für Feedback - ignorieren Sie es)

Es kann sein, dass das Menü derzeit keinen Vollbildmodus einnimmt. Das ist auch in Ordnung. Machen Sie es einfach hervorgehoben, wenn M kommt, damit sie wissen, dass sie am richtigen Ort sind. Geben Sie ihnen Feedback (basierend auf dem normannisches Buch ), genau wie Sie es normalerweise tun würden. Trotzdem bleibt die Konsistenz auf Tastaturebene erhalten .

Stellen Sie außerdem sicher, dass jeder über alle Informationen auf allen Tastenbildschirmen verfügt, um die richtigen Entscheidungen treffen zu können. Wenn Sie beispielsweise ein Formular speichern, sollte das Formular selbst sichtbar sein. Dies war mit der alten Benutzeroberfläche möglicherweise nicht möglich, aber diesmal müssen Sie mit Pixeln arbeiten.

Machen Sie die Benutzeroberfläche anklickbar

Während Sie sich an die vorherige Regel halten, dh das System konsistent halten, können Sie es auch über die GUI mehr oder weniger handhaben. Es kann sein, dass die GUI-Flows etwas alternativ sind, aber das System sollte immer noch auf dieselbe Tastatursequenz auf dieselbe Weise reagieren.

Geben Sie Tastaturhinweise

Entwerfen Sie einen visuellen Hinweis für Tastaturkürzel, um neuen Benutzern das Erlernen der Funktionalität zu erleichtern. Ein Beispiel könnte sein:

Form shortcuts example

(Nicht gerade ästhetisch ansprechend, aber es ist immer noch schöner als eine reine Textoberfläche, hoffe ich)

Die perfekte Lösung wäre, diese kontextbezogen zu behandeln, dh sie nur dann zu aktivieren, wenn der Kontext ihre Verwendung tatsächlich zulässt. Dies kann oder kann nicht möglich sein. Beispielsweise könnte eine Schaltfläche "Speichern" für Klick aktiviert, für Verknüpfung deaktiviert werden, wenn ein anderes Feld im Fokus steht. Ob Sie es ihnen mit einer deaktivierten Schaltfläche zeigen (die im aktuellen Status sowohl in Bezug auf die Tastatur als auch in Bezug auf den Klick deaktiviert ist), liegt bei Ihnen.

Sie können den Benutzern auch erlauben, diese nach Belieben auszublenden. Dies frustriert nur die alten Leute, auch diejenigen, die es vorziehen, es überhaupt nicht zu lernen, hilft aber möglicherweise beim Übergang.

Entwerfen Sie einen tastaturbasierten Controller (Entwickleraufgabe)

Sagen Sie den Programmierern, dass das Original Krassner & Pope MVC MVC so gedacht hat, dass auch Tastaturen verwendet werden können. Dies ist eigentlich die MVC, die im Design Patterns-Buch zitiert wird. Es mag ein anderes Modell sein als das, was sie heutzutage gewohnt sind, aber so ist das Leben. Und wieder ist dies eine Herausforderung: Sie müssen unzählige Benutzer unterstützen, mit einer buchstäblich einfach zu bedienenden Oberfläche! :) :)

Testen Sie Prototypen mit Benutzern

Sie haben zwei Benutzergruppen: diejenigen, die die Tastaturkürzel als Muskelreflex/Muskelgedächtnis kennen, und diejenigen, die dies nicht tun. Test auf beiden. Sie wissen, übliche Sache, Story-Ziel, versuchen Sie, durch das System zu gehen und das Story-Ziel zu erreichen, wie haben Sie sich gefühlt, ist es gut gelaufen, haben Sie laut gedacht, hat es sich in Ordnung angefühlt, wo Sie zu irgendeinem Zeitpunkt verloren haben ... UX-Forschung Zeug.

Anwendung implementieren

Das ist es. Mühsamer Prozess, aber eine einzigartige Herausforderung, eine Schnittstelle zu erstellen, die so nutzbar ist, dass wir heute nicht mehr an Benutzerfreundlichkeit denken. Ich denke, es lohnt sich, das wäre ein ziemlich gutes Abenteuer, ich bin sicher, ich würde es lieben. Andererseits habe ich selbst meine eigenen Muskelerinnerungen. Nachdem ich in den 90er Jahren angefangen habe, Befehlszeilen-UNIXes zu verwenden, verwende ich unter OS X immer noch die Befehlszeile, manchmal sogar, um meine Filme anzusehen, da dies damals der einzige Weg war ...

Oder

Warten Sie einfach, bis die alten Benutzer ausgestorben sind/die Firma verlassen. Das ist auch eine Lösung.

Hoffe, das hat geholfen. Genieße die Fahrt, im Ernst, das wird einzigartig und macht Spaß. Bei UX geht es darum, die beste Erfahrung für Benutzer zu machen, nicht um Glanz!

8
Aadaam

Die überlegene Effizienz von UNIX-Apps

UNIX-Benutzeroberflächen bevorzugen traditionell die Effizienz der Benutzer gegenüber der Lernfähigkeit. Die UNIX-Designer fragen beispielsweise: "Warum" umbenennen "eingeben, wenn Sie stattdessen schneller" mv "eingeben können? Wen interessiert es, wenn es schwieriger ist, sich das zu merken? " Ich gehe davon aus, dass die UNIX-Versionen der Apps es Benutzern tatsächlich ermöglichen, die Aufgaben mit bemerkenswert wenig Zeit und Mühe zu erledigen. Das ist ein wichtiger Teil der Benutzerfreundlichkeit.

Bei Verwendung der GOMS KLM-Bedienerzeiten dauert die Auswahl eines Menüelements durch Eingabe von zwei Tasten wie „04“ durchschnittlich nur 1,6 Sekunden. Im Gegensatz dazu dauert die Auswahl eines Links mit einer Maus durchschnittlich 2,5 Sekunden - oder 2,9 Sekunden, wenn der Benutzer seine Hände von der Tastatur zur Maus bewegen muss (wenn die meisten anderen Eingaben Text sind). Wenn es so viele Auswahlmöglichkeiten gibt, werden sich die Web-Apps merklich langsamer anfühlen.

Wenn jede Linkauswahl ein vollständiges Laden der Browserseite enthält, das eine Sekunde oder länger dauert, fühlen sich die Web-Apps geradezu klobig an. Im Gegensatz dazu kann Ihre durchschnittliche UNIX-App in weniger als 0,1 Sekunden eine neue Zeile oder sogar einen ganz neuen Bildschirm anzeigen. Wenn Sie Ihre Benutzer beobachten, werden Sie wahrscheinlich sehen, wie Ihre erfahrenen Benutzer Ketten gespeicherter Eingaben abfeuern, als würden sie ein einzelnes Wort eingeben: "04021206, okay, ich bin auf dem richtigen Bildschirm, was soll ich tun?" Ihre Benutzer haben also einen Punkt: Möglicherweise geben Sie ihnen eine Benutzeroberfläche, die (in Bezug auf die Effizienz) weniger benutzerfreundlich ist als die, die sie jetzt haben. Warum sollten sie sich darüber freuen?

Die überlegene Lernfähigkeit von Web-Apps… oder vielleicht auch nicht

Theoretisch haben Web-Apps ein hervorragendes Lernfähigkeit, eine andere Dimension der Benutzerfreundlichkeit als die Effizienz. Mit einfachen Point-and-Click-Eingaben und Beschreibungen und Hinweisen auf dem Bildschirm für den Benutzer kann ein Benutzer beim ersten Mal durch die App gelangen, ohne einmal „man“ eingeben zu müssen.

Wie Sie meinen, sind die neuen Web-Apps jedoch möglicherweise nicht besser zu erlernen. Wenn die UNIX-Apps Menüs enthalten, in denen Optionen zusammen mit den Tasten zur Auswahl aufgeführt sind (z. B. "01 Network Edit", "02 Troubleshoot, 03 Deploy, M Main Menu"), ist dies sehr intuitiv. Wie ist Tab einfacher zu lernen als Enter? Es geht nur darum, was Sie gewohnt sind. Wenn die Apps über grundlegende Benutzeroberflächen für Formulare und Menüs verfügen, wird der Wechsel von UNIX zum Web für sich genommen die Lernfähigkeit nicht verbessern. Alles, was Sie bekommen, ist proportionale Schrift und hübsche Farben. Großer Whup. Modern zu sein, nur um modern zu sein, wird es nicht ändern.

Und wenn Ihre Web-App nur ein paar schlecht ausgewählte Feldreihenfolgen, Symbole oder Link-Labels oder IA-Auswahlmöglichkeiten enthält, ist sie für Ihre Benutzerpopulation leicht weniger Lernfähig als die UNIX-App.

Lösungen

Vielleicht möchten Sie, dass Ihre Benutzer sich die Mühe machen, etwas zu lernen (in langweiligem Training oder frustrierend selbst), das langsamer zu verwenden ist als sie es gewohnt sind. Es kann nicht überraschen, dass sie es nicht mögen.

Lernfähigkeit

Zunächst müssen Sie die Web-App für Ihre speziellen Benutzer so lernfähig wie möglich machen. Geben Sie also Tastaturkürzel wie „03“ ein, um den dritten Menüpunkt auszuwählen, und „M“, um zur Startseite/zum Hauptmenü zu gelangen. Geben Sie Enter ein, um zum nächsten Feld zu gelangen. Wen interessiert es, wenn es nicht Standard ist? Standards sind nur dann gut, wenn Benutzer sie kennen. Wenn Sie sowohl ältere als auch neue Web-versierte Benutzer haben (jetzt oder in Zukunft), sollten Sie beide Tab und Enter aktivieren, um zum nächsten Feld zu gelangen. Wenn UNIX-Benutzer Tab für etwas anderes verwenden oder Ihre anderen Benutzer erwarten, dass Enter ein Dialogfeld (den GUI-Standard) ausführt, sollten Sie einen Legacy-Modus für Ihre Legacy-Benutzer in Betracht ziehen, der die Legacy-Verknüpfungen verwendet.

Fügen Sie gegebenenfalls Texthinweise und Erinnerungen zur Verwendung der Web-Apps hinzu. Aber denken Sie daran: Das Lesen selbst kurzer Dokumentationen nimmt Zeit in Anspruch und lenkt den Benutzer von der Aufgabe ab. Es ist besser als Menschen zu benutzen, aber nicht so gut wie nichts zu brauchen. Erwägen Sie die Verwendung von Bildern und Metaphern, um die Benutzeroberfläche schneller zu dokumentieren (z. B. Linien und Pfeile, die den Benutzer durch den Aufgabenablauf führen).

Mehr als Lernfähigkeit

Das Maximieren der Lernfähigkeit reicht nicht aus, da Ihre älteren Benutzer die UNIX-Apps bereits kennen. Das Festhalten an UNIX bedeutet null Lernen, während das Aufrufen der Web-App zumindest etwas Lernen bedeutet, wie klein es auch sein mag. Sie können möglicherweise nicht allein durch Lernfähigkeit gewinnen. Um die Zustimmung der Legacy-Benutzer zu erhalten, müssen Sie die Legacy-Apps in ihrem eigenen Spiel schlagen und die Web-Apps mehr effizienter machen als die Legacy-Apps. Erzielen Sie eine bessere Effizienz (mit den unten beschriebenen Techniken) und messen Sie die UNIX-Apps öffentlich gegen die Web-Apps, um sich und Ihre Benutzer davon zu überzeugen, dass die neue App schneller ist, sobald sie sie gelernt haben.

Wenn Sie die Webanwendungen nicht effizienter gestalten können, müssen Sie einen weiteren Vorteil bieten: weniger Fehler, schnellere Fehlerbehebung, mehr Komfort (z. B. kann remote oder mobil verwendet werden) - etwas. Sie müssen die Web-Apps so verbessern, dass sich der Lernaufwand lohnt.

Studieren Sie dabei das Legacy-System und beobachten Sie, wie die Experten es verwenden, und finden Sie:

  • Vorteile, die in das neue System integriert werden sollen, z. B. Tastaturkürzel und schnelle Popups.

  • Zu vermeidende Schwächen im neuen System, z. B. das Fehlen von Standardeinstellungen oder das Fehlen einer erhaltenen Eingabe oder die Texteingabe, wenn ein Menü verwendet werden kann.

  • Was Benutzer interessieren - was Sie ihnen in den neuen Apps mehr geben können.

Navigation und Rohzeit minimieren

Profitieren Sie von der Tatsache, dass Sie wahrscheinlich mehr Platz auf dem Bildschirm haben, als UNIX-Apps vor all den Jahren entwickelt haben, und verwenden Sie diese, um den Navigationsaufwand zu minimieren und eine klarere Informationshierarchie zu präsentieren. Verwenden Sie AJAX oder andere Tools, um die „Verbrauchsteuer“ beim Navigieren weiter zu minimieren und Antwortzeiten von maximal 0,2 Sekunden festzulegen. Vermeiden Sie Bestätigungsseiten und Fehlermeldungen. Verwenden Sie stattdessen Feedback auf der Seite. Überprüfen Sie die Eingabe in einem Feld Verwenden Sie diese Art von Feedback, und verwenden Sie direkt bearbeitbare Formulare und Tabellen. Vermeiden Sie Dialoge.

Suite-Konsistenz

Stellen Sie sicher, dass Ihre Web-Apps intern konsistent sind. Wenn Benutzer anhalten und überlegen müssen, welche Regel in einem bestimmten Kontext gilt, wird die Effizienz beeinträchtigt. Stellen Sie sicher, dass dieselbe Aktion in Ihrer gesamten App-Suite dieselbe Wirkung hat. Der gleiche Befehl sollte in der gesamten Suite dieselbe Bezeichnung, dieselben Symbole, dieselben Verknüpfungen und dieselbe relative Position haben. Das gleiche Feld sollte in der gesamten Suite denselben Namen, dieselben Grafikcodes, dieselben Einheiten und dasselbe Format verwenden.

Andere

Allgemeine Designelemente zur Verbesserung der Effizienz/Geschwindigkeit umfassen:

  • Tastaturkürzel, bereits erwähnt.

  • Kontextmenüs, die die Anstiegszeit für Menüelemente verkürzen.

  • Drag & Drop insbesondere als Alternative zu einem Dialog.

  • Knappe, aber klare Beschriftungen (schneller zu scannen und zu lesen als die für Web-Apps typischen ausführlichen Beschriftungen).

  • Progressive Offenlegung, die sorgfältig für selten verwendete Funktionen verwendet wird, die Benutzer ablenken können.

  • Ordnen Sie Menüs von den gängigsten bis zu den am wenigsten gebräuchlichen Optionen an (und halten Sie die Reihenfolge bei Bedarf semantisch sinnvoll).

  • Gute Standardeinstellungen.

Ich beschäftige mich mehr mit älteren Benutzern und Experten im Allgemeinen unter Was haben Sie in letzter Zeit für Ihre Hauptbenutzer getan ?

3

Es hört sich so an, als wären dies hauptsächlich dateneingabeintensive Anwendungen. Daher sind Tastaturen wahrscheinlich die schnellste und einfachste Möglichkeit für Benutzer, Daten einzugeben. Ich würde vorschlagen, es so zu halten. Stellen Sie sicher, dass die App vollständig über die Tastatur navigiert werden kann, und fügen Sie entsprechende Tastaturkürzel hinzu (möglicherweise als Endbenutzeroption).

1
DA01