# Common User Access

CUA (Common User Access, engl. für ‚Allgemein gebräuchlicher Benutzerzugang‘) ist eine von der Firma IBM seit 1987 im Rahmen der SAA-Spezifikationen 1989 festgelegte Richtlinie für die Gestaltung von Benutzeroberflächen von Computerprogrammen. Diese Richtlinien wurden ursprünglich in den Betriebssystemen OS/2 (damals noch von IBM und Microsoft gemeinsam entwickelt) und Microsoft Windows angewendet. Teile des CUA-Standards sind inzwischen auch in Programmen für andere Betriebssysteme wie Mac OS X, Unix sowie den Bibliotheken Java AWT und Java Swing umgesetzt.
Die CUA-Standards enthalten Richtlinien für die Benutzung von Dialogfenstern, Menüs und Tastenkombinationen. Diese Richtlinien sind so einflussreich, dass sich selbst Programmierer daran orientieren, die den CUA-Standard nie gelesen haben.
In dieser Richtlinie sind u. a. Tastenkombinationen vorgegeben, um schnell auf Funktionen der Programme zuzugreifen. So sind z. B. viele Tastenkombinationen (Alt+F4, Strg+Einfg, ⇧+F10) des Betriebssystems Microsoft Windows auf diese Richtlinie zurückzuführen.

## Definierte Standards

Einige der Standards können in Windows selbst und in DOS basierten Anwendungen wie beispielsweise dem MS-DOS Editor angetroffen werden. Das sind z. B.:
* eine Menüleiste am oberen Bildschirmrand
* alle Operationen können sowohl mit der Maus als auch mit der Tastatur ausgeführt werden.
* Menüs können durch die Kombination der Taste Alt mit einem hervorgehobenen Buchstaben des Menünamens direkt aufgerufen werden, Alt alleine ruft das Menü selbst auf.
* Menübefehle, die weitere Informationen benötigen, zeigen das durch einen nachgestellten Ellipsis-Operator („…“) an.
* Optionen werden in Dialogfenstern festgelegt.
* Navigation innerhalb der Felder eines Dialogfensters erfolgt mittels Cursor-Tasten, zwischen den Feldern kann mittels Tabulatortaste und Umschalttaste+Tabulatortaste (Sprung rückwärts) gesprungen werden.
* Dialogfenster sollten einen Abbrechen-Button besitzen, der durch die Esc-Taste aktivierbar ist und alle Änderungen verwirft. Ein Ok-Button, der per Eingabetaste erreichbar sein sollte, ist ebenfalls Bestandteil des Standards.
* Das Programm soll eine Online-Hilfe aufweisen mit einem Hilfemenüpunkt als letztem Punkt der Menüleiste.
* Kontext-sensitive Hilfe sollte per F1-Taste erreichbar sein.
* Der erste Menüeintrag soll „Datei“ heißen und Operationen zur Arbeit mit Dateien, zum Beenden des Programms und so weiter enthalten. Der nächste Menüpunkt soll – sofern ein solcher benötigt wird – „Auswahl“ heißen. Der darauffolgende Menüpunkt soll „Bearbeiten“ heißen und Ausschneiden, Kopieren und Einfügen-Kommandos enthalten. Der dritte Menüpunkt sollte „Ansicht“ heißen.
* Die Tastenkombination für Ausschneiden ist ⇧+Entf, Kopieren ist Strg+Einfg und Einfügen ist ⇧+Einfg.
* Die Größe eines Fensters kann durch Ziehen an einem der 8 Segmente des Fensterrahmens geändert werden.
CUA ist eine detaillierte Spezifikation und stellt strenge Regeln darüber auf, wie Anwendungen aussehen und funktionieren sollen. Das Ziel war es, MS-DOS-basierte Anwendungen zu vereinheitlichen, da diese bis dahin sehr unterschiedliche Benutzeroberflächen hatten.

## Gegenbeispiele

* In WordPerfect war der Befehl um eine Datei zu öffnen F7, 3.
* In Lotus 1-2-3 wurden Dateien durch folgende Sequenz geöffnet: / (um die Menüs aufzurufen), W (für Workspace), R (für Retrieve, dt. holen).
* In Microsoft Word 5 wurden Dateien über diese Tastensequenz geöffnet: Esc (um die Menüs aufzurufen), T (für Transfer) L (für Laden).
* In WordStar war es Strg+K+O.
* In emacs werden Dateien über Strg+X gefolgt von Strg+f (für Find-File, dt. suche Datei) geöffnet.
Einige Programme benutzten die Esc-Taste, um eine Aktion abzubrechen, andere um eine normal abzuschließen. WordPerfect benutzte sie als Wiederholungszeichen. Einige Programme benutzten die Ende-Taste, um ans Zeilenende zu springen, andere um das Ausfüllen eines Formulars zu vervollständigen. F1 war meist die Hilfe, aber in WordPerfect war es F3. Die Einfg-Taste wurde meist zur Umschaltung zwischen Einfüge- oder Überschreibmodus benutzt, es gab aber auch Programme, die damit den Inhalt der Zwischenablage ins aktive Dokument einfügten.
Dadurch musste jedes Programm und seine Benutzeroberfläche individuell erlernt werden. Man galt als Experte, wenn man die Benutzeroberflächen dutzender Programme zu bedienen gelernt hatte, denn ein Benutzer, der auf ein neues Programm traf, konnte seine bisherigen Kenntnisse ähnlicher Anwendungen meist nicht anwenden.

## Neuerungen

Die Spezifikationen wurden durch Apples detaillierte Human Interface Guidelines stark beeinflusst. Diese wurden in Form eines Buches veröffentlicht, das exakt angibt, wie Software für den Apple Macintosh auszusehen und zu funktionieren hat. Als dieses Werk erschien, war der Mac ebenso wie grafische Benutzeroberflächen neu. Daher unternahm Apple große Anstrengungen, um sicherzustellen, dass Anwendungen einem einheitlichen Aussehen folgten. CUA hatte ähnliche Ziele, jedoch das Problem, dass solche Richtlinien auf die bereits bestehenden Programme eines heterogenen Industriezweiges angewendet werden sollten.
CUA deckte jedoch nicht nur DOS-Anwendungen ab, es ist auch der Standard, nach dem die Benutzeroberfläche von Windows entworfen wurde und auch OS/2-Anwendungen, sowohl Textmodus als auch die Oberfläche des Presentation Managers. Auch IBM-Großrechner folgten den Standards der Systems Application Architecture (SAA). Daher ist CUA mehr als nur der Versuch, DOS-Anwendungen zu vereinheitlichen. CUA war Bestandteil des größeren Ziels, die Funktionen aller IBM-Software über die gesamte IBM-Computer-Produktpalette zu vereinheitlichen und zu rationalisieren. Das erstreckte sich von den Microcomputern bis zu den Großrechnern, ihrer Benutzeroberflächen, Funktionsweise bis hin zu den Kommunikationsprotokollen und der Art der Datenspeicherung. Da das auch PC-kompatible Rechner betraf, umfasste es die gesamte PC-Industrie, was vielleicht einer der Gründe ist, warum das Ziel nicht komplett erreicht wurde.
Die dritte Ausgabe von CUA unterschied sich durch die Einführung des objektorientierten Arbeitsplatzes (englisch Desktop) fundamental von den ersten beiden Ausgaben. Das änderte die Sichtweise, wie der Benutzer mit Daten umging. Weg von der anwendungszentrierten Sichtweise hin zu einer an Dokumenten orientierten Sicht mit dem Ziel, das System einfacher benutzbar zu gestalten.
Das Konzept des Arbeitsplatzes wurde 1995 von Microsoft in Windows 95 umgesetzt. Kritisch war dabei die Einführung des Startmenüs, das die Betonung des objektorientierten Desktops stark verringerte.

## Referenzen

* IBM, Systems Application Architecture: Common User Access: Panel Design and User Interaction, Document SC26-4351-0, 1988.
* IBM, Systems Application Architecture: Common User Access: Advanced Interface Design Guide, Document SC26-4582-0, 1990.
* IBM, Systems Application Architecture: Common User Access: Basic Interface Design Guide, Document SC26-4583-0, 1990.
* IBM, Systems Application Architecture: Common User Access: Guide to User Interface Design, Document SC34-4289-00 1991.
* IBM, Systems Application Architecture: Common User Access: Advanced Interface Design Reference, Document SC34-4290-00 1991.