Bevor neue Programme eingespielt werden, müssen alle Betriebsmittel
der Anwendung, die aus diesen Programmen gebildet wird, vor Zugriff
geschützt werden.
Eine Anwendung (Application) im Sinne eines TP-Monitors ist ein
abstraktes Gebilde, da es nicht ein einzelnes Programm gibt, das
aufgerufen wird und nach der Verarbeitung terminiert, sondern aus
vielen Transaktionen (Transaction) besteht, die in einer
bestimmten Reihenfolge gestartet werden. Hinter jeder Transaktion
(Transaction) steht ein Programm, das beim Start einer
Transaktion als erstes in den Speicher geladen und ausgeführt wird
(Program). Welches Programm eine Transaktion als erstes aufruft,
wird bei der Transaktion im Attribut firstProgram definiert.
Dies Programm ist der Einstiegspunkt für die Programmkette, die im
Rahmen einer CICS-Transaktion ausgeführt wird.
Um eine Transaktion zu definieren, ist noch anzugeben, ob sie
dynamisch geroutet werden darf (dynRoute) und welcher CICS-Gruppe
(CicsGroup) sie zugeordnet wird (group).
Die restlichen Attribute können mit Default-Werten oder optional
angegeben werden.
Zu einer Anwendung gehören aber typischerweise noch andere
Betriebsmittel, wie Dateien (File), die entweder als Dateien
eines Dateisystems oder auch als Datenbanktabellen realisiert sein
können. Diese Unterscheidung wird mit dem Attribut fileType
getroffen.
Bildschirmmasken, die Anwender-Schnittstelle des CICS, werden
Map genannt und sind ebenfalls Bestandteil der Anwendung.
Über eine transiente Daten-Queue (Tdq) stellt eine Transaktion
ihren Transaktionskontext der Nachfolge-Transaktion zu Verfügung. Es
werden zum Beispiel Eingaben, die in einer Maske gemacht wurden, der
nächsten Transaktion übergeben, damit der Anwender diese Eingaben
nicht noch einmal machen muß. Ebenso kann man mit einer TDQ Ergebnisse
aus einer Datenbankanfrage an Folgetransaktionen weitergeben, ohne die
Anfrage nochmals zu starten.
Für den Fall, daß eine Anwendung bereits installiert war und zum
Beispiel nur neue Versionen der Ressourcen eingespielt werden, müssen
die Betriebsmittel einer Anwendung vor Zugriff geschützt
werden, solange sich die Anwendung in einem inkonsistenten
Betriebsmittelzustand befindet. Jede Klasse muß daher eine Methode
haben, die den Zugriff auf die entsprechenden Ressourcen sperrt
(lock()).
Außerdem braucht man die momentane Version (version) aller
Betriebsmittel, um Kompatibilitätsprobleme frühzeitig zu erkennen.
Wird eine Anwendung erstmalig installiert, muß eine geeignete Region
gefunden werden, die alle Voraussetzungen für die jeweilige Anwendung
erfüllt. Der Region-Name wird in regionName eingetragen.
Für das eigentliche Einspielen der Anwendung, das Kopieren von Band
oder CD-ROM, werden die Betriebssystem-eigenen Werkzeuge
verwendet. Hier kann der CICS Domain Manager keine Hilfestellung
leisten, da sich die Übernahme-Verfahren in die Produktivumgebung
abhängig vom Betreiber stark unterscheiden.
Um die Definitionen für eine Anwendung anzulegen, wird bei einer
Anwendung eine Datei oder ein Skript mitgeliefert, mit dem zum
Beispiel über die Schnittstellen DEFINE in CICS/ESA und CICS for
OS/2 oder das CICS/6000-Kommando cicsadd alle Definitionen auf
einmal eingetragen werden können, ohne daß der Administrator jede
einzelne Definition mit der Hand vornehmen muß.
Die benötigten Verbindungen, zum Beispiel für Datenbankzugriffe,
müssen wie in eingetragen werden.
Sind alle Definitionen getroffen, wird die Anwendung aktiviert. Das
kann global für die gesamte Anwendung oder auch selektiv für jede
einzelne Definition mit activate() geschehen.
Jetzt könnte die Anwendung bereits lokal gestartet werden. Um
Anwendern, die sich mit einem Client anmelden oder die an entfernten
Terminals sitzen, den Zugriff auf die Anwendung zu erlauben, sind noch
Eintragungen in den Terminal-owning Regions (TOR) notwendig, damit von
dort die Anwendung 'remote' gestartet werden kann.
Man benötigt also mindestens für Transaktionen und Programme jeweils
eine Klassem, die eine Remote-Definition
realisiert. RemTransaction und RemProgram sollen diese
Klassen heißen und einen Verweis auf die Definition in der
Application-owning Region (AOR) enthalten. (transactionDef und
programDef).
Als globale Informationen sollten noch die zuständigen Administratoren
für das Sicherheitssystem (RACF, DCE, usw.) und für die
Datenbanksysteme zur Verfügung stehen.