Usability der Kommandozeile

„Inga – eine ganz andere Frage: würdest Du command line interfaces als benutzerfreundlich bezeichnen? Ich meine ja – aber meine Kollegen sind zum Teil anderer Ansicht.“

Wie so oft ist die Antwort ein eindeutiges „es kommt darauf an“. Die Diskussion dreht sich darum, ob eine Datenbankabfrage per Kommandozeile benutzerfreundlicher ist, als eine Datenbankabfrage per grafischer Oberfläche (in diesem Fall SPSS). Schauen wir uns die Eingaben mal an.

So sieht die Abfrage per Kommandozeile (incl. Ergebnis) aus:

Datenabfrage Kommandozeile

Und das ist der Weg in der grafischen Oberfläche (die gelben Kreise entsprechen Mausklicks):

Datenbankabfrage grafische Oberfläche SPSS

Datenbankabfrage grafische Oberfläche SPSS

Der Eingabe von 40 Zeichen auf der Tastatur stehen somit 5 Mausklicks gegenüber. Das allein lässt allerdings noch keine Aussage über die Benutzerfreundlichkeit zu. Schauen wir uns die Kriterien der Benutzerfreundlichkeit im Detail an:

  • Erlernbarkeit (learnability): Der Lernaufwand für die Kommandozeilensyntax ist höher als für die grafische Oberfläche. Statt eines Klickwegs (was Benutzer in der Regel auch aus anderen Programmen kennen) muss ich mir bisher vermutlich unbekannte Syntax merken (wen die Details interessieren: hier eine Übersicht der wichtigsten R-Befehle).
  • Einprägsamkeit (memorability): Für viele Menschen ist es schwieriger, sich die Syntax einer Kommandozeile zu merken, als den Weg in der grafischen Oberfläche. In der grafischen Oberfläche kann ich mich anhand der sichtbaren Menüstruktur eher zum Ziel durchklicken. Diese Anhaltspunkte habe ich in der Kommandozeile nur begrenzt, ggf. hilft mir die Tab Vervollständigung an manchen Stellen weiter. Die Unterschiede verstärken sich, wenn man das System nur gelegentlich nutzt.
  • Effizienz (efficiency): Hier kann die Kommandozeile ihre Vorzüge voll ausspielen, denn wenn ich die Syntax kenne, bin ich mit der Texteingabe in jeden Fall schneller, als mit (Minimum) 5 Mausklicks.
  • Fehlertoleranz (error tolerance): Das kann man aus den Screenshots allein nur schwer rauslesen, hat in diesem Fall aber auch weniger mit der Art der Eingabe zu tun, sondern mehr mit den Sicherungen, die eingebaut sind, um z.B. ungewollte Riesenabfragen zu starten, die das komplette System lahmlegen. Ebenfalls nur mit einem Usability Test oder einer Befragung würde man rauskriegen, ob Anwender die Abfragen korrekt eingeben. Die Gefahr, die Abfrage falsch zu formulieren, besteht allerdings in beiden Systemen.
  • Nutzerzufriedenheit (user satisfaction): Anwender fühlen sich am sichersten und wohlsten, womit sie sich bereits auskennen. Haben die Anwender bisher ausschließlich mit grafischen Oberflächen gearbeitet, wird der Einstieg in die Kommandozeile in den meisten Fällen eine Einstiegshürde darstellen. Das Gleiche gilt aber auch für Anwender, die sich mit der Kommandozeile gut auskennen. Sie empfinden eine grafische Oberfläche oft umständlich und langsam und tun sich häufig leicht damit, einen Satz Befehle zu lernen.

Was man aus den Screenshots allein nicht rauslesen kann, ist die Frage, wie die Nutzer mit den Ergebnissen weiter arbeiten. Könnte ich in der grafischen Oberfläche z.B. meine komplette Analyse abbilden, müsste dagegen bei der Kommandozeile zwischen verschiedenen Anwendungen wechseln, beeinträchtigt dies natürlich ggf. die Effizienz und damit auch die Zufriedenheit.

Diese kurze Analyse zeigt, dass es verschiedene Nutzertypen gibt, für die einzelne Aspekte der einen oder anderen Lösung besser oder schlechter geeignet sind. Die eingangs gestellte Frage würde ich also eher umformulieren in „FÜR WEN ist die Kommandozeile bzw. die grafische Oberfläche die benutzerfreundlichere Lösung?“. Hier meine Antwort:

Die Kommandozeile ist geeignet für…

  • Anwender, die diese Art der Abfrage häufig nutzen. Die Eingabe ist schneller, damit wird der höhere Einarbeitungsaufwand ausgeglichen. Durch die regelmäßige Nutzung fallen zudem die Nachteile der Einprägsamkeit weg.
  • Anwender, die sich eine Kommandozeilensyntax leicht einprägen können oder ungern mit grafischen Oberflächen arbeiten.

Die grafische Oberfläche ist geeignet für…

  • Anwender, die die Abfragen selten nutzen. Der Effizienzvorteil der Tastatureingabe ist für diese Zielgruppe geringer oder kann sogar ins Gegenteil umschlagen, da sie die Syntax zwischenzeitlich eher wieder verlernen und sich eventuell sogar komplett neu einarbeiten müssen.
  • Anwender, die sich schwer tun, eine Kommandozeilensyntax zu lernen oder sich in einer grafischen Oberfläche sicherer fühlen
  • Anwender, die weitere Arbeitsschritte in der grafischen Oberfläche erledigen und die Daten dort eventuell direkt weiterverarbeiten können.

Wer es richtig wissenschaftlich mag, kann sich diesen Artikel von Knauff und Nejasmic anschauen: An Efficiency Comparison of Document Preparation Systems Used in Academic Research and Development. Hier wird die Nutzung von Word vs. LaTex beim Schreiben wissenschaftlicher Arbeiten untersucht.