1st Card - Das Programm mit dem Kartentrick

Mit 1st Card lassen sich Anwendungen erstellen, die schnell bei einer Fehlersuche, der näheren Bestimmung eines Objekts oder allgemein bei der Eingrenzung einer Sache helfen bzw. Wissen strukturiert darstellen sollen.

Es ist recht schwierig zu erklären, was man mit 1st_Card machen kann, deshalb gebe ich Ihnen am besten ein Beispiel. Sie möchten wissen, warum Ihr Auto nicht mehr anspringt. Dazu müssen Sie erst entscheiden, ob der Motor anläuft oder nicht. Entsprechend wird vom Programm verzweigt und weiter abgefragt, ob der Anlasser sich noch bemerkbar macht bzw. die Zündkabelanschlüsse noch an der Zündspule oder inzwischen schon am Luftfilter zu finden sind. Je nachdem, wie Sie sich entscheiden, verzweigt das Programm zu immer neuen Fragen, die variieren, wenn Sie eine andere Antwort auswählen. Das Programm ist beendet, wenn Sie beispielsweise zur Meldung “Der Verteilerfinger oder die Verteilerkontakte sind beschädigt oder verschmort” oder zur Meldung “Vor dem Starten sollten Sie Benzin einfüllen” gelangen und so den Fehler lokalisiert haben.

Wozu?

Eine der Anwendungen habe ich bereits beschrieben. Eine andere Möglichkeit wäre, daß sich der Anwender einer solchen Applikation im direkten, mausgesteuerten Dialog mit dem in den Anwendungen enthaltenen Fachwissen vertraut macht oder es einfach auf ein konkretes Problem anwendet, ohne es hinterfragen zu müssen. Es erfolgt keine Ablenkung durch Tastatureingaben, woraus ein Höchstmaß an Konzentration auf die Materie resultiert.

Beim Start des Programms kann man verschiedene Anwendungen, sofern vorhanden, starten. Ein Mausklick auf den entsprechenden Menüeintrag genügt, um die Applikation zu starten. Diese meldet sich dann grundsätzlich mit der ersten Karte (der Startkarte). Wie jede andere auch, kann die erste Karte aus einer Anzahl von Buttons, Texten und Bildern bestehen. Buttons markieren dabei die Stellen, mit denen der weitere Ablauf des Programms gesteuert werden kann. Bewegt man den Mauszeiger auf einen solchen Button, wird er automatisch invertiert. Wenn nun die linke Maustaste gedrückt wird, erscheint in der Regel eine neue Karte auf dem Bildschirm. Welche Karte das ist. ist allein von der Anwendung abhängig und kann vom Programmierer frei bestimmt werden. Auf diese Weise wird auf jede Antwort eine neue Frage gestellt und so die Lösung des Problems erarbeitet. Am besten schauen Sie sich einen Beispieldialog (“Alltag in der Redaktion”) an.

Der Mauszeiger befindet sich jeweils auf der gewünschten Antwort. Das jeweils nächste Bild stellt die Karte dar. die die Anwendung als Reaktion auf die vorhergehende Antwort auf den Bildschirm bringt. Die Bilder zeigen zwar nicht gerade komplexe Zusammenhänge, erklären aber deutlich, wie das Programm funktioniert.

Zur Beendung einer Anwendung kann die laufende entweder gestoppt. beendet oder eine neue gestartet werden. 1st_Card fragt dann, ob das Protokoll gespeichert werden soll. Das ist dann notwendig, wenn man eine Anwendung unterbrechen und später an der gleichen Stelle weitermachen möchte.

Benutzung der Anwendung

Zu jeder Karte können Hilfsmöglichkeiten angeboten werden. Dies hängt jedoch davon ab, inwieweit die jeweilige Anwendung davon Gebrauch macht, man also eine Hilfsfunktion eingebaut hat. Die Hilfe kann abgerufen werden durch Druck auf die HELP-Taste oder durch Klick auf das "?"-Symbol. Die Hilfskarten sollen Hilfestellung zum jeweiligen Problem der gerade angezeigten Karte geben. Eine solche Hilfe kann aus einer einzelnen Karte oder einem ganzen Kartensystem bestehen. Nach Beenden der Hilfsfunktion kehrt der Anwender zu der Karte zurück, an der die Hilfsfunktion aufgerufen wurde. Schon hier ist zu sehen, daß ein Kartensystem, wenn es komfortabel sein soll, aus hundert oder mehr Karten bestehen muß (je nach Problemstellung).

Nach dem Druck auf einen Button muß nicht zwingend eine andere Karte folgen, sondern es kann auch ein (vom Programmierer zu bestimmendes) Programm aufgerufen werden. Der Start einer Anwendung muß nicht zwingend mit der ersten Karte beginnen, sondern kann, sofern beim Start die Alternate-, Shift oder Control-Taste gedruckt wird, bei jeder beliebigen Karte anfangen. Das ist beispielsweise beim Test einer Anwendung von Vorteil, um die formale Struktur eines Teilbereiches der Anwendung zu prüfen.

Blättern

Während der Bearbeitung können alle bereits getroffenen Entscheidungen in ihrer Abfolge nachvollzogen, kontrolliert und gegebenenfalls geändert werden. Das geschieht durch "Blättern" in der Folge der bearbeiteten Karten. Dazu stehen die Cursor-Tasten oder die Pfeilsymbole in der Funktionsleiste des Programms zur Verfügung. Beim Zurückblättern wird jeweils der Button grau unterlegt, der vorher angewählt wurde. Wird während des Blätterns eine andere Entscheidung getroffen als zuvor, also ein anderer als der grau schattierte Button abgeklickt, erscheint eine Warnmeldung, da dadurch das Protokoll an der entsprechenden Stelle geändert wird. Diese (wie auch andere) Warnmeldung kann aber auch abgeschaltet werden. Protokolle können auch abgespeichert und wieder eingeladen werden, wenn man beispielsweise die Arbeit an einer Anwendung unterbrechen möchte. Wird ein Protokoll während des Blättervorgangs gespeichert, springt das System beim späteren Laden dieses Protokolls direkt an die Stelle der Anwendung, an der das Protokoll gespeichert wurde.

1st_Card benutzt eine sehr unübliche Art. mit Dialogboxen umzugehen, von der sich andere Programme verschiedene Scheiben abschneiden können. Wenn während der Beantwortung die Shift-Taste gedrückt wird, kann man den Default-Button so einstellen, wie man es gerne hätte. Durch "Auswahl sichern" wird die Option abgespeichert und die Alert-Boxen erscheinen künftig so, wie man es eingestellt hat.

Erstellen der Anwendung

Bevor eine Anwendung erstellt werden kann, muß der Programmierer ein Legitimationspaßwort eingeben, damit er in den Ediermodus des Programms gelangt. Dadurch ist gewährleistet, daß kein Unbefugter in den Anwendungen selbst etwas ändern kann.

Nachdem man in den Ediermodus gelangt ist, befindet man sich in einem Texteditor, der die wichtigsten Kommandos unterstützt und für eine komfortable Arbeit ausreicht. Es is sogar ein Undo-Puffer vorhanden. dessen Größe der Programmierer selbst einstellen kann.

Buttons, die grundlegenden Elemente jeder 1st_Card-Anwendung, werden mit der Maus erstellt. Dazu wird zunächst der linke obere Punkt mit dem Mauszeiger gewählt. Nun wird die rechte Maustaste gedrückt, der Button aufgezogen, und die Maustaste wieder losgelassen: Schon ist der Button fertig. Natürlich können Buttons auch verschoben, verändert oder auch wieder gelöscht werden. Auch Bilder können sowohl zur reinen Illustration als auch als Buttons eingesetzt werden, um die Anwendung anschaulich zu gestalten. Zum Ausschneiden dieser Bilder aus anderen GEM-Programmen wird ein Accessory mitgeliefert. Auch *.IMG-Dateien, wie sie von Snapshot produziert werden, können verarbeitet werden. Jede Karte, die auf diese Art und Weise erstellt wird, kann mit einem Informationstext versehen werden, der auch während der Anwendung angezeigt werden kann (die Legitimationseingabe vorausgesetzt).

Einzelne Karten können zum Austausch zwischen verschiedenen Anwendungen ex- und importiert werden. Dabei werden allerdings die Informationen über die Buttons gelöscht, da sie in der Regel anwendungsspezifisch sind. Es können aber auch mehrere Karten, die untereinander verbunden sind, in eine neue Anwendung eingebunden werden, ohne daß die Verbindungen zwischen den Buttons gelöscht werden.

Buttons

Die Hauptaufgabe der Buttons bessteht darin, festzulegen, welche Karte als nächstes in einer Anwendung aufgerufen werden soll. Dabei können Buttons “normale” in der Anwendung erstellte, oder auch Bilder-Buttons sein. Die Verzweigungen zu anderen Karten werden definiert, indem im Hauptprogramm der Mauszeiger auf einen Button geführt und nun die rechte Maustaste gedrückt wird. Aus der sich nun öffnenden Kartenbox kann der Name derjenigen Karte ausgewählt werden, die als nächstes angezeigt werden soll. Falls der Name der gewünschten Karte unbekannt ist, kann durch Betätigung der Help-Taste nach Worten bzw. Wortteilen auf den Karten gesucht werden. Auch ein Programm (TextVerarbeitung etc.) kann durch Druck auf einen Button nachgeladen werden. 1st_Card läßt sogar die Übergabe eines Parameters zu. Dieser kann entweder fest vorgegeben oder durch den Anwender bestimmt werden. So ist es z.B. möglich, auf Knopfdruck ein Textverarbeitungsprogramm zu laden, das wiederum direkt einen bestimmten Text nachlädt oder ein Datenbankprogramm zu starten, das sofort in einer bestimmten Datei eine Recherche durchführt. Zu jeder Karte kann eine Hilfe angeboten werden. Sie besteht aus mindestens einer weiteren Karte, die durch Mausklick auf das Symbol “?” oder durch Druck auf die Help-Taste angezeigt wird.

Daneben kann auch nach dem Hypertext-Prinzip gearbeitet werden, wie es bereits vom Macintosh-Programm HyperCard bekannt ist. Buttons können zur Hilfe als Hypertext-Buttons definiert werden, so daß neben der Hilfe zur Karte selbst auch spezifische Hilfen zu einzelnen Fachworten etc. angeboten werden können. Darüberhinaus können Buttons in drei Arten dargestellt werden: Als Knöpfe in 3D-Darstellung, mit einem einfachen Kasten umrahmt oder ohne Umrahmung, also versteckt.

Logisches Gemetzel

“Aussagen sind auf einer 1st_Card-Karte die Buttons, bzw. die Sätze oder anderweitigen Inhalte, die durch die Buttons markiert werden. Die Karte selbst ist dann ein aussagenlogischer Ausdruck, der aus der Verknüpfung der Buttons mit Junktoren (“und”, “oder”) besteht. Aussagenlogische Ausdrücke können ebenfalls wieder mit Junktoren zu einem neuen aussagenlogischen Ausdruck verbunden werden. Die Verknüpfung dieser aussagenlogischen Ausdrücke (also der Karten) geschieht durch eine weitere Karte, die mit ihren Buttons ja wieder auf andere Karten verweist.

Die Verknüpfung aussagenlogischer Ausdrücke stellt sich also als Verknüpfung der Buttons dar, die ihrerseits auf eine andere Karte (aussagenlogischen Ausdruck) verweisen.” meint jedenfalls das Handbuch. Will in einem Satz wesentlich einfacher meinen: Mehrere Karten können logisch miteinander verknüpft werden. Nun wird es kompliziert: Bei der Verknüpfung der Buttons einer Karte durch “und” oder “oder” wird für jeden Button eine Zielkarte angegeben. Diese Buttons sind aber erst dann “wahr”, wenn die angegebene Zielkarte erreicht wird. Will heißen: Sobald die Zielkarte eines “und”- oder “oder"-Buttons erreicht ist, wird die “und”- oder “oder”-Karte auf ihren Wahrheitsgehalt geprüft, eventuell wird zu einer anderen Karte verzweigt. Dadurch ist es zum Beispiel möglich zu überprüfen, ob der Anwender sinnvolle Eingaben getätigt hat (und eventuell zu entsprechenden Karten zu verzweigen).

Speicherplatz

Alle Karten werden auf Diskette, Platte oder sonstigen Speichermedien untergebracht und bei Bedarf nachgeladen. Die Größe der Anwendung ist lediglich auf die Größe des angeschlossenen Speichermediums beschränkt. Hier allerdings zeigt sich ein großer Mangel, denn 1st_Card treibt “Raubbau an der Festplatte”. Eine 140 kB lange Datei wird durch einen Packer in eine 9 kB lange Datei verwandelt. Erfahrungsgemäß sind in dieser Kartendatei also etwa 20 kB an Daten enthalten, was einer Ausnutzung von etwa 15 % entspricht. Auf eine doppelseitige Diskette (912 kB formatiert) passen aber immerhin über 400 Karten, auf eine 16MB-Partition fast 8000. Wenn die Datei zum Hersteller eingeschickt wird, kann sie auch in ein lauffähiges Programm verwandelt werden. Dabei werden die Dateien auch um 60 bis 80 Prozent gepackt.

1st_Card kostet 298,- DM und ist damit für ein kleines Expertensystem recht preiswert. Eine Demo für maximal 15 Karten, die aber den vollen Funktionsumfang hat, gibt es mit dem Original-Handbuch bereits für 25,- DM direkt bei Logi-Lex. Außerdem ist die Programmierung einer Anwendung sehr einfach zu erlernen. Das Handbuch ist übersichtlich und gut, wenn auch manchmal etwas gestelzt geschrieben und gibt hin und wieder auch mal einen Tip, wie man es machen bzw. nicht machen sollte. Für alle, die überschaubare Expertensysteme ohne komplizierte Programmiersprache erstellen wollen, ist 1st_Card empfehlenswert. Die Anwendungsgebiete sind durch die eingebauten Verknüpfungsarten von Buttons eingeschränkt, jedoch brauchbar.

MP

Bezugsadresse

LogiLex
Gerhard Oppenhorst
Eifelstr 32
5300 Bonn I



Aus: ST-Computer 02 / 1990, Seite 164

Links

Copyright-Bestimmungen: siehe Über diese Seite