Hartwig Steusloff Thomas Batz (Hrsg.)
System-Engineering für Realzeitsysteme
Bericht über das Verbundprojekt PROSYT
Mit 170 Abbildungen
Springer-Verlag
Berlin Heidelberg New York London Paris Tokyo
Hong Kong Barcelona
Inhaltsverzeichnis
1. Methoden und Werkzeuge zur Unterstützung von ... 1
Produktion und Betrieb rechnergestützter Systeme 2. Das Verbundprojekt PROSYT ... 7
3. Systemengineering für Realzeltsysteme:... 11
Lösungsansatz und Lösungsstruktur 3.1 Objektmodell für ein Datenhaltungssystem... 14
3.2 Das Datenhaltungssystem PRODAT...16
3.3 Zur Definition der Dialogschnittstelle PRODIA ... 18
3.4 Die Werkzeuglinien... 20
3.5 Schlußbetrachtung ... 22
4. Rahmensystem... 23
4.1 PRODAT ... . ....24
4.1.1 Das PRODA T-Datenmodell... 24
4.1.1.1 Einfache Objekte ... 25
4.1.1.2 Strukturierte Objekte ... 25
4.1.1.3 Vollständigkeit und Freigabe... 29
4.1.1.4 Konfigurationen...32
4.1.1.5 Versionen ... 35
4.1.1.6 Benutzerrelationen... 36
4.1.1.7 Schlüssel... 36
4.1.2 Archivierung ...37
4.1.2.1 Organisation des Archivs ... 38
4.1.2.2 Archivierungs-Einheiten... 38
4.1.2.3 Zugriff auf das Archiv... 39
X Inhaltsverzeichnis
4.1.3 Transaktionsverwaltung... 40
4.1.4 Interaktive Bedienungsschnittstellen ...40
4.1.4.1 POL - PRODAT-Query-Language... 40
4.1.4.2 POE - PRODAT-Objekteditor ... 41
4.1.5 Verfügbarkeit ... 42
4.2 Das PROSYT-Dialogsystem PRODIA... 43
4.2.1 Einleitung... 43
4.2.2 Windowing und Ausgabe ...44
4.2.3 Graphische Eingabe - das Event-Konzept ... 46
4.2.4 Dialog mit Masken und Menüs ... 46
4.2.5 Die PROD/A-Implementierung ... 47
4.2.6 Die PROD/A-Prozeßstruktur ... 49
4.2.7 Die PROD/A-Testumgebung ... 51
4.2.8 PRODIA-Module ... 52
4.2.8.1 Übersicht . ... 52
4.2.8.2 Das Frame-Modul 53
4.2.8.3 Das Window-Modul... 53
4.2.8.4 Das Event-Modul ... 53
4.2.8.5 Das Graphik-Frame-Modul ...54
4.2.8.6 Das Text-Frame-Modul ... 56
4.2.9 Dialog ... 57
4.2.9.1 Allgemeines ... 57
4.2.9.2 Masken und Menüs, MM-Elemente ... 58
4.2.9.3 Der Dialogablauf... 61
Elsmentaktivierung, MM-Schema 61; Meta-Dialog65 4.2.9.4 Die PROSVT-Dialogbeschreibungssprache PDL ... 65
4.2.9.5 Kausale Dialog-Struktur: Die Auswahl-Algebra ... . 66
4.3 Projekt-Advisor ... ... 69
4.3.1 Rechnerunterstützte Projektdurchführung ... 69
4.3.2 Projektbezogene Rechnerunterstützung am Beispiel ...72
der Entwicklungsumgebung EPOS 4.3.3 Projektbezogene Beratung durch wissensbasierte Werkzeuge . . 74
4.3.4 Projektübergreifende Rechnerunterstützung durch ... 76
Wiederverwendung 4.3.5 Aufbau des Projekt-Advisors ... 80
4.3.6 Die Wissensrepräsentationssprache PATHOS ... . 82
Inhaltsverzeichnis XI
4.3.7 Die Suchbeschreibungssprache PROSA ...83
4.4 Ablaufsysteme / Zielsysteme...86
5. Werkzeuge... 89
5.1 Werkzeuglinie SARS-IGS-VICO-PEARL... ...91
5.1.1 SARS, ein Werkzeug zur Anforderungsspezifikation ...94
5.1.1.1 Das Modell von SARS... 95
5.1.1.2 Spezifikationssprache LARS...96
5.1.1.3 Werkzeuge von SARS ... 98
5.1.1.4 SARTRE: Anschluß an Folgewerkzeuge ...99
5.1.2 IGS, ein interaktives, graphisches Werkzeugsystem ... 101
zur Modellierung und Bewertung technischer Systeme 5.1.2.1 Die Entwurfsphilosophie ... 102
5.1.2.2 Der graphische Entwurf mit/GS...104
5.1.2.3 Integrierte/GS-Werkzeuge ... 108
DISKOS, ein Simulator für kontinuierliche Systeme 108; DISMOS,ein Simulator fürdiskrete,modulare Systeme 109; VATSY,einProgramm zur Verfügbarkeitsanalyse technischer Systeme 113 5.1.3 VICO zur Entwicklung und Verwaltung komplexer ... .116
Programmsysteme 5.1.3.1 Aufgabenstellung ... .116
5.1.3.2 Lösungsansatz ... 117
5.1.3.3 Systemstruktur...118
5.1.3.4 Typisierung... 119
5.1.3.5 Schnittstellenkontrolle ... 120
5.1.3.6 Versions- und Konfigurationskontrolle ... 122
5.1.3.7 Kommandos ... 125
5.1.3.8 Verfügbarkeit... 125
5.1.4 PEARL-Umsetzer für SARS-Anforderungsspezifikationen . . . . . 126
5.1.4.1 Die Transformation... ... ... . 128
Guard 128; Interfaces 129 5.1.4.3 Netze... 131
5.1.5 Integration innerhalb der Werkzeuglinie SARS-IGS-VICO-PEARL . 134 und Integration in das Rahmensystem 5.1.5.1 SARS-IGS(DISMOS)-Verbund ... 136
5.1.5.2 SARS-VICO-PEARL-Verbund ... . . 139
XII Inhaltsverzeichnis
5.1.5.3 Rahmenintegration ...141
SARS-/GS-Entwurfsdatenbank141; Die SARS-Datenhaltung 142; Die V/CO-Datenbank143; Werkzeugsynchronisation und Konsistenz sicherung 145 5.1.5.4 Demonstrationsbeispiel "Automatisierung der... 146
Lackierhalle einer Automobilfabrik” 5.2 Werkzeuglinie EPOS-PRODOS-CAT-PRISE/PDAS...154
5.2.1 EPOS ...159
5.2.1.1 Zugrundeliegende Eigenschaften von EPOS ...159
5.5.1.2 Der Spezifikationstransformator ... 167
Übersicht 167; Requirement- und Lexikonspezifikation in EPOS-R, Informationsobjektein EPOS-R.168; Systemspezifikationin EPOS-S 169; Projektspezifikationssprache EPOS-P171 5.2.1.3 Der Programmtransformator für PRODOS...171
5.2.2 Das Programmier- und Dokumentationssystem PRODOS . . . .173
5.2.2.1 Aufgabenstellung ...173
5.2.2.2 Beschreibung des Werkzeugs PRODOS ...175
Konfiguration von Steuerungssystemen175; Überblick überdas Konfigurationssystem 176; Beschreibung derProzeßsignaltypen 178; Beschreibung derProzeßsignalkarten 178; Beschreibung derAuto matisierungseinheiten bzw. -gerate 179; Aufbau,Konsistenzund Pflege des Datenbestandes für eine Automatisierungsfamilie 180; DerAlgorithmus für die Konfiguration eines Systems 181; Implemen tierung mittels einer PROLOG-Erweiterung 181; Das PRODOS- Programmiersystem 182; Struktur 182; Die Steuerungssprache S 184; Das PRODOS-Laufzeitsystem 185;Die SteuerungsspracheS* 188; GraphischeEditoren 190; DieWerkzeugintegrationzwischen EPOS und PRODOS192; Spezielle Hinweise zur Spezifikationin EPOS-S für einen S*-Übergang 194; Die PRODOS-Systemumgebung 195; Der Werkzeugverwalter 195; Der Symboleditor 200; Die Graphik schnittstelle 201 5.2.3 CAT - Computer Aided Design for Technical Systems ... 202
5.2.3.1 Einführung ... 202
Entwickungsgeschichte 202; AufgabendesWerkzeugs CAT in PROSYT203 5.2.3.2 Präsentation des Werkzeugs CAT ...204
Einsatzprofildes Werkzeugs CAT204; Definition der Zielgruppe(n) 204; Unterstützungsart205; CAT-Leistungsmerkmale207;Struktur des WerkzeugsCAT208; Gesamtsystem208; Teilsysteme 208; Schnitt stellen 209; CAT-Datenhaltung 211 5.2.3.3 Einbindung von CAT in die PROSYT-Umgebung... .213
CAT-EPOS 213; CAT-PRODAT215 5.2.3.4 Erfahrungen mit CAT im "inhouse-Einsatz" ...215
5.2.3.5 Ausblick ...216
5.2.4 PRISE/PDAS... ... ... 217
5.2.4.1 Strukturierte Projektierung ... 217
Inhaltsverzeichnis XIII
5.2.4.2 Ablauforganisation von Projekten...220
5.2.4.3 Nutzung von Rahmenfunktionen ... 221
5.2.4.4 PRISE/PDAS im Werkzeugverbund ... 223
Toollandschaft für AnlagenengineeringbeiABB 223; Einordnung innerhalb der EPOS-Linie 227; Erstellung von EPOS-Spezifika- tionen 228; Schnittstellenbeschreibung EPOS-PRISE/PDAS 229 5.2.4.5 PR/SE/PDAS-Erweiterung im FROSYT-Rahmen... 231
Grundkonzeption der Rezeptursteuerung 231; Rezepturverwaltung 233; Übersicht 233; Rezepturbearbeitung 234, Erstellen eines Rezept kopfs235; Reihenfolge der Teilanlagen festlegen 236; Teilrezept bearbeiten 236; Teilanlagendefinition 242; Grundoperationsdefinition 242; Grundoperationen mitProzeßschnittstelle243; Grundoperationen ohne Prozeßschnittstelle243; Rezepturbedienung und-beobachtung 243; Grundoperationen 243; Teilanlagen 244 5.3 Die Werkzeuglinie PASQUALE und PRODOS ... . . 245
5.3.1 PASQUALE ...246
5.3.1.1 Das PASQL/AiE-Produktmodell ... 246
5.3.1.2 Sprachbeschreibung ... 250
Konstanten, Typen, Variable undAusdrücke251;Anweisungen 252; Unterprogramme 253; Hauptprogramme 254; Module254; Prozesse 255; Systeme 257 5.3.1.3 Werkzeuge... 258
Das PASQUALE-Werkzeug 258; SIMPAR 260; Überblick über das Simulationsprogramm261; Generierung von Modula-Programmenaus PASOUAiE-Beschreibungen 262;PARPROC263 5.3.1.4 Testmethoden und Testhilfsmittel... .264
Testaktivitäten264;Testverfahren 265, Eine "optimale" Test strategie 266; Anforderungen an ein Testsystem 267; Konzept eines Testsystems 268; Prototyp 269 5.3.2 Integration ...269
5.3.2.1 Datenhaltung und Benutzeroberfläche ...269
5.3.2.2 PASQUALE-PRODOS ... 274
6. Anwendungsspezifische Beispiele für den Projekt-Advlsor . . . .275
6.1 Anwendungsspezifische Beispiele auf dem Gebiet der... 279
Prozeßleitsysteme 6.1.1 Einführung ...279
6.1.2 Wissensbasierte Behandlung von Prozeßleitsystemen ... 280
6.1.2.1 Berücksichtigung des Anwendungsgebiets . ... 281
6.1.2.2 Berücksichtigung von Prozeß und Anlage ... 281
6.1.2.3 Berücksichtigung der Aufgabenstellungen ... .283
6.1.2.4 Berücksichtigung von Anforderungen ...284
6.1.3 Suche und Wiederverwendung früherer Regelalgorithmen . . . .285
XIV Inhaltsverzeichnis
6.1.3.1 Verarbeitung der Wurzeln einer Regelstrecke ...286
6.1.3.2 Ermittlung eines Regelalgorithmus für eine...286
vorgegebene Regelstrecke 6.1.3.3 Prüfung der Ähnlichkeit von Regelalgorithmen ... 289
6.1.3.4 Anpassung der Parameter des Regelalgorithmus...292
6.1.4 Zusammenfassung . ... 293
6.2 Optimierung von Kraftfahrzeugmikrocomputersteuerungen .... 294
6.2.1 Zielsetzung... 294
6.2.2 Anwendungsgebiet: Kfz-Mikrocomputersteuerungen...294
6.2.2.1 Aufgabe und Ablauf der Applikation ... .295
6.2.2.2 Randbedingungen für die Pilotanwendung...296
6.2.3 Werkzeuge zur wissensbasierten Programmierung... 297
6.2.3.1 Spezielle Anforderungen für die Wissensdarstellung ... 297
6.2.3.2 Hilfsmittel zur Analyse von Wissensbasen ...300
6.2.3.3 Die Problematik der Systemintegration ... 301
Systemtechnische Randbedingungen301;SinnvolleAufgaben verteilung 302 6.2.3.4 Erkenntnisse aus der Implementierung der PC-Shell... 303
6.2.3.5 Abschließende Bewertung von PATHOS . ...304
6.2.4 Pilotanwendung... 305
6.2.4.1 Meilensteine in der Entwicklung des Beratungssystems...305
6.2.4.2 Ausgewählte Probleme der Wissensdarstellung ...307
Vorzüge von "Tiefenwissen" 307;Präzisierung der Einstell empfehlungen 308; Verwendung vonWissen aus vergangenen Einstellschritten 309 6.2.4.3 Vorgehensweise beim Wissenserwerb ... 309
6.2.5 Zusammenfassung ...310
6.3 Aufwandschätzung von Software-Projekten mit Hilfe des... 312
Projekt-Advisors 6.3.1 Einleitung .... 312
6.3.2 Anwendungsgebiet ... 312
6.3.3 Projekt-Advisor ... 313
6.3.4 Konzept ...315
6.3.5 Ergebnisse... 316
6.3.6 Erfahrungen und Ausblick... 322
6.4 Rechnerunterstützte Angebotserstellung - 324
Pilotanwendungen des Projekt-Advisors 6.4.1 Einleitung . ... 324
Inhaltsverzeichnis XV
6.4.2 Das Angebotsinformationssystem ... 325
6.4.3 Ein Expertensystem zur Risikoanalyse... 326
6.4.4 Das Textkonfigurationssystem ...327
6.4.5 Zusammenfassung und abschließende Bewertung... 329
6.5 Wissensbasierte Unterstützung für die Planung und... 330
Entwickung von Einsatzleitsystemen, ein gangbarer Weg? 6.5.1 Problemdarstellung ...330
6.5.2 Problemanalyse und Darstellung der Defizite ...332
6.5.3 Zielvorstellungen zur Entwicklung eines Projekt-Advisors ... 336
6.5.4 Neue Technologien zur Lösung der Probleme ...338
6.5.4.1 Lösungskonzept... 338
6.5.4.2 Recherchen nach Dokumenten mit herkömmlichen Verfahren . . . 341
6.5.4.3 Recherchen nach Dokumenten mit wissensbasierten Verfahren . . 342
6.5.4.4 Beratung für Projektdurchführung ... 343
6.5.5 Zusammenfassung / Ausblick ...344
6.6 Wissensbasierte Anwendungsunsterstützung für die... 346
Softwareproduktionsumgebung EPOS 6.6.1 Einleitung... 346
6.6.2 Wissensbasierte Konfigurierung und Anwendung einer ... 347
CASE-Umgebung 6.6.3 Wissensbasierter Methodenberater ...352
7. Portierungen / Verwertungen ...355
7.1 Portierung von PRODAT auf VAX/VA4S... 356
7.2 Portierung des Projekt-Advisors auf CADMUS... 360
7.3 Portierung auf Rechner von KAE ... 362
7.3.1 Zusammenfassung ... 362
7.3.2 Zielsetzung...362
7.3.3 L/W/X//WOS-Betriebssystemübergang ...364
7.3.3.1 Ziel... 364
7.3.3.2 Konzept ... 364
Ausgangspunkt 364; Prototyping/Analyse 365; Definition 367 7.3.3.3 Realisierung ...368
Booting 368; Hardware-Bootstrap 368; Autoload 369; Start Up 370;
Systemübergang 371; Transportsystem 371; Speicherkopplung 371;
Buffered Pipe Protocol372; Realisierung 373; Character-Trei- ber 373; Streams 374; Queues375; Kommunikationsaufbau 377;
Anwendungen378; Tools378; TransparentesTerminal 379; File- Transport-Service 380; Resource-Sharing380; Disk-Server für MOS 381; File-System-Switch 381; Programm-Kommunikation382
XVI Inhaltsverzeichnis
7.3.3.4 Weiterentwicklungen ... 383
7.3.4 Dialogschnittstelle PRODIA...383
7.3.4.1 Ziel... 383
7.3.4.2 Randbedingungen...384
7.3.4.3 Realisierung ... 384
Tandberg Terminal TDV2400384; KAE-Graphik 384; Aufbau der Graphik-Schnittstelle385; Terminalemulation 386; Menüs 386; GKS 386; Frames 386; GKS-Treiber 387; Window-Manager387; Structure-Manager 388; Input-Handler 388; Output-Handler 388; KAE-Graphik mit X-Window und GKS 388; PRODIA 389 7.3.5 Datenhalteschnittstelle PRODAT ...389
7.3.5.1 Zielsetzung... 389
7.3.5.2 Entwurfskriterien . ...389
7.3.5.3 PRODAT-Benulzer ... 390
7.3.5.4 Verteilte PRODAT-Architektur ...390
7.3.5.5 PRODAT-Systemarchitektur ... 391
PRODAT-Storage-Subsystem392;Transaction-Management 392; Authorization-Control392; PRODAT-Basic-Layer392; PRODAT- Upper-Layer 393; PRODAT393 7.3.5.6 PRODAT-Spezifikation ... 393
7.3.5.7 Multi-Storage-File-System ... 393
7.3.5.8 Abfragesprache ...394
7.3.5.9 Implementierung ... 394
C-ISAM 395; PRODAT-Directories 395; Datenschutz 395; Diagnostic Log 395; Access-Mode 395; Wartestrategie 396; Semaphore 396; Objektbezogener Zugriffsschutz 396 7.3.5.10 Testhilfen... ... . 396
7.3.5.11 Abweichungen ... .397
7.3.5.12 Beschränkungen ... 398
7.3.5.13 Nicht (vollständig) realisiert ...398
7.5.3.14 Referenzen... . .398
7.3.6 Verteilte Systeme (LAN) ... 399
7.3.6.1 Ziel... 399
7.3.6.2 Randbedingungen... 399
7.3.6.3 Realisierung ... 400
HDLC und Queuing-System 400;PROSYT-Netzwerk-Koppelmodul (PRONET)401; PROSYT-Queuing-System 402; EthernetundTCP/IP 402 7.3.7 Prototyperprobung und Einsatz . ... 403
7.3.7.1 Ziel . ... 403
7.3.7.2 Validierung Rahmensystem... 403
Inhaltsverzeichnis XVII 7.3.7.3 EPOS ... 403 7.3.7.4 Softwareproduktion mit PROSYT...404 8. Literaturverzeichnis ...405