Ein komplett neues Aufsetzten eines Systems ist eine Aufgabe, die viel Erfahrung im Umgang mit dem jeweiligen TP-Monitor erfordert. Der DTM stellt jedoch ein Hilfsmittel dar, mit dem eine bestehende Domäne mit TP-Monitoren auf verschiedenen Plattformen administriert werden kann. Für den Einsatzbereich des Domain Transaction Manager ist es momentan nicht notwendig, ein System von Grund auf aufzubauen, das heißt, man kann sich im Moment darauf beschränken, die Systemdefinitionen als Informationsquelle zu nutzen. Man braucht außerdem nicht die gesame Anzahl von Attributen für ein System, sondern kann sich für dieses Szenario auf wenige beschränken.
Um eine Region zu identifizieren braucht man den Region-Namen
(sysName) und den Netznamen (netName). Diese Namen
benötigt man jeweils für beide Systeme zwischen denen die
Verbindung definiert werden soll. Um nun die beiden
Verbindungs-Hälften zu definieren, gibt es die Klasse
(HalfConnection). Zur Identifikation muß man ihnen jeweils
einen Namen (connectionName) geben und festlegen, über welches
Protokoll (connectionProtocol) die Verbindung laufen, ob und
welches Gateway (gatewayName) und welche Zeichensatztabelle
(remoteCodepage) auf der Gegenseite verwendet werden soll. Das
ist notwendig, weil auf beiden Seiten unterschiedliche Zeichensätze
dazu führen, daß zum Beispiel Paßwörter zur Verifikation der
Berechtigungen nicht als richtig erkannt werden, obwohl die
richtigen Paßwörter übermittelt wurden. In diesem Zusammenhang
wird bei einer Halb-Verbindung angegeben, welche
Sicherheitsmechanismen verwendet werden sollen, ob Userid, Paßwort,
beides oder nichts übertragen werden soll (security). Diese
Einstellungen müssen in den beiden zusammengehörenden
Halb-Verbindungen übereinstimmen.
Außerdem braucht man noch den Namen der DCE-Zelle
(dceCellName) in der sich das andere System befindet. Um das
andere System im Netz eindeutig zu identifizieren, benötigt man bei
einer TCP/IP-Verbindung noch die TCP/IP-Adresse (remTcpAddress)
und den Port (remPortnr). Diese Attribute werden aber
sinnvollerweise bei dem jeweiligen System nochmals lokal gehalten
(localTcpAddress und localPortnr), da sie auch lokal
abgefragt werden sollen, um sie eventuell Anderen mitteilen zu
können, die eine Verbindung zu diesem System aufbauen wollen. In
SNA-Netzen ist die Identifizierung bereits über den Netznamen
(remNetName) und den Region-Namen (remSysName) möglich,
da diese eindeutig sind. Weil man eine Verbindung nur dann
definieren kann, wenn beide beteiligten Systeme gestartet sind und
laufen, braucht man eine Möglichkeit, festzustellen in welchem
Zustand sich ein System gerade befindet (systemStatus).
Sollte in einem System während der Laufzeit ein Problem auftreten,
kann es notwendig sein, ein System kurzzeitig herunterzufahren. Ein
häufiger Grund ist zum Beispiel eine Anwendung, die aufgrund eines
Programmierfehlers Betriebsmittel sperrt und nicht mehr freigibt.
Das Stoppen sollte von einem Managementwerkzeug ebenso ermöglicht
werden (stop()), wie das Starten.
Der Neustart (start()) eines Systems bereitet erfahrungsgemäß
mehr Schwierigkeiten als das Stoppen, weil die Stop-Funktion noch im
betreffenden System ausgeführt werden kann, ein nicht gestartetes
System seinen eigenen Restart aber nicht ohne weiteres einleiten
kann. Dazu muß auf die jeweils darunterliegende Ebene
zurückgegriffen werden. Bei Betriebssystemen dient dazu
beispielsweise das BIOS, im Falle der TP-Monitore müssen zum Starten
Betriebssystem-Dienste verwendet werden.
Um einem Administrator mehr
Übersichtlichkeit zu bieten, sollten jeweils die beiden
Halb-Verbindungen zu einer logischen Verbindung zusammengefaßt
werden und in einer Region oder besser noch global für einen Node
oder eine Domäne
angezeigt werden können, da ein Node mehrere Systeme enthalten
kann. Dazu dient die Klasse Connection, die über den
connectionName identifiziert wird und nur Metainformation
enthält, über die jeweils die beiden dazugehörigen
Halb-Verbindungen dereferenziert werden können
(halfConnectionA und halfConnectionB).
Zur einfacheren
Rechtevergabe und für selektives Sperren von Verbindungen und
Halb-Verbindungen sollten diese in Gruppen (group)
klassifiziert werden. Damit können zum Beispiel alle Verbindungen
zu einem Testsystem geschlossen oder Produktiv-Systeme nur für
spezielle Integrations-Systeme geöffnet werden. Um Verbindungen zu
öffnen und zu sperren braucht man die Methoden enable() und
disable().
Auf einer Verbindung werden eine oder mehrere Sitzungen (Session) aufgebaut. Einer Verbindung muß nun mitgeteilt werden, wieviele Sitzungen aufgebaut werden sollen, wenn die Verbindung zum ersten Mal aktiviert wird . Dazu dient das Attribut sessionCount. Der Zeitpunkt der Aktivierung einer Verbindung wird über das Attribut activateAtStartup festgelegt. Das CICS aquiriert während des Betriebes nach Bedarf weitere Sitzungen, falls die Konversationen auf den bestehenden Sitzungen nicht mehr bewältigt werden können. Nachdem eine Verbindung erfolgreich definiert wurde, sollte eine Methode zur Verfügung stehen, um sie einmal auf Funktion zu prüfen (test()).