Es wird nur benutzerfreundliche und performante Software genutzt. Fehlerfrei muss sie sowieso sein.
Benutzerfreundlichkeit von Software ist neben der Sicherheit und Stabilität eines der wichtigsten Bewertungskriterien von Anwendungsprogrammen.
Die Benutzerfreundlichkeit, häufig auch unter dem englischen Begriff „Usability“ bekannt, ist eng verbunden mit der Ergonomie. Es ist wesentlich einfacher, Informationen zu verarbeiten und zu behalten, die eine bekannte Struktur aufweisen.
Benutzerfreundlichkeit vs Produktivität
Benutzerfreundlichkeit von technischen Produkten hängt stark vom Anwender ab. Während der eine Nutzer nur ein Minimum an Funktionalität benötigt, benötige ein andere möglichst viele Funktionen. Als Beispiel sind hier zwei Fernbedienungen dargestellt. Die eine hat sehr viele Knöpfe und ermöglicht es dem erfahrenen Nutzer sämtliche Funktionen direkt aufzurufen. Die zweite Fernbedienung ist minimalistisch gestaltet. Neue Nutzer finden sich hier schnell zurecht, während sich für erfahrene Nutzer der Aufruf von speziellen Funktionen nur umständlich über Bildschirm-Menüs erreichen lässt.
Im Idealfall bietet man dem Nutzer zwei verschiedene Softwareoberflächen an oder blendet bestimmte Programmelemente nur ein, wenn bereits bestimmte Funktionen vorher aufgerufen wurden. Aufgrund der unklar formulierten Zielgruppe und aufgrund des eng geplanten Zeitraums konnte im Rahmen des Auftrags hierauf nicht weiter eingegangen werden.
Richtlinien
Keine Hürden
Eine Software wird meistens zu einem Zweck eingesetzt, wie zum Beispiel bei DerobinoDesim, zur Erstellung von Projektplänen. Zum Erreichen des Zieles dürfen keine Unterbrechungen im Handlungsablauf bestehen. Lange Wartezeiten beispielsweise zur Erstellung eines neuen Planes sind zu vermeiden.
Wenige Auswahlmöglichkeiten
Je mehr Möglichkeiten der Nutzer zur Auswahl hat, desto schwerer wird es ihm sein, eine beziehungsweise die richtige Wahl zu treffen. Hier gilt es die absolut notwendigsten Wahlmöglichkeiten zu bieten.
Keine Ablenkungen
Der Anwender sollte von seinem Arbeitsfluss nicht abgelenkt werden. Er sollte sich immer auf eine Tätigkeit konzentrieren. Mehrere Dinge gleichzeitig zu tun vermindert in der Regel die Produktivität. Dinge nacheinander zu erledigen ist meistens effektiver.
Gruppierung von Elementen, die zusammen gehören
Um eine Übersicht über alle Funktionen zu bekommen und leicht auffinden zu können, müssen zusammengehörige Elemente gruppiert werden. Insgesamt ist ein übersichtliches, nicht zu überladenes Layout zu wählen.
Hierarchische Anordnung von Elementen
Wichtige und häufig benutzte Oberflächenelemente müssen gut sichtbar und schnell mit dem Mauszeiger erreichbar sein. Zugehörige Elemente, welche weniger häufig verwendet werden, können beispielsweise in ausklappenden Elementen wie Dropdown-Menüs untergebracht werden. Objekte haben Bedeutung entsprechend ihrer Größe.
(Vgl: Borchers: https://hci.rwth-aachen.de/tiki-download_wiki_attachment.php?attId=1123)
Kein Fachvokabular
Beschriftungen sollten auch für Nutzer mit wenig Expertise klar verständlich sein. Nur in Ausnahmefällen, in denen es keine kurze alternative Bezeichnung gibt, sollte auf Fachbegriffe zurückgegriffen werden.
Sinnvolle Voreinstellungen
Der Nutzer sollte von Beginn an nur so viele Informationen eingeben, wie unbedingt notwendig. In der Regel lassen sich Informationsangaben durch die Wahl von Standardwerten umgehen. Bei Daten, die sehr stark variieren, sollte man keine Voreinstellungen nehmen, da diese den Nutzer eher irritieren.
Fehleingaben nicht ermöglichen
Viele Programme fangen Fehler erst nach der falschen Eingabe ab und zeigen dann eine Fehlermeldung. Besser ist es, von vornherein Fehlereingaben nicht zu ermöglichen. Beispielsweise, wenn eine Zahl eingegeben werden muss, sollte der Nutzer erst gar nicht die Möglichkeit bekommen, Text einzugeben.
Geschwindigkeit
Alle Aktionen des Anwenders müssen in einer tolerablen Zeit ausgeführt werden. Wenn eine Aktion, wie beispielsweise eine Simulationsrechnung, nicht schneller realisierbar ist und der Nutzer so im Arbeitsfluss unterbrochen wird, sollte diese in den Hintergrund geschehen und bei Vollendung den Nutzer benachrichtigt werden.
Visuelle Rückmeldungen, permanenter Fortschritt
Bei kleineren Unterbrechungen sollte ein Programm nicht einfrieren, sondern dem Nutzer stets visuell mitteilen, dass kurz gewartet werden muss. Dies kann beispielsweise durch einen geänderten Mauszeiger oder einen Fortschrittsbalken geschehen. Dem Nutzer sollte auch mitgeteilt werden, warum er gerade warten muss.
Farben und Emotionen
Eine Software, die komplett Grau ist, regt wenig zur Benutzung an. Eine Benutzeroberfläche einer Software wirkt interessanter, wenn sie zum Teil farblich gestaltet wird.
Farben sind stets mit Emotionen verbunden. Die Farbe Grün zum Beispiel wird mit positiven Eigenschaften verbunden, während beispielsweise die Farbe Rot mit Gefahr assoziiert wird.
Ein übermäßiger Einsatz von Farben sollte jedoch, insbesondere bei professioneller Spezialsoftware, vermieden werden um nicht zu verspielt zu wirken.
Einheitliche Gestaltung und wiederkehrende Muster
Grundlegende Nutzungskonzepte, welche der Benutzer von anderer Software kennt, sollten verwendet werden. Wenn ein Nutzer eine bestimmte Aktion ausführt, sollten keine unerwarteten Dinge geschehen. Wenn beispielsweise ein nach unten zeigender Pfeil in einem Kopf ein Menü mit weitern Auswahlmöglichkeiten erscheinen lässt, sollte dies immer der Fall im Programm sein.
Guter erster Eindruck und einfacher Einstieg
Der erste Eindruck ist auch bei Software der Wichtigste. Der Anwender sollte direkt nach dem ersten Starten eines Programms motiviert werden die Software zu erkunden und kennen zu lernen. Eine einfache Handhabung zur Erzielung erster Ergebnisse ist dabei hohem Wert zuzuschreiben.
Html5 Webanwendungen
Da Internetbrowser immer mehr Funktionalitäten von Betriebssystemen erhalten und immer leistungsfähiger werden, wurde sich für die Implementierung in Form einer Html5 und JavaScript basierten Anwendung („Single Page Application“) entschieden. Es sprechen viele weitere Gründe für den Einsatz als browserbasiertes Programm:
- keine Installation und Administration (Einspielung von Updates etc.)
- effektivere Vermarktung möglich
- vielen Nutzer sind mit dem Ihrem Internetbrowser vertraut
- weitreichende gestalterische Möglichkeiten
- Zukunftssicher, da der Trend immer mehr zu Webbasierten Anwendungen geht
- viele kommerzielle OpenSource Bibliotheken verfügbar
- umfangreiche Entwickler-Community
- lauffähig auf allen marktüblichen Geräten
- Einbindung in App-Stores über Apache Cordova möglich
- erhöhte Sicherheit für den Nutzer, da kein Zugriff auf lokale Dateien
- einfache kontinuierliche Auswertung des Benutzerverhaltens möglich
Zudem sind Nutzerbasierte Szenarien möglich indem zum Beispiel der Projektmanager alle Funktionen am Laptop/Beamer zur Verfügung gestellt bekommt und Projektteilnehmer eine reduzierte Ansicht mit Ihren jeweiligen Aufgaben. Diese könnten dann beispielsweise auf Smartphones laufen.
Über Websockets/Longpolling ist eine Browserübergreifende Aktualisierung von Daten vom Server aus möglich ohne die Html-Seite neu zu laden. Hierdurch ist zum Beispiel auch ein Multimonitor-Betrieb möglich. So kann man zum Beispiel auf einem Bildschirm die Ablauforganisation festlegen und gleichzeitig die Simulationsergebnisse auf einem weiteren Bildschirm in einem zweiten Browserfenster betrachten.
Beispiele
Funktion: sicheres Löschen
Bei der Entwicklung des Prototypen wurden die in 2.3 genannten Konventionen berücksichtigt. Als Beispiel sei hier das Löschen eines Mitarbeiters erläutert:
Entsprechend der Abbildung sind folgende Konzepte umgesetzt:
- kein aufdringliches Dialogfenster, welches den Arbeitsfluss unterbricht
- Bestätigung erforderlich: keine Löschen aus Versehen
- Nutzer muss nur zwei Wörter lesen, Frage dient nur zur Ergänzung
- Rote Farbe verdeutlicht, dass Daten gelöscht werden
- Minimale Maus- und Augenbewegung
- Minimaler Oberflächenplatz wird benötigt
Interaktive Anleitung
Um Nutzern eine umfangreiche Web-App zu erklären, setzen auch heute noch viele Anbieter auf eine einfache Dokumentation in Textform. Mittlerweile werden zwar häufig auch Video-Tutorials genutzt, um die Funktionsweise einer Software zu erklären, aber auch diese haben gewisse Nachteile. Nutzer müssen zwischen dem Video und der Web-App hin- und herwechseln und das Gesehene nachträglich auf die Bedienung übertragen.