-
-
Hilfsgerät zur Steuerprogrammentwicklung für komplexe
-
Anlagen, insbesondere für ein Fernsprech-VermlillunGssystem.
-
Die Erfindung betrifft die Verbesserung eines speziellen, Hilfsgerät
genannten Rechners für spezielle Zwecke.
-
Sie wurde für die Weiterentwicklung eines EWSD genannten rechnergesteuerten
Fernsprech-Vermittlungs systems entwickelt. Die Erfindung eigenet sich aber darüberhinaus
auch für die Entwicklung anderer rechnergesteuer ter Systeme bzw Anlagen.
-
Die Erfindung geht aus von dem bekannten, auch im Oberbegriff des
Patentanspruchs 1 genannten Hilfsgerät zur Entwicklung eines Steuerprogrammes, das
seinerseits für die Steuerung einer komplexen rechr.ergesteuerien Anlage oSenen
soll, mit - einem Arbeits-Speicher, zur -- Speicherung von, evtl. auch Verzweigungen
auslösen den, Verirnüpfungsbefehlen zur Verknüpfung von einerseits fingierten codierten
Meldungen (z.B. über ein--tretende 4nnagezustandsdetail-Anderungerl als fingierte
IST-Anderungs-Werte), mit andererseits jeweils vom Hilfsgerätbediener im Rahmen
der Steuerprogrammentwi cklung festzulegenden Verknüpfungsdaten (z.B. fingierte
zugehörige weitere IST-Werte der Anlage und/oder zugehörige SOLL-Werte), -- Speicherung
von zu diesen Verknüpfungen gehörenden und/oder von dazu gehörenden speziellen Steuerbefehlen,
die später die Anlage steuern und die, falls ein zusätzlicher Zustands-Speicher,
der eine Liste fingierter IST-Zustanddetails der Anlage speichert, angebracht ist,
im Falle eines vorläufigen Simulationsbetriebes
den Inhalt des
Zustands-Speichers beeinflussen, und -- späteren Eingabe dieser Codefolgen, die
jeweils die zusammengehörenden Meldungen, Verknüpfungsbefehle und Verknüpfungsergebnisse
und evtl. noch Steuerbefehle enthalten, in einen Steuerprogramm-Speicher des Rechners
der Anlage, und zwar bei Bedarf nach einer zwischen der Steuerprogrammentwicklung
und dieser, späteren Eingabe liegenden Übersetzung dieser Codefolgen in die (Maschinen)Sprache
des Rechners der Anlage, - einer Eingabeeinheit zur Eingabe von codierten und uncodierten
Wörtern in den und/oder in die Speicher und/oder in diesen vorgeschaltete Register,
und - einem Programm-Speicher zur Speicherung von Hilfsgerätprogrammfolgen, die
das Hilfsgerät steuern und die bei Bedarf zusätzlich die über die Eingabeeinheit
eingegebenen Codes auf formale Richtigkeit, nämlich auf die Konsistenz der eingegebenen
Codes, prüfen.
-
Ein solches Hilfsgerät ist bereits durch ISS, Paris 1979, 1173 bis
1179 bekannt. Auch dieses bekannte Hilfsgerät dient zur Entwicklung eines Steuerprogrammes
eines rechnergesteuerten Fernsprech-Vermittlungssystems. In seinen Arbeits-Speicher
werden fingierte Meldungen und Verknüpfungsbefehle zur Verknüpfung, die evtl. auch
Verzweigungen auslösen, gespeichert. Die fingierten, in der höheren Programmiersprache
CDL codierten Meldungen betreffen, wenigstens teilsweise, eintretende Anlagezustandsdetail-Änderungen.
Die damit verknüpften Verknüpfungsdaten betreffen, wenigstens teilweise, fingierte
zugehörige weitere IST-Werte des Fernsprech-Vermittlungssystems. Die ebenfalls zunächst
im Arbeits-Speicher gespeicherten, zu diesen Verknüpfungen gehörenden Verknüpfungsergebnisse
und die zu eventuellen anschließenden Verknüpfungs-Verzweigungen gehörenden
speziellen
Steuerbefehle. sollen später das Fernsprech-Vermittlungssystem steuern, wozu allerding
erst noch eine Übersetzung des entwickelten Steuerprogrammes mittels eines Compilers
bzw. Assemblers nötig ist.
-
Falls übrigens ein zusätzlicher Zustands-Speicher, der eine Liste
fingierter IST-Zustanddetails des Fernsprech-Vermittlungssystems sp#ichert,angebracht
ist, kann das entwickelte Steuerprogramm einen vorläufigen Simulationsbetrieb durchführen,
indem es laufend den Inhalt des Zustands-Speichers beeinflußt und selbst bei den
Verknüpfungen von diesem Inhalt beeinflußt wird.
-
- Ein solcher Simulationsbetrieb ist zwar in der Druckschrift nicht
beschrieben, aber für den Fernsprech-Fachmann naheliegend.
-
Zur späteren Eingabe der Codefolgen des entwickelten Steuerprogrammes,
die jeweils aus zusammengehörenden Meldungen, Verknüpfungsbefehlen und Verknüpfungsergebnissen
und wenigstens teilweise noch Steuerbefehlen bestehen, in einen Steuerprogramm-Speicher
des Rechners des rechnergesteuerten Fernsprech-Vermittlungssystems werden dort also
die in derCDL-Sprache geschriebenen Codefolgen erst noch in die Maschinensprache
des Rechners des Fernsprech-Vermittlungssystems übersetzt.
-
Das bekannte Hilfsgerät enthält, wie nach den vorstehenden Erläuterungen
selbstverständlich ist, eine Eingabeeinheit zur Eingabe der codierten und uncodierten
Wörter in den bzw. in die Speicher und/oder in diesen Speichern vorgeschaltete Register.
-
Außerdem enthält das bekannte Hilfsgerät einen Programm-Speicher zur
Speicherung von das Hilfsgerät selber steuernden Programmfolgen. Diese Programmfolgen,
oder; wie nicht ganz eindeutig beschrieben ist, das zugehörende Compiler-Programm
prüft die über die Eingabe-
einheit in CDL-Sprache eingegebenen
Codes auf formale Richtigkeit, nämlich die Konsistenz der eingegebenen Codes, und
später, eindeutig mittels des Compiler-Programms, auch noch die Syntax der Codefolgen
des Steuerprogramms. Die Verwendung einer speziellen höheren Programmiersprache,
nämlich vor allen der CDL-Sprache, gestattet dort, die "Konfusionen hervorrufenden
Scharen von mnemotechnischen Kürzeln" zu vermeiden. Der Hilfsgerätbediener muß also
zur Steuerprogrammentwicklung nur jene CDL-Programmiersprache beherrschen. Erst
später hat ein Fachmann, der für sich nicht mehr viel von der Technik der zu steuernden
Anlage, d.h. des Fernsprech-Vermittlungssystems, selbst zu verstehen braucht, ein
Compiler-Programm, das die CDL-Sprache in die Maschinensprache der Anlage zu übersetzen
gestattet, zur Verfügung zu stellen.
-
Dieses bekannte Hilfsgerät ermöglicht gegenüber einer nur Papier,
Bleistift und Radiergummi verwendenden Steuerprogramm-Entwicklungsmethode bereits
den auch bei der Erfindung gegebenen Vorteil, daß - es gestattet, relativ leicht
ein Steuerprogramm für eine so komplexe Anlage, wie es ein rechnergesteuertes Vermittlungssystem
ist, durch einen Fachmann, bzw.
-
durch eine Gruppe von in zeitlich paralleler Weise an verschiedenen
Codefolgen desselben Steuerprogramms mittels desselben Hilfsgeräts jeweils über
eigene Eingabeeinheiten entwickelnden. Fachleuten, entwickeln lassen zu können;
- das Steuerprogramm nach und nach so gründlich auf formale Fehler, nämlich z.B.
aif Inkonsistenz der Codes und, jedenfalls später, auch auf deren Syntaxfehler,
getestet wird, so daß im Zuge der Entwicklung nach und nach ein immer mehr zufriedenstellendes
Steuerprogramm entstehen kann;
- das entwickelte Steuerprogramm
in jedem Statium seiner Entwicklung sofort und vollständig vom Hilfsgerät über einen
Drucker ausdruckbar ist, wodurch die sonst recht lästige Dokumentation stets vollständig
und auf neuestem Stand zur Verfügung gestellt werden kann; wegen der Möglichkeit,
zusätzlich ein entsprechendes Compiler-Programm einzugeben, kann diese Dokumentation
sogar auch in anderen Sprachen(als in CDL)ausgedruckt werden; und - das entwickelte
Steuerprogramm bei Bedarf nachträglich mittels des Hilfsgeräts noch erweiterbar
ist, und auch kürzbar, also an die Bedürfnisse, insbesondere von verschieden großen
Anlagen, z.B. Fernsprech-Vermittlungssystemen, anpaßbar ist.
-
Das bekannte Hilfsgerät bietet also dem Fachmann bereits einen hohen
Komfort bei der Entwicklung des Steuerprogrammes, besonders weil seine Frogrammierkenntnisse
in überschaubaren Grenzen bleiben. Beim bekannten Hilfsgerät ist nämlich zusätzlich
auch der beachtliche Vorteil gegeben, daß - der betreffende Fachmann, oder die genannte
Gruppe von Fachleuten, relativ wenige Programmier-Kenntnisse, zusätzlich zu ihrem
speziellen technischen Wissen über die zu steuernde Anlage, haben müssen; es genügt
nämlich, jene höhere Programmiersprache, dort bevorzugt CDL, sicher zu beherrschen;
das zugehörige zusätzliche Compiler-Programm bzw. Assembler-Programm kann vergleichsweise
einfach zur Verfügung gestellt werden.
-
Die Erfindung entwickelt dieses bekannte Hilfsgerät so weiter, daß
der Komfort bei der Entwicklung des Steuerprogramms weiter gesteigert ist. Die Erfindung
ermöglicht nämlich die zusätzlichen Vorteile, daß
der betreffende
Fachmann, oder die genannte Gruppe von Fachleuten, nahezu überhaupt keine Programmier-Kenntnisse
mehr, zusätzlich zu ihrem speziellen technischen Wissen über die zu steuernde Anlage,
haben müssen; sie brauchen keine der bekannten Programmiersprachen zu beherrschen,
um ein vollständiges Steuerprogramm zu entwickeln; das entwickelte Steuerprogramm
soll nämlich vom Hilfsgerätbediener in einer von ihm selbst gestaltbaren Programmiersprache,
die dann seinen jeweiligen speziellen Bedürfnis entsprechend gestaltet werden kann,
entwickelbar sein; trotz der frei gestaltbaren Wörter der Programmiersprache die
Erstellung und die besondere Handhabung eines Lexikons unkompliziert und das Gedächtnis
des Hilfsgerätbedieners bei der Kontrolle der von ihm verwendeten, gestalteten Wörter,
d.h. Codes, weitgehend entlastet ist; die schließlich verwendete Programmiersprache
bei Bedarf auch erst nach und nach gestaltet werden kann, also nicht von vorne herein
bindend vollständig gestaltet sein muß; das zu der gestalteten Programmiersprache
gehörende Compiler-Programm und/oder Assembler-Programm erst nach Prüfung des vollständig
entwickelten Steuerprogrammes auf Richtigkeit und Vollständigkeit benötigt wird,
um das fertig entwickelte Steuerprogramm in eine der bisher bekannten Programmiersprachen
oder in die Maschinensprache zu übersetzen; und dieses Compiler-Programm und Assembler-Programm
besonders leicht zur Verfügung zu stellen ist, weil es nicht direkt die frei gestaltete
Programmiersprache, sondern nur eine der bisher schon bekannten Programmiersprachen,
oder Alltagssprachen wie Englisch oder Deutsch, übersetzen muß um zusätzlich die
Übersetzung der frei gestalteten Programmiersprache mit diesem dafür scheinbar ungeeigne-
ten
Compiler-Programm oder Assembler-Programm erreichen zu können.
-
Zur Ermöglichung dieser Vorteile der Erfindung wird das im Oberbegriff
des Patentanspruchs 1 genannte bekannte Hilfsgerät dadurch weiterentwickelt, daß
- die vom Hilfsgerätebediener in den Arbeits-Speicher einzugebenden Codes in einer
vom Hilfsgerätbediener jeweils, auch spontan, frei gestaltbaren Programmiersprache
eingegeben werden können, indem -- ein Lexikon-Speicher angebracht ist, zur Speicherung
einerseits der sprachlich frei gestalteten Codes, die vom Hilfsgerätbediener über
die Eingabeeinheit insbesondere in den Zustand-Speicher und/oder in den Arbeits-Speicher
eingegeben werden, und andererseits von dazu jeweils korrelierenden Übersetzungen
in Wörter einer der bisher üblichen sonstigen Sprachen, z.B. in Wörter einer für
sich bekannten höheren Programmiersprache wie CHILL und/oder z.B. in Wörter einer
alltäglichen Sprache (deutsch, englisch) des Fachmanns, und -- der Programm-Speicher
jeweils für den.soeBen vom Hilfsgerätbediener eingegebenen Code sofort vor der nächsten
Eingabe solcher Codes eine Prüfung mit Ergebnisanzeige auslöst, ob im Lexikon-Speicher
die Übersetzung des soeben eingegebenen Code, z.B. "Code IABC heißt: die Nummer
eines gerufenen Teilnehmers wurde eingegeben", bereits enthalten ist, wobei der
Programm-Speicher bevorzugt jeweils die Anzeige der bisher eingegebenen UDersetzung,
z.B. auf einem Bildschirm, als Anzeige eines positiven Ergebnisses dieser Prüfung
auslöst.
-
Die in den Unteransprüchen genannten Maßnahmen ermöglich weitere Vorteile;es
ermöglicht nämlich die Maßnahme nach Patentanspruch 2, einerseits einen Simulationsbetrieb
des Steuerprpgrammes zur Erprobung des Steuerprogrammes mittels fingierter, vom
Steuerprogramm steuerbarer Anlagezustandsdetails, auch ohne vorherige Übersetzung
mittels des Compiler-Programms oder Assembler-Programmes, durchzuführen sowie andererseits
bei Bedarf die Entwicklung und Simulationsprüfung auch solcher Steuerprogramme zu
gestatten, die ihrerseits zur Steuerung von rechnergesteuerten Anlagen dienen, deren
Rechner nicht nur die Anlage, sondern auch den Inhalt eines zusätzlichen Abbildspeichers
steuert, wobei der Abbildspeicher ein Abbild der verschiedenen, im Anlagenbetrieb
jeweils vorhandenen Anlagezustände speichert; 3, die formale selbsttätige Prüfung
der Vollständigkeit der zu variablen Anlagen-Zustandsdetails gehörenden, bisher
in das Steuerprogramm eingegebene Meldungen
und/oder Verknüpfungsbefehle
sofort bei der Eingabe von Anlage-Zustandsdetails sicherzustellen, also insofern
sofort eine selbsttätige Prüfung der Syntax zu gestatten; 4, die formale selbsttätige
Prüfung der Vollständigkeit der zu Verknüpfungsergebnissen und/oder Steuerbefehlen
gehörenden,bisher in das Steuerprogramm eingegebenen variablen Anlagezustandsdetails
sofort bei der Eingabe eines Verknüpfungsergebmisses oder Steuerbefehls sicherzustellen,
also insofern sofort eine selbsttätige Prüfung der Syntax zu gestatten; 5, die formale
selbsttätige Prüfung der Vollständigkeit der zu Meldungen und/oder Verknüpfungsbefehlen
bzw. Verknüpfungsdaten gehörenden, bisher in das Steuerprogramm eingegebenen Verknüpfungsergebnisse
und/oder Steuerbefehle sofort bei der Eingabe einer Meldung oder Verknüpfungsbefehlen
sicherzustellen, also insofern sofort eine selbsttätge Prüfung der Syntax zu gestatten;
6, rasch alle bisher in das Steuerprogramm eingegebenen Codes bzw Wörter auf evtl.
nötige Anderungen zu prüfen, sobald ein Code bzw. Wort des Steuerprogrammes im Zuge
der Entwicklung des Steuerprogrammes, z.B. im Lexikon-Speicher, nachträglich geändert,
z.B. durch Differenzierung der zugehörigen Begriffe in mehrere speziellere Codes
unterteilt, wird,also insofern eine selbsttätige Prüfung der Konsistenz zu gestatten;
7, in leichter Weise Wörter in das Hilfsgerät einzugeben, bisher eingegebene Wörter
zu lesen sowie den Hilfsgerätbediener den derzeitigen Stand der zur Weiterentwicklung
des Steuerprogrammes anstehenden Steuerprogrammstelle anzuzeigen;
8,
die Dauer für das Aufsuchen von Codes im bisher eingegebenen Steuerprogramm zu verkürzen
und insbesondere eine rasche formale Prüfung der Syntax zu gestatten; 9, ebenfalls
die Dauer für das Aufsuchen von Codes im bisher eingegebeen Steuerprogramm zu verkürzen
und insbesondere eine rasche formale Prüfung der Syntax zu gestatten; 10, fehlerhafte
bzw. unvollständige Eingaben leicht als solche zu erkennen und dann zu ändern; 11,
ein Steuerprogramm für eine durch mehrere Rechner gesteuerte Anlage zu entwickeln,
wobei in für sich bekannter Weise mindestens einer der Rechner ein zentraler Rechner,
und die anderen Rechner peripher angebrachte, wenigstens teilweise Vorverarbeitungen
durchführende Rechner der Anlage sind; 12, eines oder mehrere ausdruckbare und bei
Bedarf auch auf einem Bildschirm anzeigbare Lexikas über die verwendeten,frei gestaltbaren
Codes und/oder deren Übersetzungen in eine der anderen bereits bekannten Sprachen,
z.B. für eine Dokumentation, zu erstellen; 13, die Anzeige, z.B. Bilaschirmanzeige,
und den Ausdruck des Lexikons oder der Lexika zu formalisieren und damit die Benutzung
der verwendeten bzw der frei gestalteten Codes weiter zu erleichtern; 14, die Darstellung
des Steuerprogrammes in bestimmter Weise zu formalisieren und damit die Übersicht
über das bisher entwickelte Steuerprogramm weiter zu erleichtern; 15 und 16, das
entwickelte Steuerprogramm in eine der sonstigen bekannten Sprachen, nämlich Programmiersprachen
oder Maschinensprachen, zu übersetzen und auch Rückübersetzungen in die frei gestaltete
Programmiersprache zu gestatten; sowie
17, das entwickelte Steuerprogramm
zur Steuerung eines Nachrichten-Vermittlungssystems zu verwenden.
-
Die Beschreibung der Erfindung und der Weiterbildungen derselben wird
nun anhand von in den Figuren gezeigten Ausführungsbeispielen weiter ergänzt. Dabei
zeigt Figur 1 ein für sich bekanntes Schema der später zu steuernden Anlage, hier
eines rechnergesteuerten Fernsprech-Vermittlungs systems, 2 schematisch ein Beispiel
der Erfindung, 3 ein weiteres, für sich bekanntes Beispiel der später zu steuernden
Anlage, hier eines für sich bekannten Fernsprech-Vermittlungssystems mit mindestens
einem zentralen Rechner und mit einer Vielzahl von peripheren Rechnern, 4 Beispiele
für Formate und für Kennziffern der an sich frei gestaltbaren Codes, 5 Beispiele
für Unterprogrammbildungen in Zusammenha-ng mit den Verknüpfungsbefehlen, 6 ein
Beispiel für ein an einem Bildschirm anzeigbaren und/oder mittels Drucker ausdruckbaren
Formular mit Abschnitten eines soeben in Entwicklung befindlichen Steuerprogrammes,
7 ein Beispiel für ein andersartiges Formular mit Abschnitten eines soeben in Entwicklung
befindlichen Steuerprogrammes, 8 ein vereinfachtes Beispiel für das Schema der Aufeinanderfolge
von Eingaben in das Hilfsgerät, 9 bis 11 Beispiele für formularartig angezeigte
und/ oder ausgedruckte Eingaben in das Hilfsgerät, und 12 ein Beispiel für ein Protokoll
über den Dialog des Hilfsgerätbedi.eners mit dem Hilfsgerät.
-
Das in Fig. 1 gezeigte Anlagebeispiel stellt schematisch ein für sich
bekanntes rechnergesteuertes Fernsprech-Vermittlungssystem dar. Die wichtigsten
Teile dieser Anlage, nämlich das durch Koppelvielfache symbolisierte Koppelfeld
N einschließlich deren Überwachungs- und Steuereinheiten, sowie symbolisch die Teilnehmerstationen
sind gezeigt. Im Betrieb soll diese Anlage N vom Rechner CS mittels Verknüpfungsergebnissen
S und/oder mittels aus Verknüpfungsergebnissen gewonenen Steuerbefehlen S gesteuert
sein. Der Rechner CS weist dazu insbesondere einen Steuerprogramm-Speicher CM auf,
in welchem das die Anlage N bzw. dessen Rechner CS steuernde, mittels des in Fig.
1 nicht gezeigten Hilfsgerätes erst noch zu entwickelnde Steuerprogramm, z.B. übersetzt
unmittelbar in dia spezielle Maschinensprache des Rechners CS, gespeichert ist.
-
Bei diesem speziellen Beispiel des Rechners CS ist in für rechnergesteuerte
Fernsprech-Vermittlungssysteme bekannter Weise zusätzlich ein Abbild-Speicher NZ
angebracht, in welchem ein Abbild der einzelnen wichtigsten variablen Anlagezustandsdetails
C gespeichert ist.
-
Dieser Abbild-Speicher NM gestattet dem Rechner CS, besonders rasch
die von Anlage einrichtungen eintreffenden Meldungen M mit aktuellen, im Abbildspeicher
NM gespeicherten Verknüpfungsdaten C über relevante Anlagezustandsdetails zu verknüpfen.
Der Rechner CS braucht dann, bei seinem jeweiligen zur Steuerung der Anlage N nötigen
Verknüfungen von M mit C,nicht erst die Anlage N selbst zu prüfen, um die Verknüpfungsdaten
C zu ermitteln, sondern kann diese Verknüpfungsdaten C schneller seinem Abbild-Speicher
NM entnehmen. Es genügt, wenn der Rechner CS, oder eine sonstige Anlageneinheit,
in für sich bekannter Weise nur gelegentlich, bevorzugt in Betriebspausen, überprüft,
ob seine im Abbild-Speicher t'JN gespeicherten Verknüpfungsdaten C mit den wahren
Anlagezustandsdetails in der Anlage N übereinstimmen.
-
Die Fig. 2 zeigt nun ein erfindungsgemäßes Hilfsgerät CH/IU/PR zur
Entwicklung des Steuerprogrammes, das seinerseits später für die Steuerung der in
Fig. 1 gezeigten rechnergesteuerten Anlage N dienen soll. Dieses zu entwickelnde
Steuerprogramm soll später also im in Figur 1 gezeigten Steuerprogramm-Speicher
CM gespeichert werden. Das Hilfsgerät enthält einen Arbeits-Speicher AM zur Speicherung
von, evtl. auch Verzweigungen auslösenden Verknüpfungsbefehlen, die ihrerseits Meldungen
M mit Verknüpfungsdaten C mittels der Verknüpfungseinheit ALU - also einerseits
über die Tastatur TA der Eingabe einheit IU eingegebene fingierte codierte Meldungen
M, z.B. über eintretende Anlagezustandsdetail-Änderungen als fingiertes IST-Änderungs-Werte
M,mit andererseits ebenfalls bevorzugt über die Eingabeeinheit IU im Rahmen der
Steuerprogrammentwicklung eingegebenen, fingierten, also festzulegenden Verknüpfungsdaten
C, z.B. fingierte zugehörige weitere IST-Werte C der Anlage uncl/oer zugehörige
SOLL-Werte C - verknüpfen soll.
-
Der Arbeits-Speicher AM dient ferner zur Speicherung von zu diesen
Verknüpfungen eingegebenen Verknüpfungsergebnissen S und bei Bedarf auch von dazu
gehörenden speziellen Steuerbefehlen S, die später die Anlage N steuern sollen,
und dle,falls im Hilfsgerät CM ein zusätzlicher Zustands-Speicher SM, der eine Liste
fingierter IST-Zustanddetails C der Anlage N speichert, angebracht ist, im Falle
eines vorläufigen Simulationsbetriebes den Inhalt des Zustands-Speichers SM beeinflussen.
-
Die in den Arbeits-Speicher ÄM eingegebenen Codefolgen des Steuerprogrammes,
die jeweils die zusammengehörenden Meldungen, Verknüpfungsbefehle und Verknüpfungsergebnisse
und evtl. noch Steuerbefehle enthalten, werden später in den Steuerprogramm-Speicher
CM des Rech-
ners CS eingegeben, und zwar bei Bedarf nach einer,
zwischen der Steuerprogrammentwicklung und dieser späteren Eingabe in den Steuerprogramm-Speicher
AI liegenden Übersetzung dieser Codefolgen, z.B. in die Maschinensprache des Rechners
CS der Anlage N oder in eine Programmiersprache, die dieser Rechner CS selbst in
seine eigene Machinensprache übersetzen kann.
-
Das Hilfsgerät enthält ferner die bereits erwähnte Eingabeeinheit
IU zur Eingabe der codierten und der uncodierten Wörter, hier bevorzugt in die Speicher
AM, DM, SM und/oder in diesen Speichern jeweils zugeordnete, jeweils vorgeschalte
Register.
-
Das Hilfsgerät enthält außerdem einen evtl. verschiedene Abschnitte
mit eignen Programmschrittfolgen aufweisenden Programm-Speicher PM zur Speicherung
von Hilfsgerätprogrammfolgen, die das Hilfsgerät CM steuern.
-
Diese Hilfsgerätprogammfolgen können bei Bedarf zwar zusätzlich die
über die Eingabeeinheit IU eingegebenen Codes auf formale Richtigkeit,nämlich auf
die Konsistenz der eingegebenen Codes, prüfen, besonders falls dïese Codes schon
aufgrund des ursprünglichen Milfsgerätaufbaus einen gewissen Rahmen einhalten müssen,
z.B.
-
nur eine gewisse Anzahl von Stellen oder Bits enthalten dürfen. Solche
Prüfungen können allerdings bei der Erfindung auch durch Codes ausgelöst werden,
die, zumindest im wesentlichen, in einen der Schreib-Lese-Speicher, z.B. auch in
einen oder mehrere Abschnitte des Arbeits-Speichers ÄM, erst vom Hilfsgerätbediener
eingegeben wurden.
-
Der Hilfsgerätebediener kann die in den Arbeits-Speicher AM bei der
Steuerprogrammentwicklung über die Eingabeeinheit IU einzugebenden Codes in einer
vom Hilfsgerätbediener selbst jeweils, auch spontan, frei gestaltbaren, also bis
dahin nie gekannten, nie je
verwendeten, eigenen Programmier#sprache-
eingeben. Stattdessen kann aber der Hilfsgerätbediener nach seinem Belieben aber
auch, wenigstens -teilweise, Codes von bisher bereits bekannten Programmier-Sprachen,
wie CHILL und/oder FORTRAN und/oder -COB0L und/oder andere Sprachen eingeben. Hierzu
ist im eigentlichen Rechnerteil CH des Hilfsgeräts ein Lexikon-Speicher DM angebracht,
der einerseits die sprachlich frei gestaltbaren Codes, die vom Hilfsgerätbediener
über die Eingabeeinheit IU,insbesondere in den Zustand-Speicher SM und/oder in den
Arbeits-Speicher AM eingegeben werden, speichert und der anderseits die dazu jeweils
korrelierenden Übersetzungen in Wörter einer der bisher üblichen sonsigen Sprachen
speichert, z.B. also jeweils eine oder mehrere Übersetzungen in für sich bekannte
höhere Programmier-Sprachen wie CHILL und/oder z.B. in Wörter von alltäglichen Sprachen
wie deutsch und/oder englisch, speichert. Z.B. in der Spalte FC steht der gestaltbare
Code und in KL z.B. die englische Übersetzung.
-
Zur Entlastung der Aufmerksamkeit- und des-Gedächtnisses des Hilfsgerätbedieners,besonders
wegen der frei gestalteten Codes,löst der, in für diese Zwecke- für sich bekannter
Weise geladene, Programm-Speicher PM jeweils für den soeben vom Hilfsgerätbediener
eingegebenen Code sofort vor der nächstn Eingabe solcher Codes eine Prufung.aus
~-ob im Lexikon-Speicher DM die Übersetzung des soeben eingegebenen Code, z.B. Code
IABC heißt: die Nummer eines gerufenen Teilnehmers wurde eingegeben", bereits enthalten
ist. Außerdem löst-der Programm-Speicher PM bevorzugt jeweils die Anzeige der bisher
eingegebenen Ubersetzung, z.B. auf einem Bildschirm DI der Eingabeeinheit IU, aus,
um ein positives Ergebnis dies er Prüfung anzuzeigen - ein negatives Ergebnis kann
z.B. durch ein Blinken auf diesem Bildschirm DI
und/oder z.B. durch
einen selbsttätigen Wechsel der auf dem Bildschirm angezeigten Daten, z . B. durch
ein selbsttätiges Einblenden eines Auszugs aus dem Lexikon-Speicher-Inhalt, angezeigt
werden.
-
Dieses erfindungsgemäße Hilfsgerät ermöglicht, relativ leicht ein
Steuerprogramm für eine so komplexe Anlage, wie es ein rechnergesteuertes Vermittlungssystem
N ist, durch einen Fachmann entwicklen zu lassen, bzw. durch eine Gruppe von in
zeitlich paralleler Weise,z.B. verschiedene Codefolgen desselben Steuerprogramms
mittels desselben Hilfsgeräts CH/IU jeweils über eigene Eingabeeinheiten IU,eingegebenden
Fachleuten. Das Steuerprogramm kann während seiner Entwicklung gründlich auf formale
Fehler, nämlich vor allem auf Schreibfehler bzw. auf Konsistenz der verwendeten
Codes und der Übersetzungen davon ~überwacht werden, weil stets die bisher, z.B
in die Spalte KL,eingegebenen Übersetzungen der,z.B. in die Spalte FC,eingegebenen
frei gestalteten Codes selbsttätig ermittelt werden.
-
Dabei benötigt der betreffende Fachmanns oder die genannte Gruppe
von Fachleuten, zur Entwicklung des Steuerprogrammes nahezu überhaupt keine Programmierkenntnisse
mehr, zusätzlich zu ihrem speziellen technischen Wissen über die zu steuernde Anlage
N. Sie brauchen vor allem nicht mehr unbedingt eine der bekannten Programmiersprachen
sicher zu beherrschen, um ein vollständiges Steuerprogramm zu entwicklen. Das entwickelte
Steuerprogramm kann vom Hilfsgerätbediener auch in einer von ihm selbst frei gestaltbaren
Programmiersprache, die er dann sogar seinen jeweiligen speziellen Bedürfnis entsprechend
gestalten kann, entwickelt werden. Trotz der frei gestaltbaren Wörter der Programmiersprache
ist die Erstellung und die besondere Handhabung eines Lexikons unkompliziertqAuch
das Gedächtnis
des Hil;sgerätbedieners bei der Kontrolle der von
ihm verwendeten, gestalteten Wörter, d.h. Codes, ist weitgehend entlastet. Die schließlich
verwendete Programmiersprache kann überdies bei Bedarf von ihm auch erst nach und
nach gestaltet werden. Jene verwendete Programmiersprache muß also nicht von vorne
herein bindend vollständig gestaltet sein, was eine erhebliche Erleichterung im
Vergleich zu sonstigen Fällen ist, in denen ein Programm mittels eines Hilfsgeräts
in einer neuen Programmiersprache zu entwickeln ist.
-
Das fertig oder bisher nur bruchstückhaft entwickelte Steuerprogramm
ist bei Bedarf nachträglich mittels des Hilfsgeräts nach Belieben auch noch erweiterbar
und auch kürzbar, also an die Bedürfnisse insbesondere von verschieden großen Anlagen
N, z.B. an Fernsprech-Vermittlungs systeme mit verschiedenen Teilnehmeranschluß-Anzahlen,
anpaßbar.
-
Das entwickelte, zunächst im Arbeits-Speicher AM gespeicherte Steuerprogramm
ist in jedem Stadium seiner Entwicklung sofort und vollständig, z.B. über den in
Figur 2 gezeigten Drucker PR auf endlosen Papierbahnen DO, ausdruckbar, wodurch
diese Papierbahnen als sonst nur recht lästig herstellbare Dokumentation DO unschwer,
stets vollständig auf neuestem Stand, zur Verfügung gestellt werden.
-
Das Steuerprogramm wird zunächst in der frei gestaltbaren Programmiersprache,
die hier X genannt sei, entwickelt. Dabei sind im Lexikon-Speicher DM(in der Spalte
KL)übersetzungen der(in die Spalte FC)eingegebenen Wörter der X-Sprache in mindestens
eine der sonstigen Sprachen, die hier Y genannt seinen, enthalten. Daher kann das
Hilfsgerät das entwickelte Steuerprogramm nicht nur in der frei gestalteten X-Sprache,
sondern
auch übersetzt in die Y-Sprache, durch einen für sich bekannten
Austausch der im Steuerprogramm enthaltenen Codes mit den jeweils zugehörigen (in
die Spalte EL) eingegebenen korrelierenden Wörter, ausdrucken. Wegen der Möglichkeit,
zusätzlich ein Compiler-Programm Co, vgl. Fig. 2, einzugeben, kann diese Dokumentation
DO sogar auch in anderen Sprachen als nur in der X-Sprache und in der Y-Sprache
ausgedruckt werden. Dabei wird das zu der gestalteten Programmiersprache, die hier
X genannt ist, gehörende Compiler-Programm und/oder Assembler-Programm an sich erst
nach Prüfung des vollständig entwickelten Steuerprogrammes auf Richtigkeit und Voll-.
-
ständigkeit ernstlich benötigt, um das fertig in der X-Sprache entwickelte
Steuerprogramm in eine beliebige andere, bisher bekannte Programmiersprache, die
hier Z genannt sei, oder in die Maschinensprache Z der Anlage N zu ubersetzen. Dieses
Compiler-Programm oder Assembler-Programm CO kann zudem besonders leicht zur Verfügung
gestellt werden, weil es nicht direkt die frei gestaltete Programmiersprache X,
sondern nur die im Lexlkono Speicher DM bisher auch verwendete andere bekannte Sprache
Y, in die Sprache ZS übersetzen muß, um zusätzlich die Übersetzung der frei gestalten
- Programmiersprache X in die Sprache Z mit diesem dafür scheinbar ungeeigneten
Compiler-Programm(oder Assembler-Programm)Y# 3 Z zu erreichen. Mittels des ohnehin
vorhandenen Inhalts des Lexikon-Speichers DM kann also unschwer im Hilfsgerät in
für sich bekannter Weise ein neues, direkt die frei gestalte Programmiersprache
X in die Sprache Z, z.B.
-
in die Maschinensprache Z der Anlage N, übersetzendes Compiler-Programm
X YZ bzw. Assembler-Programm X oZ mittels des leicht beschaffbaren Programmes Y+Z
erzeugt und verwendet werden.
-
Aus der bisherigen Beschreibung -ist erkennbar, daß das Hilfsge#tn.#i?h#
nur zur Steuerprogrammentwicklung für Fernsprech-Vermittlungssysteme N, sonder#
auch allgemein für Nachrichten-Vermittlungs&ysteme -wie Fernschreib-Vermittlungssysteme
N anwendbar ist. Wegen der freien Gestaltbarkeit der Sprache X kann die jeweils
verarendete Sprache X eng dem inneren Aufbau und den Sonderbedingungen der jeweils
zu steuernden Anlage N angepaßt werden, was die Programmentwicklung besonders dann
erleichtert, wenn es sich um einem bis dahin ziemlich ungewöhnliche, sozusagen recht
exotische Anlage N handelt. Das Hilfsgerät eignet sich daher auch zur Entwicklung
von Steuerprogrammen z.B für komplexe-recnnergesteuerte sonstige Anlagen N, wie
z.B. für rechnergesteuerte Walzstraßen bei der Stahlverarbeitung, usw.
-
Im Hilfsgerät kann auch ein Zustands-Speic#her SM, der auch als ein
Teil oder Abschnitt des Arbeits-Speichers AM-ausgebildet sein kann, angebracht sein,#in
welchem fingierte Anlagezustandsdetail-Codes C als Abbild des fingierten derzeitigen
Zustandes der zu steuernden Anlage N eingegeben s-ind. Dadurch ist ein Simulationsbetrieb
des Steuerprogrammes zur Erprobung des Steuerprogrammes mittels fingierter, vom
Steuerprogramm steuerbarer Anlagezustandsdetails C, auch ohne-vorherige Übersetzung
mittels des Compiler-Programms Y->Z oder X s Z oder mittels des Assembler-Programmes
YiZ oder X7Z, durchführbar. Andererseits ist bei Bedarf mittels des Zustands-Speichers
SM auch die Entwicklung und Simulationsprüfung solcher Steuerprogramme durchführbar,
die ihrerseits zur Steuerung von rechnergesteuerten Anlagen N dienen, deren Rechner
CS nicht nur die#Anlage N, sondern auch den Inhalt eines zusätzlichen Abbild speichers
NM, vgl. Fig. 1, steuert, wobei der Abbilaspeicher NbI ein Abbild der verschiedenen,
im Anlagenbetrieb jeweils vorhandenen Anlagezustandsdetails C
speichert.
Im späteren Betrieb der Anlage N entspricht nämlich der Inhalt des Zustands-Speichers
SM dem Inhalt des Abbildspeichers ##.
-
Es ist möglich, z.B. durch eine entsprechende Wahl der jeweiligen
Anzahl der Stellen oder Bits pro Code, die eingegebenen Codes in der X-Sprache voneinander
formal zu unterscheiden, vgl. die drei in Fig. 4 gezeigten Beispiele. Werden bei
der im übrigen freien Gestaltung der Codes solche formalen Unterschiede eingehalten,
dann kann der Hilfsgerätbediener in den Programm- Speicher PM oder in einen als
Programm-Speicher genutzten Bereich eines anderen Speichers, z.B. des Arbeits-Speichers
AM, in für sich bekannter Weise ein solches Prüfprogramm eingeben, daß dieser Programm-Speicher
PM eine selbsttätige Prüfung mit Ergebnisanzeige auslöst, ob, falls der soeben eingegebene
Code schon aufgrund seines formalen Aufbaus (z.B. zwölf Stellen ~vgl. Fig. 4a) ein
Anlagezustandsdetail betrifft, im Arbeits-Speicher AM mindestens ein dieses Zustandsdetail
C betreffender, sich formal unterscheidender(vgl. Fig. 4c) Verknüpfungsbefehl und/oder
mindestens eine, insbesondere Änderungen dieses Zustandsdetails berücksichtigende,
betreffende, sich formal unterscheidende Meldung (vgl. Fig. 4b) eingegeben ist.
Damit wird die formale selbsttätige Prüfung der Vollständigkeit der zu variablen
Anlagen-Zustandsdetails gehörenden, bisher in das Steuerprogramm eingegebenen Meldungen
und/oder Verknüpfungsbefehle sofort bei der Eingabe von fingierten Anlage-Zustandsdetails
C sichergestellt, also insofern sofort eine selbsttätige Prüfung auch der Syntax
des Steuerprogrammes gestattet Weitere ähnliche Syntaxprüfungen sind rnöglich,wenn
man in entsprechender Weise vom Programm-Speicher PM eine Prüfung mit Ergebnisanzeige
auslösen läßt, ob, falls
der soeben eingegebne Code, insbesondere
mit speziellem formalen Aufbau, ein Verknüpfungsergebnis S, vgl.
-
Fig. 1, und/oder einen oder mehrere zugehörende spezielle Steuerbefehle
S betrifft, im Zustands-Speicher SM mindestens ein entsprechender,z~B einen anderen
formalen Aufbau aufweisender, Code für die zugehörende Anderung von Anlagezustandsdetails
C eingegeben ist.
-
Falls der Zustands-Speicher SM nur einen oder mehrere Abschnitte eines
anderen Schreib-Lese-Speichers, z.B.
-
des Arbeits-Speichers AM, bildet, sind solche formalen Unterschiede
dieser Codes für diese Prüfungen günstig. Dadurch wird die formale selbsttätige
Prüfung der Vollständigkeit der zu Verknüpfungsergebnissen S und/oder Steuerbefehlen
S gehörenden, bisher in das Steuerprogramm eingegebenen variablen Ar.lagezustandsdetails
C sofort bei der Eingabe eines Verknüpfungsergebnisses oder Steuerbefehls S sichergestellt,
also insofern sofort eine selbsttätige Prüfung der Syntax gestattet.
-
In entsprechender Weise kann der Programm-Speicher PM auch eine Prüfung
mit Ergebnisanzeige auslösen,ob, falls der soeben eingebene Code eine Meldung und/oder
einen Verknüpfungsbefehl betrifft, in den Arbeits-Speicher bereits für alle durch
die zugehörigen Verknüpfungsbefehle bedingten verschiedenen Verzweigungen die jeweils
zugehörigen, auch formal einen anderen Code aufweisenden Verknüpfungsergebnisse
, evtl. auch die entsprechenden zugehörenden speziellen, formal einen besonderen
Code aufweisenden Steuerbefehle eingegeben sind.Dadurch wird die formale selbsttätige
Prüfung der Vollständigkeit der zu Meldungen M und/oder Verknüpfungsbefehlen bzw.
Verknüpfungsdaten C gehörenden, bisher in das Steuerprogramm eingegebenen Verknüpfungsergebnisse
S und/oder Steuerbefehle S sofort bei der Eingabe einer Meldung M oder Verknüpfungsbefehls
sichergestellt, also insofern sofort eine selbsttätige
Prüfung
der Syntax gestattet.
-
Auch die Konsistenz der verwendeten Codes ist selbsttätig vom Hilfsgerät
überprüfbar, und zwar nicht nur dadurch, daß an einem Bildschirm DI stets die Ubersetzung
der soeben eingegebenen Codes der X-Sprache in die Y-Sprache angezeigt werden kann.
Als Beispiel für eine weitere selbsttätige Konsistenzprdfung ist ein Hilfsgerät
mit Speicherbereichen AM, DM, SM zu betrachten , die zur nachträglichen Anderung
von ursprünglich anders eingegebenen Codes oder Codefolgen und/oder von ursprünglich
anders eingegebenen unkodierten Wörtern überschreibbar sind, wobei der Programm-Speicher
PM, nach jedem Überschreiben, im ganzen bisher eingegebenen Steuerprogramm alle
entsprechenden bzw. gleichen, ursprünglich anders eingegebenen Codes sucht und als
Suchergebnis eine Anzeige auslöst, die den Hilfsgerätbediener auffordert einzugeben,
für welche der bisher gleichen/entsprechenden Codes oder Codefolgen, ob z.B. für
alle bisher gleichen/entsprechenden Codes, -- dieselbe Änderung -- eine andere Änderung
oder -- keine Änderung gelten soll. Dadurch werden selbsttätig und rasch alle bisher
in das Steuerprogramm eingegebenen Codes bzw.
-
Wörter auf evtl. nun nötige Änderungen geprüft, sobald ein Code bzw,
Wort des Steuerprogrammes im Zuge der Entwicklung des Steuerprogrammes, z.B. im
Lexikon-Speicher, nachträglich geändert wird, z.B. durch Differenzierung der zugehörigen
Begriffe in mehrere'speziellere Codes unterteilt wird. Dies stellt eine insofern
selbsttätige Prüfung der Konstistenz dar.
-
Die in Fig. 2 gezeigte Eingabeeinheit IU kann ein Bildschirmgerät
für Dialogverfahren darstellen, das in für sich bekannter Weise eine Tastatur TA
enthält und das
auf dem Bildschirm DI- evtl. in ein vom Programm-Speicher
PM erzeugtes abgebildetes Formular, vgl. z.3. die Formulare in Fig. 6, 7 und 9 bis
12 - zumindest zeitweise die jeweils eingegebenen codierten und uncodierten Wörter
und/oder wenigstens einen Teil der#Ergebnisan zeigen der vom Programm-Speicher BM
ausgelösten Prüfungen,z.B. mittels Blinksignalen, anzeigt, was die Übersicht über
den jeweiligen Entwicklungsstand des Steuerprogrammes besonders fördert.
-
Die insbesondere zur Syntaxprüfung günstigen formalen Unterschiede
für verschiedene Arten von Codes, z.B.für einerseits Meldungen und andererseits
Verknüpfungsergebnisse, können also durch eine verschiedene, innerhalb einer Art
aber jeweils gleich große, Anzahl von Stellen, z.B. von Bits, pro Code erreicht
werden und/ oder z.B. durch verschiedene, innerhalb einer Art aber jeweils gleiche,
Zusatzsignale, z.B. durch Anhängen oder durch Voransetzen von artspezifischen Kennziffern/
Kennbuchstaben wie A oder B als Zusatzsignale, vgl.
-
Fig. 4a und 4c, erreicht. werden, wobei der Programm-Speicher PM,
zur Prüfung der formalen Richtigkeit des jeweils eingegebenen Code und beim Durchsuchen
des Speichers zum Wiederauffinden des Code, jeweils die Prüfung auf die eingegebene
Anzahl der Stellen und/oder auf Vorhandensein solcher Zusatzsignale auslöst. Dies
gestattet auch, die Dauer für das Aufsuchen von Codes im bisher eingegebenen Steuerprogramm
zu verkürzen und insbesondere rasch formal die Syntax zu prüfen.
-
Die Ergebnisanzeigen der verschiedenen Prüfungen können verschieden
gemacht werden. Günstig ist oft, wenn die Ergetnisanzeige der Prüfungen, zur Anzeige
eines zu beanstandenden Ergebnisses, ein Alarmsignal, z.B. ein Blinken auf einem
Bildschirm, darstellt, und, zur Anzeige eines zufriedenstellenden Ergebnisses, nur
den alarm-
signalfreien, während der Bereitschaft zur weiteren
Eingabe von codierten und/oder uncodierten \Ardrtern üblichen'Betriebszustand des
Hilfsgeräts darstellt.
-
Fehlerhafte bzw. unvollständige Eingaben sind dann leicht als solche
zu erkennen und zu ändern.
-
Die Fig. 3 zeigt ein spezielles Beispiel eines Fernsprech-Vermittlungssystems,
an dessen Koppelfeldkern N in für sich bekannter Weise eine Vielzahl pheripherer
Verbindungssätze VS mit eigenen peripheren Rechnern PC angeschlossen ist. Jeder
peripherer Rechner PC wird von einem6z.B. eigenen, Unter-Steuerprogramm-Speicher
gesteuert und ist über einen speziellen Verbindungsweg des Koppelfeldkernes N mit
dem zentralen Rechner dieses Fernsprech-Vermittlungssystems verbunden, wobei als
Symbol für den zentralen Rechner wegen der Übersichtlichkeit in Fig. 5 nur der Abbild-Speicher
tE und der Steuerprogramm-Speicher CM des zentralen Rechners gezeigt ist. Der periphere
Rechner PC kann für sich Vorverarbeitungen, z.B. der durch einen Blitzsymbol symbolisierten
Wählsignale angeschlossener, nicht gezeigter Teilnehmeranschlüsse, durchführen.
Die an den zentralen Rechner NM/CM weitergeleiteten Meldungen M und Anlagezustandsdetail-Daten
C können also hier vorverarbeitete Signale darstellen, die auf die jeweils zugeordnete
spezielle Steuerprogrammfolge CMx im Steuerprogramm-Speicher CM wirken, und zwar
nachdem sie mit Verknüpfungsdaten aus dem zugehörenden Abschnitt NMx des Abbild-Speichers
NM verknüpft sind. Wie durch Pfeile symbolisiert ist, Lost das Verknüpfungsergebnis
S bzw. der Steuerbefehl S dieser zugeordneten Steuerprogrammfolge CMx eine entsprechende
Steuerung des,hier desselben, peripheren Rechners PC und damit normalerweise auch
des entsprechenden Verbindungssatzes VS aus. Außerdem wird im zu diesem PC/VS gehörenden
zentralen Abbild-Speicher-Bereich NMx eine entsprechende Nachricht
über
die mittels S bewirkte Anlagezustandsdetail-Änderung gespeichert.
-
Im Hilfsgerät kann, insbesondere zur Entwicklung eines Steuerprogrammes
für die in Fig. 3 gezeigte Anlagelmindestens einer der besonderen Speicher für die
Codes, z.B. der Zustands-Speicher SM und/oder der Arbeits-Speicher AM, mehrere Unterspeicher
und/oder mehrere, z.B. durch Zusatzsignale markierte, Abschnitte enthaltenl in denen
jeweils ein Unterblock der insgesamt in den betreffenden besonderen Speicher SN,
AM einzugebenden Codes eingegeben ist, wobei der Inhalt mindestens eines der Unterspeicher
und/oder der Abschnitte jeweils zur späteren Eingabe in einen Unter-Steuerprogramm-Speicher
eines, insbesondere für eine Vorverarbeitung von Daten bestimmten, peripheren Rechners
PC der Anlage bestimmt ist, ferner nur ein Rest des Inhaltes des betreffenden besonderen
Speichers zur späteren Eingabe in den zentralen Steuerprogramm-Speicher CM eines
zentralen Rechners NM/CM der Anlage bestimmt ist, sowie wenigstens ein Teil der
Meldungen M an den zentralen Rechner NM/CM von peripheren Rechnern PC erarbeitete
Verknüpfungsergebnisse M und/oder erarbeitete Steuerbefehle M darstellen und wenigstens
ein Teil der vom zentralen Rechner NM/CM erarbeiteten Verknüpfungsergebnisse S und/oder
Steuerbefehle S für den oder für die jeweils betreffenden peripheren Rechner PS
Meldungen S darstellen. Ein solches Hilfsgerät gestattet also, ein Steuerprogramm
für eine durch mehrere Rechner PC, NM/CM gesteuerte, im übrigen nahezu beliebige
Anlage zu entwickeln, wobei in für sich bekannter Weise mindestens einer der-Rechner
ein zentraler Rechner, vgl. NM/CM, und die anderen Rechner peripher angebrachte,
wenigstens teilweise Vorverarbeitungen durchführende Rechner der Anlage, vgl. PC,
sind;
An das Hilfsgerät kann ein Drucker PR angeschlossen sein,
im Lexikon-Speicher können dabei verschiedene Arten von Codes, nämlich wenigstens
die Meldungen-Codes, Verknüpfungsbefehl-Codes und Verknüpfungsergebnis-Codes, zusammen
mit ihren Ubersetzungen als eigene Böcke, in inhaltlich durch weitere Eingaben von
Codes in diesen Block erweiterbarer Form gespeichert sein, und zusätzlich kann der
Drucker PR einen solchen Block für sich, zumindest einen Auszug daraus, im Betrieb
auf einen entsprechenden Befehl hin, ausdrucken. Mit einem solchen Hilfsgerät kann
man eines oder mehrere ausdruckbare und bei Bedarf auch auf einem Bildschirm anzeigbare
Lexikas über die verwendeten, frei gestalt bare Codes, und/oder über deren Übersetzungen
in eine der anderen bereits bekannten Sprachen, z.B. für eine Dokumentation, erstellen.
-
Der Lexikon-Speicher DM des Hilfsgerätes kann in für sich bekannter
Weise hinsichtlich seines gespeicherten Inhaltes jeweils auch selbstorganisierend
sein, so daß er eingegebene Wörter, insbesondere die Codes, selbständig in eine
vorschreibbare, zers. in eine alphabetische und/oder arithmetische, Reihenfolge
ordnet und die so geordnete Reihenfolge mit Übersetzungen aus zudrucken gestattet.
Dann ist die Anzeige, z.B. Bildschirmanzeige, und der Ausdruck des Lexikons oder
der Lexika und damit die Benutzung der verwendeten bzw. der frei gestalteten Codes
weiter erleichtert.
-
Im Programm-Speicher PM kann zusätzlich ein für sich bekanntes Programm
eingebenen sein, das eine Anzeige, mindestens eines Ausschnitts, des bisher entwickelten
Steuerprogrammes in Form von, z.B. auf dem Bildschirm DI oder mittels des Druckers
PR anzeigbaren,Ablaufdiagrammen auslöst, vgl. Fig. 7. Dadurch wird die Übersicht
über
das bisher entlfickelte Steuerprogramm weiter erleichtert.
-
Durch eine Eingabe des oben genannten Compiler- oder Assembler-Programmes
Y#Z können wenigstens Teile des Inhalts des Lexikon-Speichers DM jeweils Übersetzungen
der Codes FC, und/oder jeweils Ubersetzungen der Wörter der bisher üblichen sonstigen
Sprache X des Fachmanne#s, in eine für sich bekannte, höhere oder niedere, Programmiersprache
Z, z B. Übersetzungen in die Maschinensprache Z des Rechners CS, IiM/CM der Anlage,
darstellen, wobei diese Teile des Lexikon-Speichers DM dazu bestimmt sind, das Hilfsgerät
auch als Compiler und/oder~Assenbler für die entwickelten Steuerprogramme# einzusetzen.
Zusätzlich können die betreffenden Teile des Lexikon-Speichers DM auch dazu bestimmt
sein, das Hilfsgerät in für sich bekannter Weise für Rückübersetzungen eines anderweitig
bereits entwickelten, nachträglich in Teile des Arbeits-Speichers AM des Hilfsgerätes
eingegebenen Steuerprogrammes der Anlage in die vom Hilfsgerätebediener, zumindest
zum Teil frei gestaltete Programmiersprache X zu verwenden, wobei die vom Programm-Speicher
ausgelösten Prüfungen als Ergebnis das Fehlen oder das Vorhandensein der Vollstäfldigkeit
und/oder der formalen Fehlerfreiheit des anderweitig bereits entwickelten Steuerprogrammes
der Anlage anzeigen und wobei jene Prüfungen wegen dieser Anzeige nun nachträglich
die Vollständigkeit und die normale Fehlerfreiheit des anderweitig bereits entwickelten
Steuerprogrammes zu erreichen gestatten. Auf diese Weise kann mit dem Hilfsgerät
nicht nur das in der X-Sprache entwickelte Steuerprogramm in eine der sonstigen
bekannten Sprachen Z, nämlich Programmiersprachen oder Maschinensprachen, übersetzt
werden, sondern auch Rückübersetzungen in die frei gestaltete Programmiersprache
X erreicht werden, wobei, bevorzugt wegen der selbsttätigen Syntaxprüfungen
und
Konsistenzprüfungen mit Ergebnisanzeigen, an den Hilfsgerätbediener sogar gezielte
Aufforderungen zur Korrektur und Ergänzung eines anderweitig bereits entwickelten
Steuerprogrammes gerichtet werden.
-
Das Hilfsgerät gestattet also, Steuerprogramme für ganz unterschiedliche
Anlagen zu entwickeln. Wenn die Anlage ein Iachrichter-Vermittlungssystem, insbesondere
ein Fernstrech-Vermittlungssystem, ist, vgl. Fig. 1 und , dann stellen also die
Meldungen M und die Verknüpfungsbefehle bzw. -daten C in für sich bekannter Weise,
wenigstens zum Teil, vermittlungstechnische Signale oder Fakten, also z.B. Belegungszustände
von Leitungen und/oder Belegungszustände von Zeitmultiplexkanälen und/oder Wählsignale,
dar, wobei die Verknüpfungsergebnisse 5 und/oder Steuerbefehlse 5,wenigstens zum
Teil, den üblichen Signalen z.B. zum Aufbau bzw. zur Prüfung bzw zum Abbau von Verbindungswegen
bzw. zur Siafflnzg mn diesen Verbindungswegen entsprechenden Zeitkanälen und/ oder
Frequenzkanälen entsprechen. Entsprechende ähnliche Bedeutungen und Wirkungen haben
mit dem Hilfsgerät entwickelte Steuerprogramme für beliebige andere rechnergesteuerte
Anlagen.
-
Aus der bisherigen Beschreibung geht bereits hervor, daß alle Speicher,
evtl. auch nur ein Teil der Speicher, an sich jeweils auch einen oder mehrere Abschnitt
te eines größeren allgemeinen Speichers bilden können, ohne den Betrieb des Hilfsgeräts
völlig zu behindern.
-
Im Gegenteil kann, z.B. aus ökonomischen Gründen,möglichst nur ein
einziger größerer allgemeiner Speicher angebracht werden, jedenfalls wenn eine dadurch
evtl.
-
bewirkte verringerte Geschwindigkeit der Verknüpfungsabläufe von erst
nacheinander einzeln aus dem Speicher gelesenen wörtern akzeptiert wird.
-
Im folgenden werden zur weiteren Veranschaulichung
insbesondere
der Bedeutung der MögllcEkeit einen an einer Stelle des bisher entwickelten Steuerprogramms
erkannten Fehler überall im bisher entwickelten Steuprogramm systematisch rasch
beseitigen zu können, weitere Beispiele für Einzelheiten über die Stufen der Entwicklung
eines speziellen Steuerprogrammes für das in Fig. 3 gezeigte Vermittlungssystem
mit einem zentralen Rechner PaM/CM und mit einer Vielzahl von peripheren Rechnern
PC beschrieben. Dabei wird davon ausgegangen, daß ein Zustands-Speicher SM im Hilfsgerät
angebracht ist und daß wenigstens ein Teil der vom peripheren Rechner PC jeweils
zum zentralen Rechner ;çat/CM geleiteten Signale M,C bereits so vorverarbeitet ist,
daß die-Unter-S'euerProgranme für die peripheren Rechn-er PC nicht entwickelt zu
werden brauchen.
-
Dieses im folgenden beschriebenen stufenweise Entwickeln eines Steuerprogrammes
geht davon aus, daß die entwicklungsbegleitendeDokumentation , vgl. DO in Fig. 2,eine
der wichtigsten Voraussetzungen für eine niedrige Fehlerrate der Software, also.
des zu entwik--' kelnden Steuerprogrammes,ist. Deshalb müssen an sich Steuerproeramme-Yntwickle
ihre Software-Spezifigation während der Entwicklung an sich gesondert ständig fortschreiben.
Mit dem im folgenden beschriebenen Beispiel einer stufenweis#Entwick1ung entsteht
jedoch die ganze Dakvmentation DO bei ~er Steuerprogrammentwicklung gleichsam als
angenehmer Nebeneffekt wie von selbst. Das zur Steuerprogrammentwicklung verwendete
Hilfsgerät enthält selber z.B. Teile einer kommerziellen Rechenanlage, die bei der
Erfindung aber spezielle Funktionen aufweisen.
-
Das Hilfsgerätbeispiel unterstützt die Steuerprogramm-Entwickler in
mehrfacher Weise: Schon für die Entwurfsphase des Steuerprogrammes hilft es dem
Entwickler, die
vermittlungstechnischen Abläufe nach einem vorgegebenen
Schema am Bildschirm DI zu entwerfen. Dadurch kann der Entwurf des zugehörenenden
Steuerprogrammsablaufs auf es ehe Weise in Iterationsverfahren von zunächst nur
wenigen Abläufen auf seinen endgültigen Umfang erweitert werden.
-
Ebenso einfach können die Entwickler änderungen im Entwurf vornehmen.
Änderungen, die an mehreren Stellen des Entwurfes vorgenommen werden müssen, braucht
der Entwickler nur an einer Stelle völlig auszuführen. Das Hilfsgerät sucht und
prüft alle ähnlichen Entwurfsstellen und ändert, bei Zustimmung durch den Entwickler,
selbsttätig den Entwurf an allen anderen Stellen.
-
3as Hilfsgerät liefert in jeder Phase der Entwicklung selbsttätig
die authentische Dokumentation DO, so daß den Entwicklern unmittelbar nach jeder
Änderung oder Erweiterung des Entwurfs die aktuelle Dokumentation DO zur Verfügung
steht.
-
Zum Entwickeln des Entwurfs mit Hilfe des Hllfsgerätes wurde eine
eigene Dialogsprache X geschaffen, deren im übrigen frei gestaltbare Codes je nach
ihrer formellen Bedeutung bestimmte Worttypen bilden, nämlich bestimmte Stellenzahlen
und teilweise auch bestimmte Kennzeichen enthalten, vgl. Fig. 4, auf die später
noch genauer eingegangen wird. X ist eine frei gestaltbare Programm-Entwicklungssprache,
also keine echte Programmiersprache und insbesondere für die Entwicklung von Steuerprogrammen
für EWSD-Eernsprech-Vermittlungssystetnen geeignet, Das Steuerprogramm des Rechners
CS bzw. IElCM, vgl. Fig. 1 und 7, von EWSD sei in CHILL zu schreiben, Aus Abläufen,
die zunächst in X beschrieben sind, soll das Hilfsgerät
später
deshalb unmittelbar ein Steuerprogramm in# CHILL generieren.
-
Zunächst sind also alle im zentralen Rechner NM/CM von EWSD ablaufenden
vermittlungstechnischen Prozesse in der Sprache X zu entwerfen.
-
Charakterisch für X ist, daß ihre Codes erst während der Entwicklung
des vermittlungstechnischen Steuerprogramms erzeugt werden Die Sprache X entsteht
also hier sozusagen schrittweise während ihrer Anwendung.
-
Daher ist es nicht erforderlich, daß vor Beginn der Steuerprogrammentwi
cklung ein vollständiges "Lexikon" ausgearbeitet wird.
-
Die Sprache X ist sehr einfach. Sie besteht nur aus vier Worttypen,
nämlich je einen Worttyp für - Zustände, genauer "Anlagezustandsdetailst' (States)
C - Meldungen (Messages) M - Teilabläufe, d.h. Verknüpfungsbefehle (Partial sequenece),
und - Steuerbefehle (Commands).
-
Jeder Vermittlungsprozeß des BXSD wird ausschließlich mit Wörtern
dieser vier Kategorien beschrieben. Die zeitliche Folge der Vorgänge und Nachrichten,
die durch diese Wörter beschrieben wird , wird nochmals insbesondere anhand der
Fig. 3 genauer zusammengefaßt.
-
Zustände C sind definiert für die von peripheren Rechnern PC gesteuerten
Leitungssätze VS.Abbilder daran werden im Abbild-Speicher MM des zentralen Rechner
N/ CM gepflegt , vgl. z.B. telcom report 2(1979) 174-183. Im Abbild IiMX des jeweiligen
Leitungssatzes VS ist ir-Code für VS und a gespeichert. Der Zustand C eines Leitungssatzes
VS sagt hier in diesem Beispiel
aus, welche Folge von Teilabläufen
in einem Verbindungsaufbau für VS bereits ausgeführt wurde.
-
Die Zustände der Leitungssätze VS werden durch Ereignisse verändert,
z.B. durch "Hörer abhebenen durch den Teilnehmer" oder Belegen einer Verbindungsleitung".
Diese Ereignisse werden von den peripheren Rechnern PC in Form von Meldungen M dem
zentralen Rechner NE/CM bekanntgegeben. Ereignisse sind also die physikalische Ursache
für logische Meldungen M. Die peripheren Rechner PC nehmen neben vielen anderen
Aufgaben eine Zeichenvorverarbeitung vor,us nicht erst nach und nach vollständige
Meldungen M (z.B. Belegen oder Auslöser.) zum zentralen Rechner tE/CM in einer für
alle Signalisierungsarten standardisierten Form zu senden, Jede eingetroffene Meldung
M bewirkt im zentralen Rechner NM/CM den Start eines Teilablaufs, d.h. von Verknüpfungen.
Um den richtigen Teilablauf zu ermitteln, verknüpft der zentrale Rechner lm/CM zunächst
Meldung und Zustandabbild des Leitungssatzes VSS in dem das Ereignis stattgefunden
hat. Das Ergebnis S dieser Verknüpfung ist der Aufruf des zugehörigen Teilablaufs,
das hier also ein Programm, evtlemit mehreren Unterprogrammezur Erzeugung der zugehörenden
speziellen Steuerbefehle, hier S1..Sx....Sy genannt, darstellt.
-
Am Ende eines Teilablaufs hat der Leitungssatz VS einen neuen Zustand
C,außerdem erarbeitet der zentrale Rechner .WIM/CM während eines Teilablaufs meist
Befehle Sx, die er anschließend dem peripheren Rechner PC übergibt.
-
In den folgenden Ausführungen wird anstelle des Begriffs "Leitungssatz"VS
der allgemeine Begriff "Gerät" VS verwendet, z.B. in Begriffen wie Gerätezustand,
Gerätetyp.
-
Bei EWSD sind alle vermittlungstechnischen Funktionen als ein einzelner
Endlosprozeß definiert. Der Ablauf eines solchen Prozesses vollzieht sich in drei
Hierarchieebenen, vgl. Fig. 5: Die Prozeßsteuerung (CallP, Ebene La) koordiniert
den gesamten Prozeßablauf. Sie enthält alle im Prozeßablauf auftretenden Venknüpfungen
zwischen Meldungen und Gerä#ustaz#dsabbildern0 Das Ergebnis jeder Verknüpfung ist
der Aufruf einer "Schrittabelle" STx der Ebene Lb. In dieser sind für den folgenden
Teilablauf alle erforderlichen Einzelaktivitäten sowie Aufruf von Routinen'Ra...Rn
(Ebene Lc) als weitere spezielle Unterprogramme in Tabellenform zusammengefaßt.
Als Teilablauf ist hierbei der Teil eines Prozesses definiert, der durch das Auswerten
einer einzigen Meldung M in Verbindung mit dem vorliegenden Gerätezustand C gesteuert
werden kann.
-
Ist ein Teilablauf beendet, also eine Schrittabelle STx abgearbeitet,
so kehrt der Prozeß wieder zur Prozeßsteuerung CallP zurück.
-
Für die im Teilablauf jeweils geforderten ~oft Verknüpfungsergebnisse
Sx darstellenden Einzeltätigkeiten, z.B. Bewerten, Auslesen, Überschreiben, ruft
die Schritttabelle die Routinen Rx = Ra...Rn auf. Nach Durchlauf der Routine kehrt
der Prozeß wieder zu der Schrittabelle STx zurück, die diese Routine Rx aufgerufen
hat. Eine Schrittabelle ST kann mehrere Routinen R aufrufen. ST selbst kann von
mehreren Zustai#s-Ereignis-Verknüpfungen, z.B. C mit M gestartet werden, hat evtl.
-
Verzweigungen und hat also gleichsam einen Eingang und mehrere Ausgänge,
d.h. sie kann auf mehreren legen durchlaufen werden.
-
Welcher dieser Wege verwendet wird, hängt von den Ergebnissen zOBOder
aufgerufenen Routinen Rx ab. Abhängig vom durchlaufenen Weg erzeugt die Schrittabelle
STx schließlich Steuerbefehle Sx und speichert den Gerätezustand C im Abbild-Speicher
NtIx bzw. während der Programmentwicklung auf Veranlassung des Sntwickkers entsprechend
im Zustands-Speicher SM Das vermittlungstechnische Steuerprogramm wird in zwei Phasen
entwickelt: zuerst in der Syste#n-#esignPhase (eigentliche Entwicklung) und Programmierungs-Phase
(anschließende t!bersetzung) In der System-Design-Phase legt der Entwickler die
Verbindungs#ä,,fe in der -Scrache in Form von Verbindungsablaufdefinitionen fest.
Fig. 8 zeigt ein Schema solcher Definitionsfestlegungen. Nach dem START wird bei
1 zuerst ein grober Erstentwurf der zu steuernden Verbindungs- bzw. Anlagenzuständedetails
C am Bildschirm DI entworfen. Bei 2 wird der Erstentwurf durch EreignIsse M und/oder
Zustände C am Bildschirm DI ergänzt bzw. differenziert. Bei 3 wird der nun nötige
Teilablauf STx am Bildschirm definiert. Anschließend differenziert man weiter wieder
bei 2, bis schließlich bei 4 diese Schrittabelle STx als fertig betrachtet und evtl.
für sich ausgedruckt wird. Danach kann man in einem Iterationsschritt IS weitere
Anlagevariable einführen, bis am Ende das Steuerprogramm in der frei gewählten X-Sprache
fertig entwickelt erscheint, so daß danach die eigentliche Programmierungsphase
beginnen kann.
-
Diese festgelegten Definitionen bestehen ausschließlich aus den bereits
oben beschriebenen Worttypen "Zustand", "Meldung", "Teilablauf", "Steuerbefehl".
-
Diese Worttypen sind Codes mit festgelegten Formaten,
die
in Fig. 4 wiedergegeben sind. Die Verbindungsablaufdefinitionen entstehen im Dialog
am Bildschirm DI.
-
Dabei ist die Reihenfolge der Eingabe der Codes wegen der oben beschriebenen
Syntaxprüfungen zwangsläufig, so daß der Bildschirm DI rom Entwickler die jeweils
erforderliche Codekategorie bzw. den entsorechenden Worttyp anfordert. Gibt der
Entwickler einen Code ein, dessen Übersetzung er noch nicht in den Lexikon-Speicher
DM eingegeben hat, den er also nicht voll definiert hat, so fordert der Bildschirm
DI sofort die Übersetzung dieses Codes an. Die so entstehenden Verbindungsablaufdefinitionen
werden von Bilfsgerät-Programmspeicher PM selbsttätig in zkrei Formen dokumentiert:
- In der Schrittabellenliste, vgl Fig. 6, die eine Kurzform der Verbindungsablaufdefinition
darstellt, sowie - als Ablaufdiagramm mit den vom CCITT empfohlenen SDL-Symbolen,
vgl. Fig. 7.
-
Durch die große Anzahl von Zuständen und Ereignisisen, die in einem
zu steuernden Prozeß der Anlage auftre ten können, sind Verbindungsablaufdefinitionen
im Endzustand sehr komplex und der Erstentwurf davon wird nie.
-
mals alle auftretenden Zustände und Ereignisse enthält ten können.
Er wird vielmehr in Iterationsprozessen vervollständigt, vgl Fig. 8. Durch die Flexibilität
des Hilfsgeräts können Änderungen oder Ergänzungen der Verbindungsablaufdefinitionen,
die sich während der Entwicklung, und auch später bei der Berücksichtigung von speziellen
Wünschen der Anlagenbetreiber und der Anlagenbenutzer,ergeben, sehr leicht eingegeben
werden.
-
Die Schrittabellenliste ist ein wichtiges Arbeitsmittel für das System-Design.
Yon ihr ist während des Dialogs zwischen Entwickler und Hilfsgerät der gerade bearbeitete
Abschnitt auf dem Bildschirm als Formular abgebildet, in das der Entwickler die
vom Programm-Speicher
PM angeforderten Codes einträgt. Der Programm-Speicher
enthält also eine, insbesondere vom Hilfsgerätehersteller und/oder Hilfsgerätbediener
festlegbare,die Reihenfolge der eingegebenen Worttypen prüfende Befehlsfolge, die
einerseits feststellt, welchen Worttvp der zuletzt eingegebene Code darstellt, und
welcher Worttyp aber jetzt in der festliegenden Reihenfolge - z.. Meldung M, Zustände
C, Verknüpfungsbefehl, Ergebnis S oder STx oder Rx, Steuerbefehl Sx und neuer Zustand
C, vgl. Fig. 8 - einzugeben gewesen wäre( jeweils höchstens von Aufforderungen,
bei neu verwendeten Codes FC die Ubersetzung in KL einzugeben,unterbrochen).
-
An dem in Fig. 6 gezeigten Ausschnitt einer Schrittabellenliste ist
zu erkennen, wie bei zfSD der Erstentwurf der Verbindungsablaufdefinionen vom Entwickler
begonnen wurde. Dieses Beispiel gilt für einen normalen Verblndungsaufbau. Nach
dem Start des Dialoges durch den Entwickler erscheint am Bildschirm DI die unausgefüllte
Schrittabellenliste,also ohne eingetragene Codes.
-
Zunächst definiert der Entwickler den Ruhezustand mit AOO.BOO.COO.DOO,
vgl. Fig. 6, 2. Zeile, 1. Spalte, also mit einem zugehörenden Worttyo gemäß Fig.
4a, dessen vier Kennbuchstaben A, B, C, D je einem Codeabschnitt vorangestellt sind.
Der Abschnitt A betrifft hier im Beispiel den Zustand des Geräts VS (z.B. A10 wird
als "Belegung" definiert),der Abschnitt B den Gerätetyp (z.B. BLO wird als "Teilnehmersatz"
definiert), der Abschnitt C die Anschlüsse des Geräts, z.B. seine A-Anschlußseite
(z.B. CAO wird als "A-seitig belegt" definiert) und der Abschnitt D Sonderkennungen,
z.B.
-
Sicherheitsmerkmale.
-
Nach dieser Eingabe AOO.BOO.COO.COO erscheint, vom Programm-Speicher
PM gesteuert, das noch unausgefüllte
Formular (gemäß Fig. 11) des
Lexikon-Speichers Dt4 zur Definition dieser Abschnitte bzw. Zustände A, B, C, D,
welche hier vom Entwickler in#der 1. Zeile zunächst in deutscher Alltagssprache
eingegeben werden.
-
Der Ruhezustand des Vermittlungs systems wird durch das Ereignis "Teilnehmer
hebt ab" beendet. Der Entwickler ordnet nun der zugehörenden Meldung M den Code
IXSA zu, 2. Spalte, vgl. Fig. 6, 2. Zeile, also mit einem zu Meldungen M zugehörenden
Worttyp gemäß Fig. 4b, dessen vier Stellen hier im Beispiel eigene Bedeutungen zugeordnet
werden - nämlich die erste Stelle betrifft hier die Quelle PC der Meldung (z.B.
mit~"I" wird "peripherer Prozessor 4-Seite" definiert), die zweite Stelle das Ziel,
wohin die Meldung M gesendet wird (z.B. mit X wird der zentrale Rechner tE/CM" definiert),
die dritte und vierte Stelle den Meldungsinhalt (z.B. mit !'SA" wird "Belegung A-Seite"
definiert).
-
Nach dieser Eingabe IXSA erscheint, wieder vom Programm-Speicher PM
gesteuert, das noch unausgefüllte Formular (gemäß Fig. 9) des Lexikon-Speichers
DM zur Definition dieser drei Abschnitte des Code IXSL, vgl. Fig. 9, Zeile 5 - weil
in Fig. 9 alle späteren FC-Eingaben vom Lexikon-Speicher DM hier alphabetisch geordnet
wurden, ist in Fig. 9 die FC-Eingabe IXSA schon in Zeile 5 und nicht mehr wie ursprünglich
in Zeile 1 enthalten. Dabei wurde hier im Beispiel zur Demonstation der Fähigkeiten
der Erfindung der Code, vgl. FC in Fig. 2, der frei gestalten X-Sprache in mehrere
Sprachen,vgl. KL in Fig. 2 und 9, übersetzt, und zwar teils in mnemotecgnische Kürzel
für Quelle und Ziel, teils sowohl in die deutsche als auch englische Alltagssprache.
-
Danach fordert der Programm-Speicher PM den Code für den Teilablauf
(Schrittabelle) an, der die ein#etroffene Meldung IgSA verarbeitet, vgl. Fig. 6,
2. Zeile, 3. Spalte. Im Beispiel wird der Code 110001005 eingegeben, also mit einem
zu Verknüpfungen STx gehörenden Worttyp gemäß Fig. 4c, dessen acht Stellen zunächst
aus einem Kennzeichen "M", dann aus sechs frei gestaltbaren Ziffern und ar achter
Stelle aus einem Kennzeichen "S" bestehen.
-
Nach dieser Eingabe MOOOiOOS erscheint, wieder vom Programm- Speicher
PM gesteuert, in diesem Beispiel weiter das Formular gemäß Fig. 6 am Bildschirm
DI zur Aufforderung, die Definition dieses Code MOOOiOOS in die Spalten 4 bis 8
von Fig. 6 anzugeben, wobei in den Spalten 4 und 5 Ubersetzungen KL dieses Code
enthalten sind.
-
Wie bereits erwähnt, kann eine Schrittabelle auch Verzweigungen enthalten,
von denen jede zu einem anderen Gerätezustand frn1rt, aber nicht jede Verzweigung
endet mit dem Erzeugen eines Steuerbefenls S, sondern manchmal nur mit dem Verknüpfungsergebnis
S, daß nichts gesteuert werden soll.
-
Demnach wird sich der Entwickler überlegen, welche(@) Steuerbefehl(e)
die jeweilige Schrittabelle STx, hier M000100S, zu erzeugen hat (der Code M000100S
kann dabei als ein zu dem Zustand A00B00C00D0 und der Meldung IXSA gehörender Verknüpfungsbefehl,
oder bereits als erstes Ergebnis S/STx dieser Verknüpfung aufgefaßt werden).
-
Seinen Code nennt der Entwickler AITS, den er in Spalte 7 der Schrittabellenliste
einträgt. Die Anforderung der DefinitIon, d.h. der Übersetzung, dieses Code beantwortet
der Entwickler mit der Eingabe entsprechend Flug. 10 mit einem Worttyp gemäß Fig.
4b, also mit einem Worttyp wie bei Meldungen.
-
Mit diesem Steuerbefehl fordert also der zentrale Rechner @M/CM vom
peripheren Rechner PC die Anschlußdaten der betreffenden Teilnehmerleitung an.
-
Die Schrittabelle STA des hier behandelten Beispiels hat drei Verzweigungsergebnisse,
jedes davon endet mit einem neuen Ziel zustand C. Die Codes dieser drei Zielzustände
trägt der Entwickler in Spalte 8 der Schrittabellenliste ein: A10.BLO.CAO. DOO mit
A10 Belegung BLO Teilnehmersatz CAO Teilnehmersatz A-seltig belegt.
-
A55.BLO.CAO.DOO mit A55 kein Verbindungsspeicher frei.
-
A56.BOO.CAO.DOO mit A56 Anschluß nicht beschaltet.
-
Aufgrund der Anforderung durch den Programm-Speicher PM definiert
der Entwickler diese. Codes wie in Fig. 11 dargestellt. Durch die von PM mittels
Formularen geforderten schrittweisen Code-Eingaben ist auch die formale Richtigkeit
der Syntax sichergestellt.
-
Möchte der Entwickler eine bereits definierte Schritttabelle ST= an
einer weiteren Verzweigungsstelle der Verbindungsablaufdefinitiom einsetzen, ruft
er mittels seiner Tastatur fi diese Schrittabelle STx, dle zum Bildschirm angezeigt
wird. Der Entwickler kann nun für den neuen Steuerfall noch fehlende zielzustände
und eventuelle Steuerbefehle ergänzen. Das Hilfsgerät wird daraufhin an allen Stellen,
wo bisher die Schrittabelle STx eingesetzt war, diese Ergänzung selbständig durchführen.
-
Genauso können die Verbindungsablaufdefinitionen überall nachträglich
ergänzt bzw. geändert werden, wenn durch neue Erkenntnisse oder Kundenwünsche weitere
oder andere Verbindungsabläufe erforderlich werden. Nach jeder Veränderung der Vertindungsablaufdefinitionen,
die in ihrer Gesamtheit das entwickelte Steuerprogramm darstellendruckt der Drucker
PR die gesamte Dokumentation DO neu aus.
-
Fig. 12 zeigt das Protokoll dieses Dialogs am Bildschirm DI zwischen
Entwickler und Hilfsgerät in der System-Design-Phase.
-
Außer der Schrittabelle und dem in Fig. 7 gezeigten zugehörenden CCITT-normengerechten
SDL-Diagrmm druckt der Drucker PR, vom Programm-Speicher PM gesteuert, nach jedem
Dialog auch Lexikas aus, die einen Überblick über die bisher definierten Codes geben.
Entsprechend den hier im Beispiel vier Codekategorien entstehen vier Lexikas.
-
Die endgültigen Verbindungsablaufdefinitionen in der frei gestalteten
X-Sprache kann das Hilfsgerät zusätzlich vollautomatisch z.B. in die höhere, für
Fernsprechzwecke entwickelte Programmiersprache CHILL übersetzen, um das Steuerprogramm
für den zentralen Rechner NM/CM, d.h. für die Prozeßsteuerung CallP,zu erhalten.
Hierzu kann z.B. ein Compiler-Programm benutzt bzw. formuliert werden, das die verschiedenen
Definitionen, vgl. insbes. Fig. 6, Spalte 4; Fig. 9, Spalten 2 bis 5; Fig. 10, Spalten
2 bis 5 und Fig. 11, Spalten 2 bis 5,aus der dort verwendeten Sprache (deutsch,
englisch) in die CHILL-Sprache übersetzt. Stattdessen ist aber auch eine nur teilweise
selbsttätige Übersetzung in die CHILL-Sprache möglich: Die von der Prozeßsteuerung
CallP aufuerufenen Schrittabellen STx fertigt der
Entwickler halbautomatisch
im Dialog mit dem Hilfsgerät an. Eine Schrittabelle STx setzt sich aus einer Folge
von Funktionen (Makros) zusammen, z.B. aus Routineaufruf, -versorgung, -ergebnisbewertung
usw., die zu den in den Verbindungsablaufdefinitionen vordefinierten Verzweigungen
führen. Aus der-eingegebenen Funktionsfolge baut dann das Hilfsgerät das CHILL-Programm
auf. Individuelle Versorgungsparameter ruft das Hilfsgerät dabei im Dialog ab und
baut sie formgerecht in die entsprechende Funktion ein. Rx werden evtl.
-
auch manuell programmiert. Jedoch kann das Hilfsgerät bei der Programmierung
der Schrittabellen STx urd der Routinen Rx modulübergreifende Begriffe kontrollieren.
-
Einer der Vorteile des Hilfsgeräts besteht darin, daß es die gesamte
Dokumentation DO automatisch und authentisch erzeugt. Authentisch ist hier zu verstehen
als in jeder Phase der Entwicklung in Ubereinstimmung mit dem tatsächlichen Entwicklungsstand".
Dies wurde insbesondere möglich, weil das Steuerprogramm, gesteuert von dem im Programm-Speicher
PM geladenen Kontrollprogramm geschrieben wird und deshalb ein formatiertes Schreiben
gewährleistet ist. Dadurch kann der Programm-Speicher PM, der auch die Dokument
n DO erzeugt, die zur Dokumentation erforderlichen Informationen aus definierten
Speichern bzw. Speicherabschnitten lesen.
-
Kontrolliertes Eingeben ermöglicht also systematisches Auslesen bzw.
Ausdrucken.
-
Das Hilfsgerät kann mit Hilfe einer Übersetzerbibliothek den Inhalt
dieser Speicher(-abschnitte) selbsttätig in die jeweils erforderliche Fremdsprache
übersetzen. Dabei stellt der Aufbau und die Arbeitsweise des Hilfsgeräts sicher,
daß für einen bestimmten Code an allen seinen Einsatzstellen exakt dieselbe Übersetzung
erscheint.
-
Die Dokumentation besteht also z.B. aus folgenden Unterlagen, die
bei Bedarf vom Drucker PR in für sich bekannter Weise ausgedruckt werden: - Schrittabellenliste
(Verbindungsablaufdefinitionen); - SDL-Di agramme (Verbindungsabl aufdefiniti onen
in bildlicher Darstellung); - Nassi-Schneiderman-Diagramm für jedes Programm; -
Übersetzerprotokoll (Compiler listing für jedes Programm); getrennte Lexikas für
Zustände, Meldungen Verknüpfungen/Schrittabellen und Steuerbefehle; reduzierte Lexikas,
z.B. nur mit den Wörtern, die in einem bestimmten Ablauf vorkommen; - die von CCITT
in den SDL-Empfehlungen genannten Matrizen für Zustand <--> Zustand, Zustand
<--> Ereignis und Zustand <--> Befehl; Übersicht aller Schrittabellen
STx mit allen aufgerufenen Routinen, mit (bei Entwicklungsbeginn geschätztem und
mit)tatsächlichem Source-Programmumfang (Zahl der Anweisungen), mit Summe der CHILL-Befehle
und Summe der Maschinenbefehle.
-
Als Besonderheiten sind außerdem noch folgende Unterlagen ausdruckbar:
Mit einem Ablaufverfolger können alle statischen Wege durch ein Modul selbsttätig
automatisch ermittelt und als eigene Nassi-Shneiderman-Darstellung ausgedruckt werden.
Dies geschieht Immer dann, wenn ein Modul neu erstellt oder geändert wird. Dabei
wird die Darstellung an den nicht durchlaufenden Stellen strukturerhaltend komprimiert.
-
Die in einem Modul durch die CHILL-Anweisungen aufgerufenen Maschinenbefehle
mit den zugehörigen Taktanzahlen, also Befehlsausführungszeiten, können ausgewiesen
werden.
-
- Durch Analyse der generierten Maschinenbefehle wird die Durchlaufzeit
sowie die durchschi#ttliche Befehlsausführungszeit eines Moduls ermittelt. Dieser
Wert ist z.B. von Bedeutung für den Modultest und die Dynamikbilanz.
-
Nach jedem Dialog analysiert und dokumentiert bei Bedarf das Hilfsgerät
alle Module, die bis zu diesem Zeitpunkt eingegeben wurden (authentische Dokumentation).
-
Durch die klare Trennung der beiden Bereiche CHILL-Anweisungen und
Definition/Übersetzung im ursprunglich in X-Sprache entwickelten Steuerprogramm
ist mit Hilfe von Übersetzungstabellen das Übersetzen in eine andere Sprache mit
dem Hilfsgerät möglich. Dabei ist gleichzeitig eine Terminologiekontrolle gegeben
, weil das Hilfsgerät an allen Einsatzstellen eines Codes den gleichen fremdsprachigen
Ausdruck benutzt.
-
17 Patentansprüche 12 Figuren
L e e r s e i t e