----------------------------------------------------
Anhang
II
Benutzergerechte
Programmierung
----------------------------------------------------
Das
ATARIîTMî Personal Computer System ist an erster Stelle ein Verbraucher-Computer.
Die Hardware wurde so entworfen, daß der Benutzer das Gerät einfach bedienen
kann. Es gibt außerdem viele Hardware-Anordnungen, die den Verbraucher (sowie
das Gerät) vor möglichen Fehlern schützen. Die für diesen Computer
geschriebene Software sollte ebenfalls Rücksicht auf die Schwächen das
Benutzers nehmen. Der durchschnittliche Verbraucher ist nicht dumm; er ist nur nicht
mit den Konventionen und Traditionen der Computer-Welt vertraut. Sobald er ein Programm
versteht, wird er es überwiegend richtig benutzen. Es gibt natürlich auch
Ausnahmen, bei denen gelegentlich Fehler unterlaufen. Der Programmierer ist nun dafür
verantwortlich, daß er den Verbraucher vor dessen Fehlern schützt.
Zum
augenblicklichen Zeitpunkt ist die Ausarbeitung der Software auf einem sehr niedrigen
Stand. Es werden viele Programme verkauft, die mögliche Fehler des Benutzers
wenig berücksichtigen. Dies trifft zum überwiegenden Teil für Software
zu, die von Amateur-Programmierern geschrieben wurde; aber auch Programme von großen
Software-Häusern weisen diese Mängel auf.
Die
Software-Ausarbeitung ist keine Wissenschaft, sondern eine Kunst. Sie erfordert eine
große technische Geschicklichkeit, aber auch Einfühlungsvermögen
des Programmierers. Als solche ist sie ein sehr subjektives Feld. Dieser Anhang offenbart
daher die persönliche Einstellung und die Ideen das Autors. Eine Betrachtung
sämtlicher Möglichkeiten zu diesem Thema hätte den normalen Rahmen
diesem Kapitels gesprengt. Außerdem würde eine komplette Darstellung aller
Punkte (Erklärungen, Vorteile, Nachteile usw.) den Leser verwirren. Der Autor
zog es deshalb vor, das Thema aus seinem persönlichen Blickwinkel zu betrachten,
wobei die wichtigsten Punkte berücksichtigt wurden. Das Ergebnis ist trotzdem
widersprüchlich genug, um selbst den verständigen Leser zu verwirren.
DER
COMPUTER ALS EMPFINDENDES WESEN
Ein
Weg, die Probleme der Software-Ausarbeitung verständlich darzustellen, ist den
Programmierer als einen Magier anzusehen, der ein intelligentes Wesen beschwört,
welches sich im Computer befindet. Diese Kreatur entbehrt einer physikalischen Verkörperung,
ist aber in der Lage intellektuelle Arbeiten, speziell die Organisation und Verarbeitung
von Information, durchzuführen. Der Benutzer eines Programms tritt nun in eine
Verbindung mit diesem Wesen. Diese beiden Intelligenzen denken unterschiedlich; die
Gedankengänge des Menschen sind assoziativ, einander ergänzend und diffus.
Das "Denken" des Programms dagegen ist direkt, analytisch und festgelegt.
Diese Unterschiede sind grundlegend und produktiv, da der Dämon sehr gut Dinge
ausführen kann, zu denen der Mensch nicht in der Lage ist. Unglücklicherweise
entstehen durch diese Differenzen auch Kommunikations-Hindernisse zwischen Mensch
und Dämon. Sie haben einander sehr viel zu sagen, können aber aufgrund
ihrer Unterschiede nicht gut miteinander kommunizieren. Das zentrale Problem bei
Entwicklung guter Software muß daher die Lieferung besserer Kommunikations-Möglichkeiten
für Benutzer und Computer sein. Bedauerlicherweise verwenden aber die meisten
Programmierer den Großteil ihrer Konzentration auf die Erweiterung und Verbesserung
der Verarbeitungs-Leistung ihrer Programme. Dieses erzeugt zwar ein ìintelligenteres
Wesenî, das aber keine Augen zum Sehen und keinen Mund zum Sprechen besitzt.
Aufgrund
der Fähigkeiten der heutigen Computer ist es möglich, Programme auf diesen
Geräten zu schreiben, die den größten Teil der Verbraucher-Bedürfnisse
befriedigen. Die vorrangige Einschränkung der Möglichkeiten ist nicht länger
die Taktgeschwindigkeit oder der vorhandene Speicher; es ist die ìdünne
Leitungî, die den Benutzer mit der ìIntelligenzî im Computer verbindet.
Jeder der beiden kann schnell und effizient Informationen verarbeiten; dieser Prozess
wird nur durch die schmale Brücke zwischen beiden beeinträchtigt.
KOMMUNIKATION
ZWISCHEN MENSCH UND MASCHINE
Wie
kann nun
die Verbindung
zwischen den beiden ìDenkernî
erweitert werden?
Wir müssen uns
für die Beantwortung
dieser Frage als erstes
auf die
Sprache
konzentrieren, in der diese
kommunizieren. Wie jede Sprache
ist eine Mensch-Maschine-Sprache durch die physikalischen Möglichkeiten des
Speichers in ihrer eigentlichen
Bedeutung eingeschränkt. Da Mensch und Maschine sich
physikalisch unterscheiden,
sind auch ihre
physikalischen Ausdrucks-Möglichkeiten
unterschiedlich. Dieses zwingt uns
(den Menschen) zum Entwurf einer Sprache, die nicht in zwei
Richtungen arbeitet (wie
menschliche Sprachen
gewöhnlich aufgebaut
sind). Eine Maschinen-Mensch-Sprache besitzt
stattdessen zwei
Kanäle: einen für die Eingabe und
einen für die Ausgabe.
Genau wie wir menschliche Sprache untersuchen, indem wir als erstes die
Töne studieren , die
ein Kehlkopf erzeugen kann, beginnen wir mit der
‹berprüfung der
physikalischen Komponenten
einer Mensch-Maschinen-Brücke.
AUSGABE
(VON COMPUTER ZUM MENSCHEN)
Es
gibt zwei primäre Ausgabe-Kanäle vom Computer zum Benutzers: der erste
ist der Fernsehbildschirm, der zweite der Fernseh-Lautsprecher. Glücklicherweise
sind diese beiden Dinge sehr flexibel und eröffnen dadurch ein weites Feld von
Ausdrucks-Möglichkeiten. Der Hauptteil dieses Buches beschreibt die vom Standpunkt
des Computers aus erreichbaren Möglichkeiten.
Zum
besseren Verständnis dieses Anhanges ist es sinnvoller, vorgenannte Aspekte
vom menschlichen Standpunkt aus zu betrachten. Von den beiden Ausgabe-Kanälen
(Bildschirm und Lautsprecher) ist der Bildschirm unschwer als stärkere Ausdrucks-Möglichkeit
zu erkennen. Das menschliche Auge ist besser für Informations-Aufnahme ausgestattet
als das Ohr. In elektrotechnischen Worten: Das Auge besitzt eine größere
Bandbreite als das Ohr. Das Auge kann drei grundlegende Formen der visuellen Information
verarbeiten: Formen (Shapes), Farbe und Animation.
Formen
(Shapes)
Shapes
sind eine gute Möglichkeit, Information an den Menschen weiterzugeben. Die direkteste
Benutzung von Shapes besteht in dar Darstellung von Objekten. Wenn Ihr Programm dem
Benutzer etwas mitteilen soll, so zeichnen Sie ein Bild davon. Ein Bild ist direkt
und sofort verständlich.
Die
zweite Anwendungs-Möglichkeit von Shapes besteht in Symbolen. Einige Dinge der
menschlichen Sprache entbehren einer bildlichen Darstellung. So können z.B.
Liebe, Unendlichkeit und Richtung nicht mit Bildern dargestellt werden. Sie müssen
stattdessen durch Symbole, z.B. ein Herz, eine waagerecht liegende 8 oder einen Pfeil,
dargestellt werden. Dies sind einige der vielen Symbole, die wir alle erkennen und
verwenden. Oft ist es möglich, innerhalb eines Programms ein solches Symbol
sehr schnell in seiner Bedeutung zu erkennen. Symbole sind eine Möglichkeit
der kompakten Ideen-Darstellung, sie sollten aber nicht in Situationen benutzt werden,
wo ein Bild den gleichen Zweck erfüllt oder Kompaktheit erforderlich ist. Ein
Symbol ist im Gegensatz zu einem Bild eine indirekte Ausdrucksart; ein Bild verkörpert
eine Idee eindringlicher.
Die
dritte und am
häufigsten vorkommende
Anwendung von Shapes besteht in der Verbindung mit Text. Ein Buchstabe ist ein Symbol;
die einzelnen Buchstaben
werden aneinandergereiht,
um Worte zu bilden. Die dabei entstehende
Sprache ist extrem
ausdrucksstark. Es heißt der
Wahrheit
entsprechend: ìWenn
Sie es nicht sagen können, so wissen Sie es
auch nicht.î Diese
Ausdrucksstärke kostet ihren Preis:
extreme Indirektheit. Das
eine Idee
ausdrückende Wort
besitzt keine emotionelle
oder empfindungsgemäße
Verbindung mit der Idee. Der Mensch ist
gezwungen weitläufige gedankliche ìVerrenkungenî
auszuführen, um das
Wort zu entschlüsseln. Natürlich
tun wir diesem sehr häufig,
so daß wir einige ‹bung darin haben, folgen von
Buchstaben in Ideen umzuwandeln. Wir spüren
die ìAnstrengungî nicht. Der
springende Punkt ist, daß
die Indirektheit die Ausdruckskraft und Direktheit der Kommunikation verringert.
Es
gibt Menschen, die der Ansicht sind, daß Text eine höhere Kommunikationsform
als graphische Darstellung ist. Die Grundlage dieser Meinung ist, daß Text
die Vorstellungs-Möglichkeiten des Lesers stärker anspricht. Dieses Argument
überzeugt den Autor dieses Kapitels allerdings nicht, da bei Benutzung der Vorstellungskraft
sich der Leser Dinge vorstellt, die nicht in der Kommunikation selbst eingeschlossen
sind. Ein gleichartiges Experiment mit Bildern würde bessere Ergebnisse liefern.
Ein überzeugenderes Argument für Text ist, daß durch seine Indirektheit
ein relativ großer Informations-Betrag auf kleinem Raum untergebracht werden
kann. Der verfügbare Raum jeder Kommunikation erhöht den Wert der Kompaktheit
von Text. Trotzdem macht es ihn (nicht(?)) höherwertiger als graphische Darstellungen;
Text wird nur ökonomischer. Graphiken erfordern mehr Platz, Zeit, Speicher oder
Geld, durch sie ist aber eine bessere Kommunikation möglich als durch Text.
Die Wahl zwischen graphischer und Text-Darstellung ist eine Geschmacksfrage, wobei
der Geschmack und damit die Entscheidung dem Konsumenten außer Frage steht.
Bei einem Vergleich zwischen der Beliebtheit von Fernsehen und Radio oder Kino und
Büchern siegt die graphische Darstellung.
Farbe
Farbe
ist ein anderes Mittel der Informations-‹bertragung. Es ist weniger ausdrucksstark
als Shapes und spielt daher nur eine untergeordnete Rolle im Vergleich zu Shapes
bei visuellen Darstellungen. Die häufigste Anwendung von Farbe besteht in der
Unterscheidung von zwei gleichförmigen Shapes. Sie spielt außerdem eine
wichtige Rolle bei Hinweis-Weitergabe an den Benutzer. Eine gute Farbgebung kann
aus einem vieldeutigen Bild ein eindeutiges machen. Wenn z.B. ein Baum in einem Zeichen
dargestellt werden soll, so stehen hierfür 8*8 Pixel zur Verfügung. Dieses
Feld ist zu schmal, um einen erkennbaren Baum zeichnen zu können. Dieser Mangel
kann aber dadurch beseitigt werden, indem das Bild grün gefärbt wird: das
Bild wird leichter erkennbar. Farben sind auch zum Erregen der Aufmerksamkeit des
Betrachters oder zum Signalisieren wichtigen Materials nützlich. Warme Farben
ziehen die Aufmerksamkeit auf sich. Farbige Graphiken sind gefälliger als schwarz/weiße
Bilder.
Animation
Der
Ausdruck ìAnimationî wird hier zum Bezeichnen einer jeden visuellen
ƒnderung benutzt. Animation schließt demnach sich ändernde Farben und
Shapes, sich bewegenden Vorder- und Hintergrund und Objekte ein. Der vorrangige Wert
von Animation besteht in der Darstellung von dynamischen Vorgängen. In der Tat
ist die graphische Animation die einzige Möglichkeit, um sehr aktive Ereignisse
erfolgreich darzustellen. Der Wert der Animation wird am eindringlichsten durch Spiel
wie STAR RAIDERSîTMî demonstriert. Können Sie sich vorstellen, wie
das Spiel ohne Animation oder sogar nur in Text wirken würde? Der Wert der Animation
erstreckt sich aber auch weit über die Anwendung bei Spielen hinaus. Animation
gestattet dem Designer die klare Darstellung dynamischer Vorgänge. Sie ist einer
der hauptsächlichen Vorteile von Computern gegenüber Papier. Schließlich
ist Animation im Bezug auf sinnliche Wahrnehmung sehr wirksam. Das menschliche Auge
ist so ausgelegt, daß es stark auf ƒnderungen des visuellen Feldes reagiert.
Animation steigert die Aufmerksamkeit der Augen und erregt die Begeisterung des Benutzers
für ein Programm.
Sound
Graphische
Darstellungen müssen betrachtet werden, um eine Wirkung zu haben. Sound dagegen
erreicht den Benutzer, selbst wenn er nicht auf ihn achtet. Sound besitzt daher einen
großen Wert als ankündigendes oder warnendes Signal. Eine große
Anzahl von Piep-, Grunz-Geräuschen und -Tönen können zur Signalisierung
einer Rückkopplung an den Benutzer gesendet werden. Korrekte Aktionen können
mit einem angenehmen Klingelgeräusch, falsche Aktionen mit einem Rattern beantwortet,
Warnbedingungen durch ein Tuten angezeigt werden.
Die
Tonerzeugung besitzt eine zweite Anwendungs-Möglichkeit in der Erzeugung realistischer
Geräuscheffekte. Qualitative Toneffekte verstärken die Wirkung eines Programms,
da durch die Tonerzeugung ein zweiter Informations-Kanal zum Benutzer geöffnet
wird, der auch dann wirkungsvoll ist, wenn letzterer visuell beschäftigt ist.
Sound
ist nicht für die ‹bermittlung von Fakten verwendbar: die meisten Menschen besitzen
nicht die Fähigkeit kleine Frequenz-Unterschiede von zwei Tönen wahrzunehmen.
Sound ist eher zum Ausdrücken von emotionalen Zuständen geeignet, da viele
Menschen ein großes Assoziationsfeld zu bestimmten Melodien und Tönen
haben. Eine absteigende Notenfolge deutet verschlechternde Umstände an. Ein
Explosions-Geräusch steht für Zerstörung. Eine Fanfare verkündet
die Ankunft einer wichtigen Person o. ähnl., Notenfolgen weithin bekannter Lieder
werden sofort mit bestimmten Gefühlen in Verbindung gebracht. Beispielsweise
verwendete der Autor des ENERGY CZARîTMî-Programms einen Trauermarsch,
um anzuzeigen, daß der Spieler die Energie-Situation Amerikas absolut ruiniert
hat: ein Abschnitt von ìHappy Days Here Againî zeigen seinen Erfolg.
EINGABE-GERƒTE
(VOM MENSCHEN ZUM COMPUTER)
Es
gibt auf dem ATARIîTMî Personal Computer 3 am häufigsten benutzte
Eingabe-Möglichkeiten. Es sind: Tastatur, Joystick und Paddles.
Tastatur
Die
Tastatur ist unschwer als leistungsstärkste dem Programmierer verfügbare
Eingabe-Möglichkeit zu erkennen. ‹ber 50 direkte Tastendrücke sind sofort
zugänglich. Die Benutzung der SHIFT- und CONTROL-Tasten verdoppelt die Anzahl
dieser vom Benutzer ausführbaren Eingaben. Durch die CAPS/LOWER- und ATARI-Logo-Taste
wird diese Anzahl ebenfalls vergrößert. Der Benutzer kann also durch einen
einzigen Tastendruck eines von 125 Kommandos anwählen. ‹ber zwei Tastendrücke
ergibt sich eine Auswahl-Möglichkeit von über 15000. Offensichtlich können
durch dieses Gerät den Bedürfnissen eines jeden Programms entsprochen werden.
Aus diesem Grunde ist die Tastatur die bevorzugte Eingabe-Möglichkeit unter
Programmierern.
Während
die Stärken der Tastatur unbestreitbar sind, werden ihre Schwächen selten
erkannt. Die erste Schwäche ist, daß nicht viele Menschen wissen, wie
sie effektiv zu benutzen ist. Programmierer beanspruchen die Tastatur bei ihrer täglichen
Arbeit sehr stark und sind konsequenterweise auch schnelle Schreiber, wogegen der
normale Verbraucher nicht so gut mit ihr umgehen kann. Es kann sehr leicht die falsche
Taste gedrückt werden. Allein die Existenz aller Tasten und das Wissen, daß
die Richtige zu drücken ist, erschreckt die meisten Menschen.
Die
zweite Schwäche der Tastatur ist ihre Indirektheit. Es ist sehr schwer möglich,
der Tastatur eine indirekte Bedeutung zu geben. Sie besitzt keine offensichtliche
sinnliche oder emotionelle Bedeutung. Der unerfahrene Benutzer hat große Probleme
sich an sie zu gewöhnen. Sämtliche Arbeit mit der Tastatur läuft symbolisch
ab: es werden Knöpfe verwendet, denen den jeweiligen Umständen entsprechend
verschiedene Bedeutungen zugeordnet werden. Tastaturen leiden außerdem unter
ihrer Verbindung mit Text auf Bildschirm: die Schwächen von Text wurden in diesem
Kapitel schon besprochen.
Ein
weiterer Nachteil von Tastaturen ist, daß der Designer sich ständig über
ihre digitale Natur im Klaren sein muß. Die Tastatur ist sowohl Auswahl als
auch zeitlich digital aufgebaut. Hierdurch wird natürlich ein gewisses Maß
an Schutz vor Fehlern geliefert. Da die Abfrage von Tastendrücken im Bezug auf
den zeitlichen Ablauf nicht fortlaufend, sondern digital ist, eignet sich die Tastatur
nicht gut für Echtzeit-Programme. Menschen sind Echtzeit-Wesen, daher ist dieses
eine Schwäche. Der Designer muß erkennen, daß die Verwendung der
Tastatur ihn von Echtzeit-Kommunikation zwischen Computer und potentiellem Benutzer
abhält.
Paddles
Paddles
sind die einzigen wirklichen analogen Eingabe-Geräte, die vom System gelesen
werden können. Als solche leiden sie an einem standardmäßigen Problem,
das alle analoge Eingabe-Einheiten haben: Die Forderung, daß der Benutzer Werte
Präzise setzen muß, um ein Ergebnis zu erhalten. Ihr Auflösungewinkel
ist klein und thermische Effekte produzieren selbst bei einem nicht berührten
Paddle Ausgabe-Ungenauigkeiten.
Paddles
besitzen zwei Vorteile. Sie sind erstens gut zum Auswählen von Werten einer
eindimensionalen Variablen geeignet. Es ist einfach verständlich daß mit
dem Paddle schnell ein Wert ausgesucht und mit dem Auslöser festgelegt werden
kann. Zweitens kann der Benutzer durch eine einzige Umdrehung des Reglerknopfes von
einem Ende eines Spektrums zum Anderen gelangen. Das gesamte Spektrum ist für
den Benutzer also jederzeit verfügbar.
Ein
Wichtiger Faktor bei der Benutzung von Paddles ist die Erzeugung einer geschlossenen
Ein/Ausgabe-Schleife. Bei den meisten Eingabe-Vorgängen ist es vorteilhaft,
die Eingabe sofort auf dem Schirm auszudrücken, so daß sie sofort überprüfbar
ist. Dieser Prozess erzeugt eine geschlossene Ein/Ausgabe-Schleife. Die Information
geht vom Benutzer zum Computer, der sie auf dem Bildschirm anzeigt und somit wieder
an den Benutzer weitergibt. Da Paddles keine absolute Position besitzen ist eine
solche Wiedergabe der Eingabe grundlegend.
Jeder
Satz von
Eingaben kann
in einer
linearen Bedeutungsfolge platziert werden, die durch ein Paddle adressiert werden
kann. So können z.B.
Menüs mit
einem
Paddle angewählt werden.
Die Reihenfolge läuft
vom oberen zum unteren Menüende. Es ist möglich
(allerdings auch
unsinnig), mit einem
Paddle eine Tastatur zu
ersetzen. Mit
dem Paddle
wird der
Buchstabe ausgewählt
der gleichzeitig auf
dem
Bildschirm angezeigt wird.
Durch den
Feuerknopf wird
der
Buchstabe festgelegt.
Während diese
Adressierungs-Methode
die
Schreibgeschwindigkeit
nicht verbessert, ist sie
doch sinnvoll bei Lernprogrammen für Kinder.
Joystick
Die
Joysticks sind die simpelsten Eingabe-Geräte des Computers. Sie sind sehr stabil
und können daher einer relativ hohen Belastung ausgesetzt werden. Sie besitzen
nur 5 Schalter, daher wird ihre Leistungs-Fähigkeit oft unterschätzt. Trotzdem
sind Steuerknüppel sehr wirkungsvolle Eingabegeräte. Mit einem Steuerknüppel
kann über einen Cursor jede Bildschirmposition angewählt werden, wobei
der Auslöser als Festlegung fungiert. Durch ein entsprechendes Bildschirm-Layout
kann der Joystick ein weites Funktions-Spektrum anwählen. Diese Technik wurde
z.B. bei SCRAMîTMî benutzt.
Der
Schlüssel zur guten Benutzung des Joystick liegt in der Erkenntnis, daß
der kritische Punkt nicht die Auswahl eines Schalters ist, sondern der Zeitraum für
den ein Schalter aktiviert wird. Durch Kontrollieren der Zeit, für die ein Schalter
gedrückt wird, bestimmt der Benutzer, wie weit sich der Cursor bewegt. Diese
Technik erfordert meistens einen Cursor, der sich mit einer konstanten Geschwindigkeit
bewegt. Ein Nachteil hierbei ist: bewegt er sich zu schnell, ist der Benutzer nicht
in der Lage, ihn genau zu positionieren; bewegt er sich zu langsam, wird der Benutzer
ungeduldig, wenn der Cursor größere Entfernungen zu überwinden hat.
Eine Lösung dieses Problems wäre ein beschleunigender Cursor. Wenn der
Cursor sich zu Anfang langsam bewegt und dann schneller wird, ist sowohl feines Positionieren,
als auch ein schnelles Bewegen über größere Distanzen möglich.
Der
eigentliche Wert des Joysticks ist eine feine Bedienungs-Möglichkeit. Durch
den Steuerknüppel ist dem Benutzer eine direkte und gefühlvolle Eingabe
möglich. Die Feinfühligkeit der Tastatur ist emotional nicht bedeutend.
Ein Joystick besitzt eine Logik - er wird aufwärts gedrückt, um ein Objekt
nach oben zu bewegen, nach unten, um es nach unten zu bewegen. Der Cursor wiederholt
diese Bewegung auf dem Bildschirm, so daß der Benutzer in einer gefühlsmäßigen
Verbindung mit diesem steht.
Joysticks
besitzen ihre Grenzen. Obwohl es möglich ist, den Knüppel in eine diagonale
Stellung zu bewegen und diese Stellung korrekt zu lesen, ist es nicht so deutlich,
als wenn diagonale Richtungen separat eingegeben würden. Daher sollten diagonale
Werte vermieden werden, bis sie in einer rein geometrischen Bedeutung benutzt werden:
aufwärts auf dem Joystick bedeutet aufwärts, rechts bedeutet rechts und
diagonal bedeutet diagonal.
ZUSAMMENFASSUNG
DER KOMMUNIKATIONSELEMENTE
Es
wurden eine Anzahl von Möglichkeiten besprochen, die zusammen die Elemente einer
Sprache für die Kommunikation zwischen Mensch und Benutzer bilden. Es sind:
Shapes Farbe
Animation Sound
---------------------------->
COMPUTER
BENUTZER
<----------------------------
Tastatur,
Paddles Joystick
AUFBAUEN
EINER SPRACHE
Wie
werden alle Elemente einer effektiven Sprache zusammengesetzt? Um dieses zu tun,
müssen wir als erstes die grundlegenden Züge einer von uns als gut bewerteten
Sprache bestimmen. Es sind:
Vollständigkeit
Die
Sprache muß alle für die Kommunikation zwischen Computer und Benutzer
nötigen Dinge ausdrücken können. Die internen Vorgänge oder die
Gedankengänge des Benutzers müssen nicht verdeutlicht werden. So muß
z.B. die Sprache des STAR RAIDERîTMî-Programms nur die für die Steuerung
des Raumschiffs und die für den Kampf wichtigen Informationen ausdrücken
können. Die Gefühle des Spielers oder die Flugabsichten der Zylonen müssen
nicht durch sie übermittelt werden. Diese Dinge sind zwar sehr wichtig für
die gesamte Funktion des Spiels, müssen aber nicht zwischen Benutzer und Programm
ausgetauscht werden.
Vollständigkeit
ist die offensichtliche Funktion einer jeden Sprache, eine, die alle Programmierer
intuitiv erkennen. Probleme im Zusammenhang mit der Vollständigkeit tauchen
meistens dann auf, wenn der Programmierer zusätzliche Funktionen an ein Programm
anfügen will, die aber nicht durch die von ihm aufgebaute Sprache geliefert
werden können. Dieses kann sehr ärgerlich sein, da in vielen Fällen,
diese Zusätzlichen Funktionen im Programm selbst vorhanden sind. Der einschränkende
Faktor ist immer die Schwierigkeit beim Anfügen neuer Ausdrücke an die
I/0-Sprache.
Direktheit
Jede
neue Sprache ist schwierig zu erlernen. Der Benutzer kann seine Zeit nicht mit dem
Lernen immer neuer ausgeschmückter Sprachen verschwenden. Die vom Programmierer
entworfene Sprache muß direkt und treffend sein. Sie sollte sich an Verabredungen
halten, die der Benutzer bereits kennt. Die Befehle müssen eindeutig und offensichtlich
in ihrer Bedeutung sein. So wäre ein CONTROL-X-Befehl sehr unklar in seiner
Wirkung. Mit ihm könnte etwas kontrolliert werden, wobei X Auslöschung
oder Negation bedeutet. Die Anweisung könnte auch heißen, daß etwas
überprüft, berichtigt oder ähnliches werden soll. Treffen diese Möglichkeiten
nicht zu, so ist diesem Kommando zu indirekt. Tastaturen sind berüchtigt für
die Erzeugung solcher Probleme.
Geschlossenheit
Geschlossenheit
ist der Aspekt des Kommunikation-Designs, der die größten Probleme verursacht.
Dieses läßt sich an einem Beispiel am besten erklären: ein Benutzer
befindet sich am Punkt A und will durch das Programm zum Punkt B gelangen. Ein schlecht
ausgearbeitetes Programm entspricht einem Seil, das zwischen diesen beiden Punkten
gespannt ist. Wenn der Benutzer ganz genau weiß, was er tun muß, so hat
er Erfolg. Es ist aber viel wahrscheinlicher, daß er ausrutscht und abstürzt.
Bei einigen Programmen gibt es interne Warnungen oder Manuals, die dem Benutzer sagen,
was er tun darf und was nicht. Diese Dinge entsprechen Schildern neben dem Seil auf
denen steht ìSEIEN SIE VORSICHTIG!î- oder ìNICHT HINUNTERFALLEN!î.
Andere Programme stellen Schilder unter dem Seil auf, auf denen steht, warum der
Benutzer ausgerutscht ist.
Eine
bessere Art von Programmen besitzt Masken für illegale Eingaben. Sie entsprechen
Geländern neben dem Seil. Diese sind natürlich sehr viel günstiger
als die vorangegangenen Lösungen , müssen aber so geschickt konstruiert
sein, daß der Benutzer sie nicht unterlaufen kann. Andere Programme wiederum
erzeugen unangenehme Bell-Geräusche, die den Benutzer davor warnen, bestimmte
Eingaben zu machen. Diese Lösung entspricht mürrischen Aufsehern auf dem
Schulhof und bewirken nur, dass der Benutzer sich wie ein dummes Kind vorkommt. Das
ideale Programm entspricht einem Tunnel durch festes Gestein. Es gibt nur einen einzigen
Weg: den Weg zum Erfolg. Dem Benutzer bleibt also keine andere Möglichkeit,
als sein Ziel zu erreichen.
Die
Grundlage der Geschlossenheit ist das Einschränken der Options-Anzahl, die Löschung
von Möglichkeiten, was dem Aufbauen von soliden Mauern um den Benutzer entspricht.
Ein gutes Design erfordert nicht den Aufbau einer ungeheuren Anzahl von Möglichkeiten
auf eine Grundstruktur. Es müssen vielmehr unwichtige Dinge gestrichen werden.
Diese
These widerspricht den Auffassungen mancher Programmierer. Sie bevorzugen eine absolute
Freiheit, um ihre Stärke gegenüber dem Computer erproben zu können.
Das am häufigsten angebrachte Argument besagt, daß ein Programm ihre Möglichkeiten
auf irgendeine Weise einschränkt. Wer sollte so dumm sein und die Leistungsfähigkeit
dieses wundervollen Werkzeuges einschränken?
Die
Antwort hierauf liegt im Unterschied zwischen dem Benutzer und dem Programmierer.
Der Programmierer widmet sein Leben dem Computer; der Verbraucher arbeitet im maximalen
Fall ein wenig mit dem Gerät. Der Programmierer benutzt die Maschine so intensiv,
daß es die aufzuwendende Zeit lohnt, sie besser kennen zulernen. Der Benutzer
hat nicht die Zeit, sich genauer mit dem Gerät auseinanderzusetzen; er möchte
so schnell wie möglich zu Punkt B gelangen. Er interessiert sich nicht für
die Feinheiten, die das Leben des Programmierers ausmachen. Klingel und Bimmelgeräusche,
die vom Programmierer mit Begeisterung entwickelt werden, sind für den Verbraucher
selbstverständlich. Programmierer mögen sich nicht viel um die Worte des
Verbrauchers kümmern, aber wenn diese ihren Lebensunterhalt verdienen wollen,
müssen sie dieses wohl oder übel tun.
Geschlossenheit
wird durch Erstellen von Ein- und Ausgaben erreicht, die keine illegalen Werte zulassen.
Mit einer Tastatur ist dieses sehr schwer durchzuführen, da über sie immer
mehr Eingaben möglich sind, als ein Programm benötigt. Ein Joystick wäre
in dieser Hinsicht besser geeignet, da er nur einen sehr geringen Eingabe-Bereich
besitzt. Die ideale Lösung wird erreicht, wenn über ein Gerät sämtliche
Eingaben (nur die absolut vorhandenen) möglich sind. In diesem Fall kann der
Benutzer keine falschen Eingaben machen, da es sie gar nicht gibt. Ein Beispiel hierfür
wäre die ìNeuspracheî in Orwells Roman ì1984î: der
Benutzer könnte keine falschen Eingaben machen (denken), da es keine Wörter
für sie gibt.
Geschlossenheit
ist mehr als nur das Ausmaskieren schlechter Eingaben; das Ausmaskieren alleine ist
nicht funktional. So könnte z.B. die ìMî-Taste eines Keyboards
abgeschaltet werden, wenn sie bedeutungslos ist. Der Benutzer sieht aber die Taste
immer noch, könnte sie daher auch noch drücken und würde sich wundern,
warum nichts geschieht - dieses ist alles überflüssige Anstrengung. Der
Benutzer verschwendet sehr viel Zeit durch das Drücken und sich-Wundern. Der
Programmierer kann aber diese Möglichkeit ausschalten, indem er sich in die
Lage dem Benutzers versetzt. Im Gegensatz dazu könnte ein sauber geschlossenes
Eingabegerät nur für das Programm erforderliche Daten erzeugen und weiterleiten.
Der Benutzer kann keine Zeit an überflüssigen Handlungen verschwenden,
da solche gar nicht mehr vorkommen können.
Die
Vorteile einer korrekt aufgebauten Geschlossenheit sind vielfältig. Das Programm
ist einfacher und schneller, da keine Eingabe-‹berprüfung vorgenommen werden
muß. Der Benutzer benötigt weniger Zeit, um mit dem Programm vertraut
zu werden, da er weniger Probleme mit ihm hat.
Das
vorrangige Problem der Geschlossenheit ist der arbeitsaufwendige Aufbauprozess um
sie zu erreichen. Das gesamte Verhältnis zwischen Benutzer und Programm muß
sorgsam analysiert werden, um das Minimum des erforderlichen Vokabulars festzulegen,
das für die Kommunikation beider gebraucht wird. Eine große Anzahl von
Kommunikations-Mustern muß überprüft und aufgegeben werden, bevor
das sinnvollste gefunden wird. Bei diesem Vorgang sind viele Glocken- und Pfeifgeräusche
zu eleminieren, die der Programmierer gerne in das Programm einbringen würde.
Wenn der Programmierer objektiv den Wert dieser Geräusche und sonstiger Ausstattungen
betrachtet, so wird er merken, daß diese Dinge eher überflüssiges
Anhängsel als sinnvolle Einrichtungen sind.
FOLGERUNGEN
Das
Design einer Sprache zur Kommunikation zwischen Mensch und Computer ist der schwierigste
Arbeitsprozess bei der Entwicklung von Verbraucher-Software. Der Programmierer muß
sorgfältig die Möglichkeiten der Maschinen gegenüber den Bedürfnissen
des Benutzers abwägen. Er muß präzise die Information bestimmen,
die zwischen den beiden Beteiligten fließen soll. Die Sprache muß so
entwickelt werden, daß die Qualität (nicht die Quantität) der zum
Benutzer fließenden Information auf ein Maximum gebracht wird, wogegen die
erforderliche Anstrengung des Benutzers zur Bedienung des Gerätes auf ein Minimum
beschränkt werden muß. Die Sprache sollte die Möglichkeiten und Peripherie
der Maschine effektiv anwenden, wobei Geschlossenheit und Direktheit erreicht werden
müssen.
EINIGE
‹BLICHE PROBLEME BEI DER AUSARBEITUNG
Nachdem
die Probleme bei der Ausarbeitung theoretisch besprochen wurden, können wir
uns jetzt Problemen bestimmter Programme in Hinsicht auf diese hinwenden. Die Liste
erhebt keinen Anspruch auf Vollständigkeit; es werden die allgemeinen vorkommenden
Probleme angesprochen.
VERZ÷GERUNGEN
Viele
Programme erfordern langwierige Berechnungen. Tatsächlich gilt dies mehr oder
weniger für alle Programme; jedes führt Kalkulationen aus, die mehr als
eine Sekunde benötigen. Was unterhält den Benutzer während diese ausgeführt
werden? Zu viele Programme unterbrechen einfach den Dialog in dieser Zeit, so daß
letzterer sich einem inaktiven Bildschirm ohne Lebenszeichen vom Computer gegenübersieht.
Der Computer reagiert nicht auf Eingaben vom Benutzer. In Hinsicht auf die Ausarbeitung
fehlt diese total. Es ist absolut unentschuldbar, daß der Benutzer alleingelassen
wird.
Separate
Vorgänge
Die
beste
Möglichkeit,
dieses
Problem
der
Nichtbeachtung des Benutzers
zu
lösen
ist,
den
Eingabe-Prozess
vom Kalkulations-Vorgang
zu trennen.
Der Benutzer muß
in der Lage sein, Eingaben
zu machen,
während der
Computer Berechnungen
ausführt. Die
Technik
wird
durch die Verwendung
des Vertical-Blank-Interrupts
(siehe
Anhang I) ermöglicht.
Der Programmierer
kann
die Eingabe-Bearbeitung
von der
hauptsächlichen Verarbeitung
trennen. Das
wirkliche Hindernis
hierbei
ist, daß viele Probleme sequenzieller Natur sind. Es
ist klar ersichtlich,
daß
der
Benutzer
erst einen Wert oder eine
Wahl eingeben muß,
bevor
das
Programm den
nächsten Schritt ausführen
kann.
Hierdurch
ist
es schwierig, Eingabe-
und Kalkulations-Bearbeitung
voneinander zu trennen. Natürlich ist es
durch geschickten Programmentwurf
möglich
Zwischenberechnungen durchzuführen,
so
das
während
die
wichtigen Daten eingegeben
werden, das Endergebnis schneller
erzielt wird. Die
Verwendung dieser Technik verkürzt
sicherlich
die Verzögerungszeiten,
bei denen der Benutzer warten muß.
Erhöhen
der Programmgeschwindigkeit
Eine
andere Lösungsmöglichkeit des oben angesprochenen Probleme besteht in der
Erhöhung der Ausführungsgeschwindigkeit des Programms selbst. Oft ist es
möglich, ein Programm so neu zu schreiben, daß die Ausführungszeit
verringert wird. Die ordentliche Verschachtelung von Schleifen reduziert ebenfalls
die Ausführungszeit (die Schleife mit mehr Wiederholungen sollte sich in einer
Schleife mit weniger Wiederholungen befinden). Bedeutende Verbesserungen können
durch die Umwandlung von BASIC in Assembler-Programme erzielt werden, da Assembler
10 bis 1000 mal schneller als BASIC ist. Dar größte Vorteil in Assembler-Programmen
liegt in der Verschiebung von Speicher, Graphik-Routinen und weniger stark in Fließkomma-Berechnungen.
Durch Ausmaskieren von Vertical-Blank-Interrupts kann mehr Prozessorzeit für
die Ausführung des Hauptprogramme gewonnen werden. Eine weitere Möglichkeit
ist die Reduzierung der von ANTIC für DMA benötigten Zyklen. Dieses kann
durch Wechseln zu einem einfachen Graphik-Modus (BASIC-Modus 3 ist hierfür am
besten geeignet) oder durch Verkürzen der Display-List geschehen. Das Abschalten
des ANTIC-Chips ist keine gute Idee, da der Benutzer sich hierdurch wieder einem
schwarzen Bildschirm gegenübersieht.
Beschäftigung
des Benutzers
Die
dritte Möglichkeit, um das Problem der Verzögerungen zu lösen besteht
in der Beschäftigung den Benutzers während der Berechnungsvorgänge.
Ein Countdown ist eine solche Methode. Der Benutzer sieht diesen und wird abgelenkt.
Der Computer kehrt bei Beendigung dieses Countdowns zum Hauptprogramm zurück.
Eine andere Möglichkeit wäre das Zeichnen zufälliger Graphikmuster
auf dem Bildschirm. Die Verzögerungszeit sollte immer mit einer Information
des Computers beginnen, die den Benutzer letzteres mitteilt. Diese Meldung sollte
durch ein Klingel- oder ähnliches Geräusch beendet worden. Der Programmierer
darf aber nicht von Anfang an auf diese Technik aufbauen. Sie ist zwar besser, als
den Benutzer ganz allein zu lassen, aber sollte nicht als erste Möglichkeit
erwogen werden.
BEARBEITEN
FALSCHER BENUTZEREINGABEN
Das
wichtigste
Problem
bei
momentan
erhältlicher Verbraucher-Software
ist
die
schlechte
Bearbeitung
falscher
Benutzereingaben.
Gute Programme schließen solche dadurch aus,
daß sie gar nicht erst möglich sind. Wie schon
erwähnt, wird diesem am einfachsten durch die Verwendung des
Joysticks erreicht. Es
gibt allerdings auch Programme, welche die
Benutzung einer Tastatur erfordern. Selbst mit
einem Joystick sind solche falschen Eingaben nicht auszuschließen.
Wie können
sie aber nun bearbeitet
werden, wenn es nicht möglich ist, sie von vornherein zu eliminieren? Die folgenden
Absätze stellen einige Lösungs-Möglichkeiten dar. Ein Schutz-System
muß im gesamten Programm einheitlich ablaufen. Sobald der Benutzer auf ein
solchen System stößt, wird er es immer voraussetzen. Eine Nichtbeachtung
diesen Grundsatzes schafft Gruben, in die der Benutzer mit höchster Wahrscheinlichkeit
hineinfällt, da er sich einer nicht vorhandenen Schutzvorrichtung sicher ist.
Anzeigen
des Fehlers und Lösung
Die
beste Lösungs-Möglichkeit in einer solchen Fehlersituation ist das Anzeigen
des Benutzer-Fehlers mit einem Beispiel für eine richtige Eingabe auf dem Bildschirm.
In der Antwort des Computers müssen drei Dinge eingeschlossen sein: als erstes
muß die Eingabe des Benutzers noch einmal angezeigt werden, um diesem seinen
Fehler erkennen zu lassen. Als zweites muß der Fehler deutlich markiert werden,
so das dem Benutzer der Fehler ersichtlich ist. Drittens muß schließlich
eine alternative korrekte Eingabe-Möglichkeit dargestellt werden, damit der
Benutzer nicht das Gefühl hat, er stehe vor einer unüberwindlichen Mauer.
Ein Beispiel für eine Antwort auf einen falschen Tastendruck wäre: ìSie
haben CONTROL-A gedrückt, was eine Autopsie anfordert. Ich kann keine Autopsien
für lebende Leute anfertigen. Ich schlage daher vor, daß Sie das Subjekt
vorher kaltmachen.î
Diese
Technik ist im Bezug auf die Programmgröße und Entwicklungszeit offensichtlich
nicht sehr billig; ist aber der Preis für eine gute Lösungs-Methode. Es
gibt natürlich auch weniger aufwendige Möglichkeiten, die allerdings auch
nicht so effektiv sind.
Ausmaskierung
nicht zulässiger Tasten
Eine
andere übliche Lösung des Eingabe-Problems bei Tastaturen ist die Ausmaskierung
aller falscher Eingaben. Wenn der Benutzer eine nicht zulässige Taste drückt,
so geschieht nichts. Es wird kein Klicken erzeugt und kein Buchstabe auf dem Bildschirm
ausgedruckt. Das Programm hört nur das, was es hören will. Diese Lösung
garantiert zwar, daß ein Programm nicht abstürzt, schützt den Benutzer
allerdings nicht vor Verwunderung und Verwirrung. Er würde lediglich eine Taste
drücken, wenn sie etwas bedeutet. Die Ausmaskierung korrigiert nicht den Eindruck
des Benutzers, er habe etwas falsch gemacht. Diese Möglichkeit führt nur
zum Schluß, daß irgendetwas mit dem Computer nicht in Ordnung ist, was
wir den Benutzern nicht antun wollen.
Eine
Variante dieser Möglichkeit
wäre die Erzeugung eines unangenehmen Knarr- oder
Summgeräusches, das
den Benutzer für seine Dummheit bestraft.
Einige
Programms gehen sogar soweit, daß sie Letzteren
zurechtweisen, bis hin zu Beleidigungen.
Dieses sind mehr fragwürdige Techniken. Es gibt natürlich
Fälle, bei denen
ein
Schutz vor gefährlichen
Tastendrücken durch
unliebsame Mitteilungen
erforderlich sind. Sie sind
aber sehr selten. Korrektur-Meldungen
sollten immer dem
Zivilisations-Standard entsprechen.
Fehler-Meldungen
Eine
sehr viel bessere Lösung ist das einfache Ausgeben einer Fehlermeldung auf den
Bildschirm. Dem Benutzer wird mitgeteilt, daß er etwas falsch gemacht hat.
In vielen Fällen ist aber diese Fehlermeldung verschlüsselt und nützt
dem Benutzer daher nicht viel. Ein Beispiel hierfür ist das ATARIîTMî
BASIC-Modul, bei denen der aufgetretene Fehler durch eine Zahl angegeben wird. Dieses
ist nur gerechtfertigt, wenn das Programm unter extremen Speicherbedingungen laufen
muß.
In
den meisten Fällen ziehen die Programmierer es vor, die Benutzer-Behandlung,
wie z.B. sinnvolle Fehlermeldungen, für zusätzliche technische Möglichkeiten
zu vernachlässigen. Wie schon am Anfang dieses Kapitel erklärt, erreichen
wir eine Stufe, bei der nicht länger die zusätzliche technische Leistungsfähigkeit
sondern die Ausarbeitung die Begrenzung ist. Daher sind solche Abstriche nicht unbedingt
vertretbar.
Abstriche
beim Schutz zugunsten der Leistung
Ein
Bestandteil der Behandlung des Benutzers ist, daß deren Folgen die Arbeitsgeschwindigkeit
zwischen Benutzer und Computer verlangsamen. Programmierer können Fragen und
Sicherungen wie ìARE YOU SURE?î (=Sind Sie sich sicher?) in Programmen
nicht mehr sehen. Eine Lösung dieses Problems wäre die Wahlmöglichkeit
des Verhältnisses Schutz/Leistungsfähigkeit. So kann ein Programm mit einem
sehr stark geschützten Zustand initialisiert werden, wodurch alle Eingaben sorgsam
überprüft und berichtigt werden. Der Benutzer kann nun diesen Schutz zugunsten
der Geschwindigkeit zurücksetzen. Diese Option wird nicht auf dem Bildschirm
ausgedruckt - sie wird nur in der Dokumentation beschrieben. So kann ein Benutzer
intensiv und schnell arbeiten, ein anderer langsam, aber sicher vor Fehlern.
MEN‹S
UND AUSWAHL-TECHNIKEN
Menüs
sind die gebräuchlichste Einrichtung, um den Benutzer seine Wahlmöglichkeiten
anzuzeigen. Sie sind besonders bei Anfängern sinnvoll. Kommando-orienterte Schemen,
die von Programmierern bevorzugt werden, enttäuschen den Benutzer, der nicht
die Zeit zum Lernen sämtlicher Befehle eines solchen Programms hat. Natürlich
sind auch mit der Verwendung von Menüs Probleme verbunden; sie werden nachfolgend
besprochen.
Menügröße
Wie
viele Punkte sollten in einem Menü vorhanden sein? Die Obergrenze wird offensichtlich
durch die Bildschirmgröße festgelegt, was im BASIC-Modus 0 bis zu 48 Punkten
entspräche (24 Zeilen mit jeweils 2 Eingängen). Eine Menge von 7 Auswahlmöglichkeiten
wäre zu vertreten. Hierdurch bliebe noch weiterer Platz des Schirmes für
andere Dinge frei, wie einen Menütitel oder eine Computerantwort.
Mehrere
Menüs
Des
öfteren erfordert ein Programm mehrere Menüs, damit sämtliche Möglichkeiten
erfasst werden. Diese Menüs müssen dann in einer übersichtlichen Art
und Weise organisiert werden, da der Benutzer sich beim Durchwandern solcher Labyrinthe
leicht verirren kann. Eine Lösungsmöglichkeit wäre, das Hauptmenü
deutlich zu markieren und jedes untergeordnete mit einer Rücksprungs-Möglichkeit
zum ersteren auszustatten. Eine andere Verschachtelungsart wäre eine hierarchisch
aufgebaute Struktur. Wird diese Technik verwendet, muß der Programmierer Farbe
und evtl. Sound in das Programm einbringen, so daß der Benutzer sich anhand
dieser Dinge zurechtfinden kann. Jedes Menü-Niveau sollte eine bestimmte Farbe
und Tonart besitzen, wobei letztere in Verbindung mit der Position innerhalb der
Hierarchie stehen sollte.
Auswahlmethoden
Wie
teilt der Benutzer dem Computer seine Wahl mit, wenn er die Möglichkeiten aufgezeigt
bekommen hat? Die am häufigsten verwendete Methode besteht in der Markierung
der einzelnen Menüpunkte mit einer Zahl oder einem Buchstaben: der Benutzer
drückt zum Auswählen einfach die zugehörige Taste auf der Tastatur.
Dieses ist eine etwas ungeschickte Technik, da sie mit unnötiger Indirektheit
verbunden ist. Bessere Methoden verwenden das folgende Grundprinzip: ein beweglicher
Zeiger adressiert die Option und ein Auslöser wählt sie aus. Dieses wird
bei einigen Programmen durch invertierte Schrift deutlich gemacht. ‹ber die SELECT-Taste
wird der Menüpunkt angewählt, wobei vom untersten wieder zum obersten zurückgesprungen
wird. Durch die START-Taste wird der Menüpunkt aktiviert. Eine andere Möglichkeit
wäre, den Zeiger immer durchlaufen zu lassen, so daß der Benutzer nur
eine Taste oder einen Auslöser drücken muß, damit die Auswahl getroffen
wird. Diese Methode ist allerdings nicht sehr geeignet, da sie entweder zu schnell
am Ziel vorbeiläuft oder zu lange zum Durchlaufen sämtlicher Punkte benötigt.
Für die vorangegangene Technik sind Joysticks und Paddles besonders gut verwendbar,
da mit ihnen die Auswahl getroffen und über den Auslöser aktiviert werden
kann.
BEDIENUNGSANLEITUNGEN
CONTRA BILDSCHIRM-ERLƒUTERUNGEN
Ein
allgemeines Problem im Zusammenhang mit Menüs, Fehlermeldungen, Computer-Antworten
(Prompt) und anderen Mitteilungen ist, daß dieses Material sehr leicht einen
großen Speicherplatz verbraucht; Speicher, der gut für andere Dinge benutzt
werden könnte. Diesem Material könnte in einem Referenzendokument platziert
werden, was sich allerdings negativ im Bezug auf die Ausarbeitung auswirkt. Der Programmierer
muß entscheiden, wie viel Material in das Programm eingebracht und wie viel
in einem Manual abgedruckt werden soll. Bei Programmen, die auf Disketten-Benutzung
basieren, ist es möglich, dieses Material auf Disk zu speichern, obwohl dieses
keine optimale Lösung ist.
Betrachtet
man das
Problem vom
Standpunkt der
Ausarbeitung und
des
ìSich-um-den-Benutzer-Kümmernî
aus,
so
fällt
eine Entscheidung
leicht;
sämtliche Informations-Materialien
müssen sich im Programm,
oder zumindest
auf Diskette befinden.
Gegen diese Lösung sprechen
natürlich die technischen
Aspekte. Eine Technologie sollte für
die Dinge eingesetzt werden, die sie
am besten bearbeiten kann.
Ein Computer
kann natürlich statischen Text behandeln, seine Stärke ist die dynamische
Verarbeitung von
Information. In
den meisten Fällen
ist die Bearbeitung
statischer Information besser mit Papier und Feder durchzuführen,
als mit dem Computer.
Statische Information gehört daher
im allgemeinen in ein
Manual, wobei das
Programm auf diesen Text
hinweist. Kritische Information
sollte allerdings
weiterhin im Programm eingeschlossen sein.
ERFOLGSMAßSTƒBE
Wie
kann der Programmierer den Erfolg seiner Ausarbeitungen für den Benutzer feststellen?
Hierfür gibt es einige Indikatoren, wie z.B. die Länge eines Manuals; je
kompakter und kürzer, desto besser. Wenn Sie die Hintergrund-Informationen ausschließen
und nur das für die Beschreibung der Programmbenutzung erforderliche Material
berücksichtigen, so ist der Umfang letzterer ein guter Maßstab. Ein gutes
Programm benötigt nur wenig Erklärungen, was natürlich kein Argument
gegen eine ausführliche Dokumentation sein soll. Eine Anleitung sollte das Programm
immer detaillierter beschreiben, als absolut notwendig. Ein langes, kompliziertes
Manual ist gut; ein Programm, das ein solches Manual erfordert, nicht.
Ein
anderer Maßstab ist der Zeitraum, den ein neuer Benutzer zum Erlernen der effektiven
Programmbenutzung braucht. Gute Programme können nach wenigen Minuten erfolgreich
angewendet werden.
Man
kann auch den erforderlichen Gedankenaufwand des Benutzers als Orientierung verwenden.
Ein gutes Programm sollte das Denken des Benutzers nicht strapazieren. Er sollte
sich über den Inhalt des Programms und nicht über dessen Technik Gedanken
machen. Er muß sich darauf konzentrieren können, was er tut und nicht,
wie er es tun muß. Ein gut ausgearbeitetes Programm eliminiert mentale Schranken
zwischen dem Benutzer und dem Computer. Die beiden ìdenkenden Wesenî
erreichen eine mentale Synchronisation, eine Intellektuelle Einheit.