next up previous contents index
Next: Zuordnung anhand von Kontrollflüssen Up: Zuordnung bei Einbeziehung mehrerer Previous: Zuordnung bei Einbeziehung mehrerer

Problematik der Zuordnung von Subtransaktionen  


Ziel bei der Zuordnung von Subtransaktion en ist es, jede Subtransaktion  derjenigen Instanz einer BTA  zuzuordnen, zu der die jeweilige Subtransaktion  beiträgt. Im folgenden Abschnitt soll die daraus resultierende Problematik verdeutlicht werden, indem zunächst die aufwendige Herangehensweise der ARM API dargestellt wird. Anschließend wird gezeigt, daß auch die im vorangegangenen Abschnitt verwendete Beschreibung der statischen Verknüpfungsstruktur einer Anwendung nicht ausreichend wäre, um die gewünschte Zuordnung herzustellen.

Bei Einsatz der ARM API  (vgl. Abschnitt [*]) wird die Zuordnung von Subtransaktionen zu BTAs folgendermaßen erreicht (vgl. Abbildung [*]):

 
Abbildung:  Zuordnung von Subtransaktionen bei Verwendung der ARM API (nach [#!john97!#])
24#24

Nach Start einer Transaktion t1 wird vom ARM Agent ein sogenannter Korrelator generiert und kann dort erfragt werden(k1), der die Instanz der Transaktion eindeutig identifiziert. Dieser muß bei einer nachfolgenden Subtransaktion ( t2) wieder an den jeweiligen ARM Agenten übergeben werden und gestattet somit die Zuordnung der Transaktionen in einer angeschlossenen Managementanwendung. Problem hierbei ist aber wiederum der erhebliche zusätzliche Aufwand für den Anwendungsentwickler , da der Korrelator der Transaktionsinstanz innerhalb der Anwendung - im Beispiel sogar über Systemgrenzen hinweg - propagiert werden muß (z.B. als zusätzlicher Aufrufparameter). Dies verhindert meist eine nachträgliche Instrumentierung von Anwendungen, da hierfür erhebliche Eingriffe in den Source Code erforderlich wären. Im Falle bausteinbasierter Anwendungserstellung  ist eine derartige Vorgehensweise gänzlich ausgeschlossen, da eine Propagierung dieser Information über Bausteingrenzen hinweg nicht ohne Veränderung der Schnittstellen aller eingesetzter Bausteine möglich wäre.

Auch aufgrund der Kenntnis der Verknüpfungsstruktur einer bausteinbasierten Anwendung läßt sich die Zuordnung nicht ermitteln. Dies wird an zwei einfachen Beispielen deutlich: Abbildung [*] zeigt vereinfacht eine Anwendung, die aus vier Bausteinen besteht. Bausteine A und B sind Eingabebausteine, mit denen BTA  1 bzw. BTA 2  gestartet werden. Beide rufen daraufhin Baustein C auf, der seinerseits Baustein D aktiviert. In diesem einfachen Beispiel ist es bereits nicht mehr möglich, anhand der Verknüpfungsstruktur der Anwendung die von Baustein D erbrachte Subtransaktion  einer der beiden BTA s korrekt zuzuordnen.


 
Abbildung:  Problematik der Zuordnung von Subtransaktionen zu BTAs
25#25

Eine ähnliche Situation ergibt sich bei zeitlich verschränkt ablaufenden Instanzen derselben BTA . BTA  1a und BTA  1b seien unterschiedliche Instanzen derselben BTA . Beide rufen daher denselben Baustein B auf. Da die Reihenfolge der Bearbeitung durch Baustein B nicht garantiert werden kann, ist es auch in diesem Beispiel nicht möglich, aufgrund der Verknüpfungsstruktur der Anwendung die beiden Instanzen der von Baustein B erbrachten Subtransaktion  korrekt der zugehörigen Instanz der BTA  zuzuordnen.


next up previous contents index
Next: Zuordnung anhand von Kontrollflüssen Up: Zuordnung bei Einbeziehung mehrerer Previous: Zuordnung bei Einbeziehung mehrerer
Copyright Munich Network Management Team