Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

15.01.1993 - 

Erster Schritt in Richtung eines normierten Interface

Standard fuer Interoperabilitaet von CASE-Tools wuenschenswert

PCTE enstand aus dem Esprit-Projekt 32 der EG-Kommission, das im Jahre 1983 begonnen wurde. Die Beteiligten erarbeiteten 1986 eine Werkzeug-Schnittstelle mit dem Namen PCTE Version 1.4, urspruenglich in C, spaeter in Ada. 1987 uebernahm das PIMB-(PCTE Interface Management Board-)Komitee, eine Gruppe von Industrieunternehmen, diese Arbeit, um im Auftrag der EG PCTE als Standard zu promoten. Das Ergebnis war die PCTE-Version 1.5, in die viele Aenderungsvorschlaege aus der Praxis eingingen.

Zwei Dimensionen der PCTE-Schnittstelle

Parallel befassten sich die IEPG/TA13-Mitgliedsstaaten (eine Unterorganisation der NATO) mit der Version 1.4, um sie betriebssystemunabhaengig sowohl fuer zivile als auch fuer militaerische Anwendungen nutzbar zu machen.

Hauptaenderungen betrafen die Sicherheit und das Vorgehensmodell, ferner wurden zusammengesetzte Objekte eingefuehrt. Das Ergebnis wurde PCTEi Issue 3 genannt und ist heute die Basis diverser Implementierungen auf verschiedenen Plattformen.

Auf Anforderung der PIMB leitete seit 1988 die ECMA die PCTE- Entwicklung. Das technische Komitee TC33 begann seine Spezifikation mit Version 1.5, aenderte die Basis aber bald auf PCTEi Issue 3. Dabei wurde entschieden, den zukuenftigen Standard in drei unabhaengige Papiere aufzuteilen: fuer die abstrakte Spezifikation, den C-Sprachsupport und den Ada-Sprachsupport.

Basierend auf dieser Arbeit verabschiedete die ECMA im Dezember 1990 die Standards ECMA-149 (abstract specification) ECMA-158 (C Bindings und ECMA-159 (Ada-Bindings). Die Arbeit wird derzeit fortgefuehrt mit dem Ziel, C++-Bindings zu verabschieden und ECMA PCTE als ISO Standard einzubringen.

Die PCTE-Schnittstelle wird in zwei Dimensionen beschrieben: die strukturelle und die funktionelle Architektur.

Strukturell bedeutet dabei das logische Organisationsmodell einer PCTE-Installation. Eine PCTE-Struktur ist eine Anzahl von Einzelbenutzer-Workstations sowie zugeordneten Ressourcen, die ueber ein Netzwerk miteinander kommunizieren. PCTE verwaltet eine Datenbasis (Object base), die auf verschiedene, einzelnen Workstations zugeordnete Datentraeger verteilt ist.

Fuer den Werkzeughersteller ist die physikalische Installation und Verteilung dieses Netzes ohne Bedeutung. Das PCTE-Interface erlaubt die Konfiguration des Netzes unabhaengig von der Werkzeugimplementierung.

Die funktionelle Architektur von PCTE beschreibt die einzelnen Dienste und ihre Zusammenhaenge. Dabei werden verschiedene logische Sektionen mit unterschiedlichen Diensten unterschieden.

Die Object Base ist das Repository einer PCTE-Installation. Das Object Management System (OMS) ist vom Entity-Relationship-Modell abgeleitet und beschreibt Objekte und Relationen als die Atome der Datenbasis. Jedes Objekt besitzt optional

- Contents: Speicher mit nicht interpretiertem Inhalt, meist als traditioneller File implemetiert;

- Attributes: primitive Werte, die spezifische Eigenschaften eines Objektes beschreiben;

- Links: logische Verknuepfungen oder Abhaengigkeiten von Objekten, die typisiert sind und indiziert werden koennen.

Alle Elemente des OMS sind fest typisiert, und alle Daten muessen den Regeln des entsprechenden Typs genuegen.

PCTE erlaubt verteilte Verwaltung des OMS. Zu diesem Zweck werden Schema Definition Sets (SDS) definiert, die jeweils in sich konsistent sind. Der Benutzer des OMS arbeitet mit dem Working schema, einer Vereinigung verschiedener SDSs. Dieses Konzept ermoeglicht das Weiterarbeiten mit lokalen Datenbestaenden auch waehrend Netzwerkausfaellen.

PCTE kennt den Begriff "Process" fuer ein Programm, das in einer bestimmten Umgebung ablaeuft. Fuer diese Prozesse verwaltet PCTE den gesamten dynamischen Status wie Sicherheitsmechanismen, Transaktionen, Nachrichten und Files. Remote-Ausfuehrung ist bei allen Prozessen moeglich.

PCTE unterstuetzt sowohl "Message queues" als auch "Pipes". Beide Konzepte sind als spezielle Objekttypen implementiert und unterliegen allen PCTE-Eigenschaften wie Lokking, Transaktionen und Sicherheitskonzepten.

Der Mechanismus "Notification" erzeugt bei bestimmten Zugriffen auf Objekte automatisch Nachrichten in einer Queue. Auf diese kann dann mit weiteren Programmen zugegriffen werden. Dies ermoeglicht eine Art Triggermechanismus, der automatisch Aktionen ausloest, wenn bestimmte Objekte geaendert, geloescht oder verschoben werden.

Die Integritaet des OMS sichern sogenannte "Activities". Sie werden benutzt, um atomare oder Serien von atomaren Transaktionen zu schuetzen. Sie koennen untereinander vernetzt oder auch von mehreren Prozessen gemeinsam benutzt werden. Innerhalb einer activity besteht ein Locking-Mechanismus fuer bestimmte Ressourcen.

Es gibt zwei Ebenen einer Netzwerkunterstuetzung. Die erste ist fuer Anwender transparent und regelt den Zugriff auf remote abgespeicherte Objekte wie auch den Aufruf von Prozessen auf anderen Workstations. Die zweite Ebene beschreibt das Netz fuer den Systemverwalter.

Um Autonomie bei Netzausfaellen zu gewaehrleisten, werden "Replications" zur Verfuegung gestellt. Eine Replication ist die Kopie einer definierbaren, netzwerkweit vorhandenen Menge von Objekten auf der lokalen Workstation.

Die Aufgabe des Security-Mechanismus ist es, unerlaubten Zugriff, Aenderung oder Loeschung von Information im Netz zu verhindern. Dabei wird zwischen diskreter und obligatorischer Sicherheit unterschieden. Der Begriff diskrete Sicherheit meint baumartig strukturierte Sicherheitsgruppen, wobei jeweils eine bestimmte Gruppe die Zugriffsprivilegien der Vorgaengergruppe erbt.

Sicherheitsgruppen baumartig strukturiert

"Obligatory security" unterscheidet "Integrity" und "Confidentiality". Integrity verhindert den Informationsfluss von Objekten niederer Integritaet zu Objekten hoeherer. Confidentiality arbeitet umgekehrt und unterbindet den Zugriff auf sensible Informationen durch nicht entsprechend autorisierte Benutzer.

"Accounting" erlaubt das automatische Erfassen des Ressourcenverbrauchs durch Benutzer, Gruppen und Programme.

"Auditing" arbeitet eng mit Security zusammen und erfasst den Zugriff auf Objekte waehrend sicherheitskritischer Aktionen.

Es gibt bereits mehrere Implementierungen von PCTE, dabei erfuellt jedoch noch keine den vollen ECMA-Standard:

- GIE Emeraude Frankreich bietet bereits seit laengerem eine Implementierung von PCTE 1.5, die im Laufe des Jahres 1993 zum vollen ECMA-Standard ausgebaut werden soll.

- Verilog, ebenfalls eine franzoesische Firma, implementierte PCTE 1.5 auf einer Oracle-Datenbasis und ermoeglicht damit SQL-Zugriffe auf PCTE-Objekte.

- Das PCTEi-Assessment-Programm sah fuer Ende 1992 zwei nicht kommerzielle Implementierungen auf VMS und Unix vor, in die verschiedene Werkzeuge integriert werden.

- Digital Equipment arbeitet zusammen mit Issi in Austin, Texas, an einer ECMA-Implementierung, die darueber hinaus auch objektorientierte Schnittstellen unterstuetzt.

- IBM bastelt im Entwicklungslabor in Toronto an einer aehnlichen Implementierung mit dem Ziel, PCTE als neue Basis von AD/Cycle einzusetzen. Offizielle Ankuendigungen sind jedoch noch nicht erfolgt.

Mehrere Anwenderprojekte in Europa und den USA benutzen bereits ECMA-PCTE als Integrationsstandard:

- East, eine Entwicklungsumgebung des franzoesischen SFGL- Konsortiums, basiert auf PCTE.

- Entreprise-2 (E2) von Syseca in Frankreich nutzt PCTE als Repository und Werkzeugintegrator.

- PROSLCSE, ein Projekt der US Air Force, hat das Ziel, eine integrierte Entwicklungsumgebung auf Basis von PCTE zur Verfuegung zu stellen

- CASE, ebenfalls ein von der US-Regierung finanziertes Projekt, befasst sich mit einer PCTE-Implementierung fuer das Re-Engineering von Cobol- und Ada-Anwendungen.

Derzeit laufen verschiedene Aktivitaeten von Digital Equipment und IBM, um objektorientierte Erweiterungen zu definieren und PCTE mit dem Corba-Standard der OMG in Einklang zu bringen. Digital Equipment hat dabei im Rahmen der Cohesion-Architektur eine ECMA- PCTE entsprechende Implementierung von Corba entwickelt, die es PCTE-Tool-Integratoren erlaubt, mit den Corba-Diensten zu arbeiten.

PCTE ist damit einer der ersten europaeischen Standards, der in den USA Beachtung und Unterstuetzung erfahren hat. Auch wenn es noch ein weiter Weg ist, bis PCTE-basierte integrierte Entwicklungsumgebungen mit vernuenftigem Kostenaufwand in kommerziellen Projekten genutzt werden koennen, handelt es sich sicher um einen vielversprechenden Ansatz, der weltweite Beachtung findet.

*Augusto Argento ist Entwicklungsingenieur im Digital Entwicklungszentrum

in Varese, Italien; Peter Hubele ist Leiter des Loesungszentrums CASE der Digital Equipment GmbH in Muenchen.