Skip to main content
main-content

Über dieses Buch

Dieses Buch beschreibt die Konzepte sowie die Prozedurschnittstellen des Dialogsystems PRODIA und des Datenbanksystems PRODAT. Es wendet sich an Hersteller und Anwender von Software-Engineering-Werkzeugen, Entwickler von Dialogwerkzeugen, Datenbank-Entwickler sowie Ingenieure und Informatiker in der Praxis. PRODIA ermöglicht die einheitliche Abwicklung der Mensch-Maschine-Interaktion in Entwicklungsumgebungen. Für die einzelnen Werkzeuge werden Funktionen zur Dialogabwicklung bereitgestellt, mit denen Benutzungsoberflächen realisiert werden, die dem heutigen Wissensstand der Software-Ergonomie entsprechen. PRODIA bietet moderne Informationstechniken auf Windows, Masken und Menus sowie direkte Objektauswahl und -manipulation an. In Windows sind Graphik (GKS), Pixmap und Text integriert. Das Non-Standard-Datenbanksystem PRODAT bietet praxisnahe Unterstützung bei der Modellierung und Verwaltung von Informationsstrukturen technischer Anwendungen. Einsatzgebiete von PRODAT sind Entwicklungsumgebungen komplexer Hard- und Softwaresysteme sowie CAD und Computergraphik. Auf der Basis eines erweiterten Entity-Relationship-Modells stellt PRODAT attributierte Objekte und Beziehungen zur Verfügung. Komplexe Objekte können über spezielle strukturdefinierende Beziehungen modelliert werden. Konzepte zur Darstellung von Versionen und Konfigurationen sind in das Datenmodell integriert. Arbeitsdatenbasen und Archivierungsmechanismen unterstützen die Bearbeitung großer Datenmengen über lange Zeiträume. PRODAT ist unter UNIX und VMS erprobt. PRODIA und PRODAT wurden als Rahmensysteme für mehrere Werkzeuglinien im Verbundprojekt PROSYT entwickelt (Integriertes Entwurfs- und Software-Produktionssystem für verteilbare Realzeit-Rechnersysteme in der Technik).

Inhaltsverzeichnis

Frontmatter

Einführung

Rechnerunterstützung bei Entwicklung und Betrieb von Realzeitsystemen in der Technik

Zusammenfassung
Die heute vorliegenden Erfahrungen in Entwicklung und Betrieb komplexer Realzeitsysteme für Anwendungen in technischen Problemstellungen haben die Erkenntnis gefördert, daß bei einer abzusehenden weiteren Komplexitätssteigerung die korrekte, effiziente und wirtschaftliche Durchführung aller notwendigen Teilaktionen von der Anforderungsdefinition bis zum Betriebsende eines solchen Systems zunehmend nur noch rechnergestützt durchführbar ist [Steu-83]. Aufgeschreckt durch erhebliche und weiterhin ansteigende Kosten- und Terminüberschreitungen in großen Softwareprojekten, insbesondere in den USA [LHG-80], sind daher seit Beginn der 80er Jahre weltweit Arbeiten angelaufen, um Werkzeuge für die Unterstützung von Erstellung und Betrieb rechnerautomatisierter Systeme in integrierter Form bereitzustellen. Diese Integration bedeutet, daß dem Konstrukteur und Betreiber rechnerautomatisierter Systeme nicht nur eine Sammlung heterogener Werkzeuge (“Werkzeugkasten”) zur Verfügung steht, für deren korrekten Einsatz er selbst verantwortlich ist. Ein integrierter “Werkzeugsatz” verbessert diese Situation und bietet darüber hinaus eine rechnergestützte syntaktische und — soweit möglich- semantische Verbindung zwischen den die verschiedenen Dimensionen und Phasen von Systemkonstruktion und -betrieb möglichst vollständig abdeckenden Werkzeugen.
Hartwig Steusloff

PRODIA — Das PROSYT-Dialogsystem

0. Einleitung

Zusammenfassung
In der Entwicklungsphase eines komplexen technischen Systems werden viele spezialisierte Werkzeuge, wie z.B. syntaxgesteuerte Editoren, Werkzeuge zur Projektplanung, zur Dokumentation, zur Simulation und zum Test, eingesetzt. In der Vergangenheit wurden die Software-Werkzeuge gewöhnlich so entwickelt, daß die Erfüllung der technischen Anforderungen im Vordergrund stand. Die Anforderungen, die sich daraus ergeben, daß Menschen die Werkzeuge benutzen, wurden jedoch nur als zweitrangig behandelt. Erst in den letzten Jahren wurde der Gestaltung der Interaktion zwischen Mensch und Computer größere Aufmerksamkeit gewidmet. Die Benutzungsoberflächen von vielen heute erhältlichen Text/Graphik-Systemen oder von Systemen zum Computer-gestützten Konstruieren, Publizieren, Dokumentieren sind mittlerweile richtungsweisend.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

1. Die Dialogschicht in Entwicklungssystemen

Zusammenfassung
Das für PRODIA verwendete Schnittstellenmodell geht von der Benutzungsoberfläche der Dialogschicht aus, die als zweigeteilt angenommen wird (siehe Abb. 1–0).
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

2. Windowing und Ausgabe

Zusammenfassung
PRODIA ermöglicht durch Windows den Ablauf verschiedener Dialogwerkzeuge auf einem Terminal (Multitasking). Gleichzeitig werden einer Anwendung mehrere virtuelle Ausgabegeräte zur Verfügung gestellt (Multiwindowing).
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

3. Eingabe und Events

Zusammenfassung
Das PRODIA-Event-Konzept liefert eine Abstraktion von physikalischen Eingaben zu Events, die dem Werkzeug übergeben werden. Event-Klassentypen beschreiben Dialogaufgaben mit einer bestimmten semantischen Bedeutung und einer spezifischen Datenstruktur. Die Ausprägung an der Benutzungsoberfläche entspricht Interaktionstechniken, die von PRODIA bereitgestellt werden und vom Werkzeug nicht verwaltet werden müssen. Dadurch ist die Werkzeugschnittstelle klein aber effizient und gleichzeitig wird den Forderungen nach Einheitlichkeit der Eingabetechniken Rechnung getragen.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

4. Frame-Inhalte: Typen und Konzepte

Zusammenfassung
Die PRODIA-Text-Funktionen decken den Bereich der alphanumerischen Ein-und Ausgabe zur Interaktion und Dokumentation in PROSYT ab und ersetzen die Terminal-Emulation (Kap. 6.3). Mit der Möglichkeit, Texte in verschiedenen Fonts, in beliebiger Größe und in Proportionalschrift auszugeben, wird nicht nur die Lesbarkeit von Hilfs- und Erklärungstexten erhöht, sondern auch die Grundlage für Dokumentenverarbeitung nach dem WYSIWYG-Prinzip (What You See Is What You Get) geschaffen.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

5. Dialog

Zusammenfassung
Der alphanumerische Dialog ist ein wichtiger Bestandteil beinahe jedes Software-Werkzeugs. Zudem nimmt die Dialog-Programmierung für den Werkzeughersteller einen umso größeren Raum ein, je benutzerfreundlicher die Werkzeugoberfläche ausgestaltet ist. Die Dialogkomponente von PRODIA unterstützt sowohl die Dialogrealisierung mit Hilfe von Masken und Menüs, als auch die Programmierung des Werkzeugdialogs auf einer höheren Sprachebene.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

6. Organisationsfunktionen und -werkzeuge

Zusammenfassung
Neben den PRODIA-Hauptkomponenten gibt es eine Reihe von ergänzenden Standard-Dienstfunktionen, die werkzeugübergreifend oder werkzeugunabhängig zur Funktionalität von PRODIA beitragen. Im Folgenden wird eine Liste solcher Funktionen aufgeführt; einige gehören zur PRODIA-Implementierung, andere werden nur skizziert. Die Liste ist grundsätzlich erweiterbar. Dabei gibt es einen fließenden Übergang zwischen solchen Funktionen, die in PRODIA integriert sind und solchen, die als eigenständige Werkzeuge auf PRODIA aufbauen.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

7. Schlußbemerkung

Zusammenfassung
In dieser Beschreibung von PRODIA wurde das Schwergewicht auf die Darstellung der funktionalen Gliederung des Systems und auf das Zusammenspiel der Komponenten gelegt. Es wird deutlich, daß den PROSYT-Werkzeugen eine Realisierung ihrer Benutzungsoberfläche auf hohem Niveau ermöglicht werden soll. In dem folgenden Anhang, der die Werkzeug-Schnittstelle von PRODIA prozedural beschreibt, sind neben dem formalen Language-Binding an die Sprache C semantische Einzelheiten der Schnittstelle zu finden.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

PRODAT — Das PROSYT-Datenbanksystem

0. Einleitung

Zusammenfassung
Die Integration von Werkzeugen wird durch den Einsatz eines Datenbanksystems als Basiskomponente wesentlich erleichtert. Die grundlegenden Vorteile eines Datenbanksystems — wie Datenunabhängigkeit, einheitliche Datenmodellierung, hohe logische Schnittstelle, etc. — sind allgemein anerkannt. Darüberhinaus wird die Kommunikation der Werkzeuge und damit die syntaktische und semantische Integration durch die Nutzung einer gemeinsamen Datenhaltungsschnittstelle wesentlich vereinfacht.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

1. Das PRODAT-Objektmodell (POM)

Zusammenfassung
In den neu zu erschließenden Anwendungsgebieten der Non-Standard Datenbanksysteme — dazu zählen Software Engineering, Büroautomatisierung, CAx und CIM — treten bevorzugt Objekte auf, die eine komplexe Struktur besitzen. Produktmodelle oder Chiplayouts sind augenfällige Beispiele hierfür. Aus diesem Grund werden in den Datenmodellen von Non-Standard Datenbanksystemen strukturierte Objekte zur Verfügung gestellt [HMMS-87], [SS-83], [DKM-85]. Objekte der realen Welt werden unabhängig von ihrer Komplexität auf ein einziges strukturiertes Objekt der Datenbank abgebildet. Dieses kann von Operationen des Datenbanksystems als Einheit behandelt werden, so daß z.B. das Kopieren, Sperren oder Löschen des gesamten strukturierten Objekts mit einer einzigen Operation möglich ist.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

2. Datenbasen

Zusammenfassung
Eine Datenbasis wird in PRODAT als eine Menge von Anfangsobjekten definiert. Datenbasen stellen die größten logischen Einheiten innerhalb von PRODAT dar. Sie dienen dazu, logisch zusammengehörende Daten zusammenzufassen und gemeinsam zu verwalten. So können alle Daten, die ein bestimmtes Projekt betreffen, in einer Datenbasis abgelegt oder auch Bibliotheken in Datenbasen zusammengefaßt werden.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

3. Archivierung

Zusammenfassung
Die großen Mengen von Daten, die speziell beim Entwurfsprozeß anfallen -man denke nur an die zahlreichen Versionen -, lassen die Integration einer Archivierungskomponente in die Datenhaltung ratsam erscheinen. So verwenden z.B. Katz und Lehman in [KaLe-84] ein Archiv, um Versionen automatisch zu archivieren. Sie setzen das Archiv als Speichererweiterung auf der physikalischen Ebene ein. In PRODAT hingegen wird das Archiv als ein Speicher mit speziellen Eigenschaften gesehen und ist daher für den Anwender sichtbar und manipulierbar.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

4. Zugriffsrechte

Zusammenfassung
Zugriffsrechte dienen dem Schutz von Daten des Datenhaltungssystems. Sie sollen verhindern, daß Daten unbeabsichtigt zerstört — d. h. gelöscht oder überschrieben — und durch nicht autorisierte Benutzer bearbeitet werden. Zugriffsrechte regeln, in welcher Weise der einzelne Benutzer auf in PRODAT gespeicherte Objekte zugreifen darf.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

5. Transaktionsverwaltung

Zusammenfassung
Die Bearbeitung von PRODAT-Objekten im Multiuser/Multitasking-Betrieb ist durch die Transaktionsverwaltung des Datenhaltungssystems sichergestellt. Eine Transaktion wird als Einheit für Recovery (Sicherungsmaßnahmen) und Synchronisation von parallelen Zugriffen betrachtet.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

6. Konsistenz

Zusammenfassung
PRODAT verwaltet strukturierte, komplexe Objekte. Zwischen den PRODAT- Objekten bestehen i.a. vom Anwender definierte Abhängigkeiten. Man kann von einem konsistenten Entwurf sprechen, wenn der Aufbau der Objekte im Sinne der Anwendersemantik korrekt ist und die Abhängigkeiten innerhalb eines Entwurfs eingehalten werden.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

7. Objektstatus

Zusammenfassung
Jedes Objekt besitzt einen Zustand, der durch eine Reihe von Statusattributen beschrieben wird. Die Werte der Statusattribute können mit Hilfe folgender Operationen ermittelt werden.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

8. Die PRODAT Type Definition Language (TDL)

Zusammenfassung
In diesem Kapitel wird eine Grammatik für die TDL (Type Definition Language) angegeben. Die Aufschreibung erfolgt in der üblichen Notation. Um die Übersicht zu erhöhen, sind die Syntaxteile den jeweiligen Einheiten des Datenmodells entsprechend gruppiert.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

9. Interaktive Bedienungsschnittstellen

Zusammenfassung
Dieses Kapitel enthält einen kurzen Überblick über PQL. Es handelt sich dabei um einen Interpreter für die PRODAT-Operationen, der 1:1 die Funktionen der C-Schnittstelle realisiert. Es wird vorausgesetzt, daß der Leser eine Vorstellung von der Funktionalität der PRODAT C-Schnittstelle hat.
Detlef Krömker, Steusloff Hartwig, Hans-Peter Subel

Backmatter

Weitere Informationen