DE69328349T2 - System zur Kontrolle der Teilnehmer-Programmierbarkeit - Google Patents

System zur Kontrolle der Teilnehmer-Programmierbarkeit

Info

Publication number
DE69328349T2
DE69328349T2 DE69328349T DE69328349T DE69328349T2 DE 69328349 T2 DE69328349 T2 DE 69328349T2 DE 69328349 T DE69328349 T DE 69328349T DE 69328349 T DE69328349 T DE 69328349T DE 69328349 T2 DE69328349 T2 DE 69328349T2
Authority
DE
Germany
Prior art keywords
program
execution
subscriber
telecommunications network
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69328349T
Other languages
English (en)
Other versions
DE69328349D1 (de
Inventor
Brian Dean Freeman
Daryl M. Goins
Marc P. Kaplan
Jonathan F. Potter
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
AT&T Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AT&T Corp filed Critical AT&T Corp
Application granted granted Critical
Publication of DE69328349D1 publication Critical patent/DE69328349D1/de
Publication of DE69328349T2 publication Critical patent/DE69328349T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/36Statistical metering, e.g. recording occasions when traffic exceeds capacity of trunks
    • H04M3/362Traffic simulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2254Arrangements for supervision, monitoring or testing in networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54575Software application
    • H04Q3/54591Supervision, e.g. fault localisation, traffic measurements, avoiding errors, failure recovery, monitoring, statistical analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S379/00Telephonic communications
    • Y10S379/914Programmable telephone component

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Monitoring And Testing Of Exchanges (AREA)
  • Telephonic Communication Services (AREA)
  • Exchange Systems With Centralized Control (AREA)

Description

    FACHGEBIET
  • Die vorliegende Erfindung betrifft Fernmelde- bzw. Kommunikationsnetze. Insbesondere betrifft die Erfindung teilnehmerprogrammierbare Fernmelde- bzw. Kommunikationsnetze.
  • HINTERGRUND
  • Gegenwärtig sind viele geschäftliche Teilnehmer nicht in der Lage, öffentliche Fernmeldenetze vollständig zu nutzen, um Wettbewerbsvorteile zu erlangen, da Verbindungsbearbeitungs- bzw. Vermittlungsprogramme, die auf ihre bestimmten Bedürfnisse zugeschnitten werden könnten, in den heutigen öffentlichen Fernmeldenetzen nicht erlaubt sind.
  • Fernmeldenetzbetreiber bzw. -gesellschaften sind bisher zurückhaltend gewesen, wenn es darum ging, teilnehmerdefinierte Verbindungsbearbeitungsprogramme in ihren Netzen ausführen zu lassen, da negative Einwirkungen auf die Leistung ihrer Netze auftreten könnten, die durch die Abläufe dieser Programme verursacht werden. Beispielsweise kann ein teilnehmerdefiniertes Verbindungsbearbeitungsprogramm, das zu viele Netzbetriebsmittel verwendet, andere Teilnehmer daran hindern, ihre Verbindungen auszuführen. Damit teilnehmerdefinierte Programme akzeptabel werden, müssen demzufolge geeignete Sicherheitsmaßnahmen vorhanden sein, um Probleme im restlichen Netz zu verhindern.
  • Es wird außerdem Bezug genommen auf eine internationale Veröffentlichung WO92/116033, die ein System zur Erzeugung eines teilnehmerspezifischen Verbindungsbearbeitungsprogramms beschreibt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß der Erfindung wird ein Verfahren und ein System zum Prüfen eines teilnehmerspezifischen Verbindungsbearbeitungsprogramms bereitgestellt, das in einem Fernmeldenetz auszuführen ist, wie in den beigefügten Ansprüchen ausgeführt.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Fig. 1 zeigt ein Versorgungssteuersystem, das teilnehmerdefinierte Verbindungsbearbeitungsprogramme empfängt und statische Prüfvorgänge an diesen Programmen gemäß der Erfindung durchfuhrt.
  • Fig. 2 zeigt ein Flußdiagramm von Funktionen, die von dem Versorgungssystem gemäß Fig. 1 durchgeführt werden.
  • Fig. 3 zeigt einen zur Veranschaulichung dienenden Teilnehmerprüfdatensatz, der Referenzpunkte für Daten bereitstellt, die zur Programmausführung benötigt werden.
  • Fig. 4 zeigt ein Beispiel eines Prüfsystems, das dynamische Prüfvorgänge gemäß der vorliegenden Erfindung durchführt.
  • Fig. 5 ist ein Flußdiagramm, das die Funktionen darstellt, die von den Elementen gemäß Fig. 4 durchgeführt werden.
  • Fig. 6 ist eine Tabelle, die zur Veranschaulichung dienende Befehlsfolgen in zur Veranschaulichung dienende Knotentypen umsetzt.
  • Fig. 7 stellt einen Entscheidungsbaum eines zur Veranschaulichung dienenden teilnehmerdefinierten Verbindungsbearbeitungsprogramms dar.
  • Fig. 8 und 9 sind Flußdiagramme, die zusätzliche Funktionen darstellen, die von den Elementen gemäß Fig. 4 durchgeführt werden.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Fig. 1 zeigt ein Versorgungssystem, das teilnehmerdefinierte Verbindungsbearbeitungsprogramme empfängt und statische Prüfvorgänge an diesen Programmen gemäß der Erfindung durchführt. Ein teilnehmerdefiniertes Verbindungsbearbeitungsprogramm, das in einer anwendungsorientierten Sprache geschrieben sein kann, die von einem Netzcompiler erkannt werden kann, kann einen Satz von Verbindungsbearbeitungsanweisungen aufweisen, die zu Knotentypen gruppiert sein können, die unten ausführlicher beschrieben sind. Eine Folge von Knotentypen kann ausgeführt sein, um einen spezifischen Fernmeldedienst bereitzustellen, der auf Geschäftsbedürfnisse eines Teilnehmers zugeschnitten ist. Beispielsweise wünscht möglicherweise ein Heimdienstteilnehmer, ein Programm zu entwickeln, das eine Anmeldernummernsteuerungstabelle bzw. Tabelle zur Steuerung der Nummern der rufenden Teilnehmer verwendet, um ankommende Rufe zu differenzieren und verschiedene Dienststufen für verschiedene Klassen von rufenden Teilnehmern auf der Grundlage spezifischer Kriterien bereitzustellen.
  • Mit dem Versorgungssystem gemäß Fig. 1 kann das teilnehmerdefinierte Verbindungsbearbeitungsprogramm auf richtige Syntax, strukturelle Richtigkeit und logische Folgerichtigkeit geprüft werden. Das Versorgungssystem gemäß Fig. 1 weist ein Versorgungssteuersystem 102 auf, das ein Prozessor mit Speichereinrichtungen ist, der unter anderem einen Netzcompiler und ein Prüfsoftwarepaket enthält, das geeignet ist, die Syntax des Programms zu prüfen, das von Geräten des Kundenbereichs kommend empfangen wird, z. B. von einer Teilnehmerarbeitsstation 101, die ein Personalcomputer oder ein Endgerät mit verbesserten Grafikmöglichkeiten sein kann. Speichereinrichtungen in einer Ausführungsumgebung eines Fernmeldenetzbetreibers 110 sind mit dem Versorgungssteuersystem 102 verbunden. Diese Speichereinrichtungen können logisch oder physisch zwischen den folgenden Komponenten aufgeteilt sein: a) ein Satz von Grundelementen des Netzbetreibers 103, die Steuerungs- und Leitweglenkungslogik enthalten, die geeignet ist, Verbindungsbearbeitungsanweisungen an eine Vermittlungseinrichtung oder an einen Zusatzprozessor auf der Grundlage eines Satzes von Rufweglenkungsparametern zu formulieren; b) eine Teilnehmerdatenbasis 104, die eine Aufbewahrungsstelle für teilnehmereigene Information ist, z. B. für Teilnehmerrechnungslegungsdaten; und c) eine Netzbetreiberdatenbasis 105, die netzbetreiberspezifische Information, z. B. Netzleitweglenkungstabellen, Netzverwaltungsinformation und anwendungsspezifische Daten, z. B. Ansagedateien oder Rechnungsinformation enthält.
  • Zusätzliche Speichereinrichtungen, die im Versorgungssystem gemäß Fig. 1 vorhanden sind, sind eine Prüfdatenbasis 107, die Daten enthält, die zur Ausführung des Verbindungsbearbeitungsprogramms notwendig sind, und eine erweiterte Programmbibliothek 106, die das Verbindungsbearbeitungsprogramm des Teilnehmers speichert, nachdem es kompiliert und verbunden worden ist.
  • Fig. 2 ist ein Flußdiagramm, das die Funktionen darstellt, die vom Versorgungssystem gemäß Fig. 1 ausgeführt werden. Im Flußdiagramm gemäß Fig. 1 erzeugt ein Teilnehmer ein Verbindungsbearbeitungsquellprogramm unter Verwendung eines Textverarbeitungspakets oder einer grafischen Anwenderschnittstelle in der Teilnehmerarbeitsstation 101, wie im Schritt 201 angezeigt. Das Quellprogramm und zugehörige Datenstrukturen werden in das Versorgungssteuersystem 102 heruntergeladen, wo das Quellprogramm im Schritt 202 auf Syntaxfehler geprüft wird. Außerdem werden die Datenstrukturen, die dem Verbindungsbearbeitungsprogramm zugeordnet sind, im Schritt 202 auch mit vorbestimmten Schwellgrößen verglichen. Im Schritt 203 wird dann bestimmt, ob Fehler im Programm gefunden wurden. Wenn Fehler gefunden wurden, ist das Versorgungssteuersystem 102 in der Lage, im Schritt 204 eine Fehlermeldung für jeden Syntaxfehler im Programm und einen Abweichungsbericht zu erzeugen, wenn Datenstrukturen im Programm sich auf nichtvorhandene Felder beziehen oder Schwellgrößenempfehlungen überschreiten. Beispielsweise bewirken falsch geschriebene Programmierwörter und nichtdefinierte Felder in einer Programmieranweisung, daß eine Fehlermeldung erzeugt wird. Ebenso wird, wenn ein Programm eine Matrix oder eine Tabelle erzeugt, deren Größe die vom Netzbetreiber empfohlene Größe für Matrices oder Tabellen überschreitet, im Schritt 204 ein Abweichungsbericht erzeugt. Die Syntaxprüfungs- und Datenstrukturgrößenvergleichsfunktionalität kann durch ein Softwarepaket bereitgestellt werden, das in den Speicher einer Teilnehmerarbeitsstation 101 geladen wird, wenn der Netzbetreiber dieses Paket für Teilnehmer verfügbar macht.
  • Wenn keine Fehler festgestellt wurden, verwendet das Versorgungssteuersystem 102 im Schritt 205 netzbetreiberdefinierte, auf Regeln bezogene Software, um die strukturelle Korrektheit und logische Folgerichtigkeit des Programms zu prüfen. In diesem Schritt wird der logische Ablauf des Programms gründlich auf Mängel geprüft, z. B. auf potentielle Endlosschleifen. Außerdem ist die auf Regeln bezogene Software auch geeignet, auf überflüssigen Code hinzuweisen, der während des Ausführens des Programms zu einem erhöhten Netzbetriebsmittelverbrauch führt. Ferner wird das Verbindungsbearbeitungsprogramm analysiert, um sicherzustellen, daß beispielsweise Richtungswahlbäume richtig abgeschlossen werden, eine abschließende Bearbeitung von Verbindungen durchgeführt wird und eine Vorgabelogik für Zeitbegrenzungsbedingungen oder bei Nichtverfügbarkeit bestimmter Datenelemente, z. B. der Nummer des rufenden Teilnehmers, verfügbar ist was mitunter als automatische Nummernidentifikation (ANI) bezeichnet wird. Im Schritt 206 wird bestimmt, ob Fehler während des Prüfprozesses im Schritt 205 ermittelt wurden. Wenn Fehler ermittelt wurden, wird ein Fehlermeldungsbericht im Schritt 204 erzeugt. Wenn jedoch keine Fehler festgestellt wurden, kompiliert das Versorgungssteuersystem 102 im Schritt 207 das Teilnehmerprogramm. Man beachte, daß das Teilnehmerprogramm im Gegensatz zur Kompilierung auch interpretiert werden kann. Danach analysiert das Versorgungssteuersystem 102 im Schritt 208 das kompilierte Programm, um zu bestimmen, ob Teilnehmer- oder Netzbetreiberdaten für seine Ausführung benötigt werden. Wenn ja, kopiert das Versorgungssteuersystem 102 im Schritt 205 entsprechende Dateien von Teilnehmerdatenbasen 104 und von Netzbetreiberdatenbasen 105 in Prüfdatenbasen 107 und erzeugt oder aktualisiert einen Teilnehmerprüfdatensatz (nachstehend beschrieben). Beispielsweise wird eine Zipcodetabelle in eine Prüfdatenbasis 107 kopiert, wenn das Programm für eine Leitweglenkung von Rufen zu spezifischen Standorten auf der Grundlage einer ANI des rufenden Teilnehmers oder des zugehörigen Zipcodes geeignet ist.
  • Eine zur Veranschaulichung dienende Darstellung eines Teilnehmerprüfdatensatzes ist in Fig. 3 gezeigt. Der Prüfdatensatz weist ein Teilnehmer-ID-Feld 301 auf, dessen Inhalt einen Teilnehmer eindeutig identifiziert. Skriptsprache-ID 302 ist ein Feld, das verwendet wird, um ein spezifisches Verbindungsbearbeitungsprogramm zu identifizieren, wenn ein Teilnehmer mehrere zu prüfende Programme hat. Ein Versionsnummernfeld 303 wird verwendet, um verschiedene Versionen eines Programms zu unterscheiden, die zu verschiedenen Zeiten geprüft werden können. Im Feld 304 stellen Prüfdatenadresse 1 bis Prüfdatenadresse n Zeiger dar, die anzeigen, wo verschiedene Typen von Daten, die für die Ausführung des Programms benötigt werden, in einer Prüfdatenbasis 107 gespeichert sind.
  • Das Versorgungssteuersystem 102 erzeugt im Schritt 210 in Fig. 2 entsprechende Bibliotheksfunktionsaufrufe, um diese Netzbetreibergrundelemente mit dem kompilierten Programm zu verbinden, um ein vollständiges ausführbares Modul zu bilden, das in die Bibliothek 106 heruntergeladen wird, die erweiterte Programme enthält. Typen von Grundelementen, die dem teilnehmerdefinierten Verbindungsbearbeitungsprogramm hinzugefügt werden können, sind: a) Rechnungslegungsgrundelemente, die verwendet werden, um dem Teilnehmer Verbindungen in Rechnung zu stellen, die das Programm aufrufen; b) Netzverwaltungslogik, um das Netz über unnormale Verbindungsbearbeitungsbedingungen zu informieren; c) Umsetzungsgrundelemente zur Ableitung von herkömmlichen Zielnummern für spezielle Vorwahlnummern, beispielsweise 700-, 800- und 900er Nummern; und d) Steuerlogik, um sicherzustellen, daß Netzbetreiber nicht gegen die Federal Communications Commission (FCC) und die staatliche Public Utilities Commission (PUC) interLATA, intraLATA und internationale Verkehrsleitweglenkungsregeln und Regulierungen verstoßen.
  • Zusätzlich zu den statischen Prüfvorgängen, die oben beschrieben sind, können dynamische Prüfvorgänge durchgeführt werden. Fig. 4 zeigt ein zur Veranschaulichung dienendes Prüfsystem, das solche dynamischen Prüfvorgänge gemäß der Erfindung durchführt. Ein dynamischer Prüfvorgang weist in diesem Beispiel der Erfindung drei getrennte Prozesse auf. In einem ersten Prozeß, der in dieser Anmeldung als "funktionaler Prüfprozeß" bezeichnet wird, simulieren automatisierte Prüfwerkzeuge eine Ausführungsumgebung, in der der Teilnehmer einzelne Verbindungen auslösen kann, die geeignet sind, die Ausführung des Programms auszulösen, und es dem Teilnehmer erlauben, den Algorithmus zu überprüfen, und jedes spezifische Merkmal, das vom Programm bereitgestellt wird, zu prüfen. In einem zweiten Prozeß, der in dieser Anmeldung als "Verbindungsbearbeitungsweganalyseprozeß" bezeichnet wird, wird eine Menge von Netzbetriebsmitteln, die verwendet werden, um bestimmte Sequenzen von Befehlen im Programm zu verarbeiten, das zu einer endgültigen Herstellung einer Verbindung führt, vorausberechnet. Schließlich erzeugt in einem dritten Prozeß, der in dieser Anmeldung als "Leistungsprüfprozeß" bezeichnet wird, ein netzbetreiberspezifisches Verkehrssimulationsprogramm eine Simultan- Mehrfachverbindungsauslösungsumgebung für verschiedene Netzlastbedingungen, um die Knotentypen im Teilnehmerprogramm zu prüfen und Laufzeitausführungsparameterschwellwerte für das Programm abzuleiten.
  • In Fig. 4 verwendet ein Teilnehmer, der die funktionalen Fähigkeiten eines Verbindungsbearbeitungsprogramms zu prüfen wünscht, im Teilnehmerbereich befindliche Geräte, z. B. einen Fernsprechapparat 401 oder einen Computer 402 (mit einem geeigneten Wählprogramm), um eine Telefonnummer, die einer Fernverbindungsprüfeinheit (RCTU) 405 zugeordnet ist. Der Ruf wird von einem Fernmeldenetz 403 zur RCTU 405 vermittelt. Das Fernmeldenetz 403 kann die Vermittlungs-, Signalisier- und Übertragungseinrichtungen eines Ortsnetzbetreibers (LEC), eines Fernnetzbetreibers (IXC) oder beider aufweisen, die geeignet sind, Rufe zu entsprechenden Zielen zu leiteit.
  • In Fig. 4 ist eine RCTU 405 mit einem Fernmeldenetz 403 über ein Leitungsbündel 404 verbunden. Die RCTU 405 ist ein prozessorgesteuertes, softwarebetriebenes Vermittlungssystem, das mit einer automatischen Rufleiteinrichtung ausgerüstet ist, die geeignet ist, ankommende Rufe zu beantworten und ein Mischen oder Überbrücken von Verbindungen von einem ankommenden Kanal des Leitungsbündels 404 zu einem abgehenden Kanal des Leitungsbündels 406 zu ermöglichen. Der Betrieb der RCTU 405 wird von einer Systemsoftware gesteuert, die aus Befehlen besteht, um i) ankommende Rufe zu beantworten; ii) rufende Teilnehmer anzuweisen, spezifische Information einzugeben, um deren Verbindungen zu bearbeiten; iii) Verbindungen auszulösen; iv) Verbindungen zu übergeben; und v) Verbindungen zu überbrücken. Die RCTU 405 ist auch mit Plattenspeicherplatz ausgerüstet, in dem der Teilnehmerprüfdatensatz (in Fig. 3 dargestellt) für das Teilnehmerverbindungsbearbeitungsprogramm gespeichert wird. Die RCTU 405 kann beispielsweise ein AT&T Conversant Voice Information System sein.
  • Fig. 4 zeigt einen Vermittlungsstrukturemulator 407, der mit der RCTU 405 über ein Leitungsbündel 406 verbunden ist. Der Emulator 407 ist ein Prozessor mit Speichereinrichtungen, die Netzemulationssoftware speichern, die geeignet ist, die Vermittlungs- und Signalisierfunktionalität zu simulieren, die durch eines oder mehrere Fernsprechvermittlungssysteme, z. B. eine Amtsvermittlungseinrichtung oder eine Fernvermittlungseinrichtung oder beide, bereitgestellt wird. Insbesondere erzeugt ein Vermittlungsstrukturemulator 407 bei Empfang von Verbindungsauslösungssignalen (beispielsweise von einer RCTU 405) Vermittlungs- und Signalisiermeldungen, um die Ausführung bestimmter Befehle in einem Zusatzprozessor des Netzes auszulösen, um eine Verbindung zu bearbeiten. In diesem Beispiel ist der Zusatzprozessor eine Programmausführungseinrichtung 408, die in ihrem Speicher den Inhalt des erweiterten Programms speichert, das in der Bibliothek 106 gemäß Fig. 1 liegt.
  • Die Prüfdatenbasis 107 gemäß Fig. 1 ist mit der Programmausführungseinrichtung 408 verbunden. Die Datenbasis 107 speichert Daten, die von der Programmausführungseinrichtung 408 benötigt werden, um zu prüfende Programme auszuführen. Meldungen, die vom Vermittlungsstrukturemulator 407 erzeugt werden, werden in Protokolldateien 412 gespeichert. Ergebnisse des Prüfvorgangs, die im Vermittlungsstrukturemulator 407 und in der Programmausführungseinrichtung 408 durchgeführt werden, werden in einer Meßdatenbasis 409 gespeichert. Insbesondere werden Messungen, z. B. CPU-Zyklen pro Verbindungstyp, Bestätigungsmeldungsantwortzeit pro Verbindungstyp, Speichernutzung pro Verbindungstyp, und andere Messungen in einer Meßdatenbasis 409 gespeichert. Die Meßdaten und die Protokolldateien, die vom Vermittlungsstrukturemulator 407 im Verlaufe des Funktionsprüfprozesses erzeugt werden, können für den Teilnehmer zu Fehlersuchzwecken verfügbar gemacht werden.
  • Ein Lastgenerator 410 ist mit dem Vermittlungsstrukturemulator 407 über ein Leitungsbündel 414 verbunden. Der Lastgenerator 410 ist ein Prozessor, der in der Lage ist, Softwareprogramme auszuführen, die geeignet sind, verschiedene gleichzeitige simulierte Verbindungen zum Vermittlungsstrukturemulator 407 herzustellen. Außerdem ist der Lastgenerator 410 geeignet, Prüfdatenparameter für verschiedene Prüfszenarien zu erzeugen, um die Ausführung des Verbindungsbearbeitungsprogramms auszulösen und verschiedene Wahlmöglichkeiten innerhalb des Programms für verschiedene Verkehrsebenen auszulösen.
  • Der Lastgenerator 410 empfangt vom Prüfungssteuersystem 413 Anweisungen, um spezifische Typen von Prüfdaten zu erzeugen. Das Prüfungssteuersystem 413 ist ein Prozessor, der eingerichtet ist, a) um auf Wunsch die geeignete Programmversion, die im erweiterten Programm 106 (gemäß Fig. 1) gespeichert ist in die Programmausführungseinrichtung 408 herunterzuladen und b) um Prüfszenarien (unten beschrieben) zu entwickeln, um spezifische Teile eines Teilnehmerprogramms zu prüfen.
  • Ein dynamischer Prüfvorgang, der es einem Teilnehmer ermöglicht, die Merkmale und Funktionalität eines teilnehmerdefinierten Verbindungsbearbeitungsprogramms zu prüfen (nämlich der oben erwähnte "Funktionsprüfprozeß"), ist in Fig. 5 dargestellt. Dieser Prüfprozeß wird im Schritt 501 ausgelöst wenn der Teilnehmer eine Prüfverbindung zur RCTU 405 anmeldet. Der Ruf wird vom Fernmeldenetz 403 über einen Kanal des Leitungsbündels 404 zur RCTU 405 geleitet, die den Teilnehmer im Schnitt 502 auffordert, je nach Anwendungsfall einen Sicherheitscode, eine Teilnehmeridentifikationsnummer, eine Programmidentifikationsnummer und eine zugehörige Versionsnummer des Programms einzugeben. Bei Empfang dieser Information speichert die RCTU 405 diese in einem Puffer und bestimmt im Schritt 503 deren Gültigkeit, indem sie entsprechende Stücke der empfangenen Information mit einem Teil der Felder im Teilnehmerprüfdatensatz vergleicht, der in Fig. 3 dargestellt ist. Wenn die empfangene Information ungültig ist, wird die Verbindung im Schritt 504 beendet. Wenn die empfangene Information jedoch gültig ist, sendet die RCTU 405 im Schritt 505 ein Signal an das Prüfungssteuersystem 413, um die entsprechende Programmversion in RAM-Puffer in der Programmausführungseinrichtung 408 herunterzuladen. Im Schritt 506 fordert die RCTU 405 den Teilnehmer auf, die Nummer eines gerufenen Teilnehmers oder eine andere relevante Information einzugeben, z. B. eine AM, um die Ausführung des Verbindungsbearbeitungsprogramms auszulösen. Nach Empfang dieser Information löst die RCTU 405 im Schritt 507 eine Verbindung zum Vermittlungsstrukturemulator 407 aus. Im Schritt 508 überbrückt die RCTU 405 die Teilnehmerverbindung und die Verbindung, die an den Vermittlungsstrukturemulator 407 gerichtet ist, um einen Übertragungsweg vom Teilnehmer zum Vermittlungsstrukturemulator 407 zu erzeugen. Im Schritt 509 simuliert der Vermittlungsstrukturemulator 407 die Funktionen eines Fernsprechvermittlungssystems, das mit einem Zusatzprozessor im Dialog steht, der in diesem Beispiel durch die Programmausführungseinrichtung 408 dargestellt wird. Diese Dialogbetrieb weist auf a) Austausch von Verbindungsbearbeitungssignalisierungsmeldungen zwischen dem Vermittlungsstrukturemulator 407 und der Programmausführungseinrichtung 408; b) Fluß von Befehlen und Verbindungsbearbeitungsanweisungen zwischen dem Vermittlungsstrukturemulator 407 und der Programmausführungseinrichtung 408; und c) Lesen von Daten aus der Datenbasis 107, die benötigt werden, um eine Prüfverbindung zu bearbeiten. Meldungen, die vom Vermittlungsstrukturemulator 407 erzeugt werden, sind Einrichtmeldungen, die mindestens eine Zielnummer für eine simulierte Verbindung erfordern, Trennmeldungen, um Verbindungen zu beenden, oder andere Meldungen. Der Vermittlungsstrukturemulator 407 kann also mit dem Teilnehmer in Dialog treten, indem er Ansagen für die Teilnehmer bereitstellt, damit diese zusätzliche Information eingeben, damit die Verbindung bearbeitet werden kann. Im Schritt 510 stellt der Vermittlungsstrukturemulator 407 eine Kopie von jeder Verbindungsbearbeitungsmeldung her, z. B. von den Meldungen Transaction Capabilities Application Part (TCAP) oder ISDN User Part (ISUP), die zwischen m Vermittlungsstrukturemulator 407 und der Programmausführungseinrichtung 408 ausgetauscht werden. Der Emulator 407 speichert Meldungen in Protokolldateien 412. Fehler und Anomalien, die vom Vermittlungsstrukturemulator 407 erkannt oder von der Programmausführungseinrichtung 408 empfangen werden, werden in einer Fehlerdatei 411 gespeichert. Die Verbindungsbearbeitungsmeldungen und die Fehlerdateien können zu Fehlersuchzwecken an den Teilnehmer übergeben werden. Die Ausführung von Anweisungen in der Programmausführungseinrichtung 408, kombiniert mit simulierten Funktionen, die vom Vermittlungsstrukturemulator 407 ausgeführt werden, ermöglichen es dem Teilnehmer, einen Teil der Merkmale zu überprüfen, die vom Programm bereitgestellt werden. Beispielsweise kann ein Teilnehmer durch Analysieren einer Meldung, z. B. einer SETUP- (Einricht-)Meldung, die vom Vermittlungsstrukturemulator 407 als Antwort auf Anweisungen von der Programmausführungseinrichtung 408 erzeugt wird, den Leitweglenkungsalgorithmus eines Programms überprüfen.
  • Wenn der Teilnehmer mit Ergebnissen des Funktionsprüfprozesses zufrieden ist, wird das Verbindungsbearbeitungsprogramm dem vorher erwähnten Prozeß unterzogen, der als "Verbindungsbearbeitungsweganalyseprozeß" bezeichnet wird. Um die Arbeitsschritte dieses Prozesses zu erläutern, ist ein spezifisches Beispiel eines teilnehmerspezifischen Verbindungsbearbeitungsprogramms in Fig. 6 und 7 dargestellt. Dieses Programm ist durch einen vereinfachten, zur Darstellung dienenden Pseudocodesatz von Programmieranweisungen dargestellt, der in Tabelle 1 unten gezeigt ist. TABELLE 1
  • In diesem Fall wünscht der Teilnehmer, in einem öffentlichen Fernsprechwählnetz ein Programm zu entwickeln und zu installieren, um die folgenden Verbindungsbearbeitungsmöglichkeiten bereitzustellen. Der betreffende Teilnehmer wünscht, ankommende Rufe in zwei Gruppen zu klassifizieren, nämlich in Rufe, für die in der Teilnehmerdatenbasis 104 gemäß Fig. 1 ANI-Sätze vorhanden sind, und in Rufe, für die keine solchen ANI-Sätze vorhanden sind. Rufende Teilnehmer, die der ersten Gruppe von Rufen zugeordnet werden, sind auf der Grundlage bisheriger Geschäftsverbindungen mit dem Teilnehmer weiterhin als bevorzugte Teilnehmer und gute Teilnehmer zu klassifizieren. Die Programmieranweisungen, die 'case 3' (dem Fall 3) in Tabelle 1 zugeordnet sind, stellen zur Darstellung dienende Anweisungen dar, die verwendet werden können, um den oben erwähnten Teilnehmerklassifikationsprozeß auszuführen. Dieser Prozeß wird außerdem vom ANI-Steuerungsentscheidungsknotentyp 611 in Fig. 6 und 703 in Fig. 7 dargestellt.
  • Außerdem wünscht der Teilnehmer, daß Rufe von "bevorzugten Teilnehmern" zunächst von einer speziellen Gruppe von Mitarbeitern überprüft werden, bevor diese Rufe an einen spezifischen Mitarbeiter weitergeleitet werden, z. B. einen Mitarbeiter, der entweder den letzten Ruf von diesem Teilnehmer bearbeitet hat oder ein Spezialist für diesen betreffenden Dienst- oder Warentyp des bevorzugten Kunden ist. Zur Veranschaulichung dienende, vereinfachte Programmieranweisungen für diesen Überprüfungs- und Weiterleitungsprozeß sind in Tabelle 1 unter 'case 4' (Fall 4) dargestellt. Der Knotentyp, der diesen Anweisungen zugeordnet ist, ist durch einen Beantwortungs- und Rufweiterleitungsknoten 612 in Fig. 6 und 704 in Fig. 7 dargestellt.
  • Rufe von "guten Kunden" werden turnusmäßig verschiedenen Gruppen von Mitarbeitern zugeordnet, wie durch die zur Veranschaulichung dienenden Programmieranweisungen gezeigt, die 'case 5' (dem Fall 5) in Tabelle 1 zugeordnet sind. Der Rufzuordnungsprozeß wird auch durch den Rufzuordnungsknoten 613 in Fig. 6 und 705 in Fig. 7 dargestellt.
  • Ein Teilnehmer, der während der Geschäftszeit einen Ruf auslöst, der der ANI unbekannt ist, wird aufgefordert, zusätzliche Information, z. B. einen Zipcode, bereitzustellen, der bewirkt, daß der Ruf an eine spezifische Gruppe von Mitarbeitern geleitet wird, die beauftragt sind, Rufe zu bearbeiten, die von Fernsprechapparaten ausgelöst werden, bei denen der Zipcode vom Teilnehmer eingegeben wird. Die zur Veranschaulichung dienenden Anweisungen von 'case 11' (Fall 11) in Tabelle 1 können verwendet werden, um zu bestimmen, ob der Ruf von dem Teilnehmer während der Geschäftszeit empfangen worden ist oder nicht. Die Anweisungen von 'case 9' (Fall 9) in Tabelle 1 können verwendet werden, um den Rufaufforderungsprozeß zu implementieren. Der Zeitentscheidungsprozeß ist als Zeitentscheidungsknoten 614 und 709 in Fig. 6 bzw. 7 dargestellt. Ebenso ist die Rufaufforderungsfähigkeit als Rufaufforderungsknoten 616 in Fig. 6 und 711 in Fig. 7 dargestellt. Außerhalb der Geschäftszeit würde eine Gefälligkeitsansage für rufende Teilnehmer, die der ANI unbekannt sind, bereitgestellt werden, die sie beispielsweise auffordert, während der Geschäftszeit zurückzurufen oder eine Telefonnummer zu hinterlassen, unter der sie zurückgerufen werden können. Die Gefälligkeitsansagsfähigkeit ist als Gefälligkeitsansageknoten 615 und 710 in Fig. 6 bzw. 7 dargestellt und kann unter Verwendung der vereinfachten Anweisungen unter 'case 13' (Fall 13) in Tabelle 1 implementiert werden. Schließlich zeigen "case 6, 7 und 8" (Fall 6, 7 und 8) in Tabelle 1 Leitweglenkungsanweisungen, die auch durch Leitwegknoten 617 in Fig. 6 und 706, 707, 708, 712 und 713 in Fig. 7 dargestellt werden.
  • Fig. 6 zeigt eine Tabelle, die Gruppen oder Sequenzen von Befehlen im Programm von Tabelle 1 in spezifische, zur Veranschaulichung dienende Knotentypen umsetzt. Ein Knotentyp ist eine Sequenz von Programmieranweisungen, die normalerweise zusammen betrachtet werden und eine spezifische Verbindungsbearbeitungsfunktionalität definieren. Ein Knotentyp kann als Programmierwort angesehen werden, das eine Kette von Maschinensprachbefehlen aufweist, die eine spezifische Verbindungsbearbeitungsfunktion definieren. Wie in Fig. 6 gezeigt, entsprechen die Sätze von Anweisungen 601, 602, 603, 604, 605, 606 und 607 den Knotentypen 611, 612, 613, 614, 615, 616 bzw. 617. In Fig. 6 weist ein Rufaufforderungsknoten 616 eine Sequenz von Befehlen "Ansage wiedergeben", "Ziffern ansammeln" und "Wählen" auf. Ebenso weist ein Verbindungszuweisungsknotentyp für turnusmäßige Bearbeitung 613 eine Kette von Befehlen auf a) mit einer zugeordneten Variablen "inkrementieren"; b) "wenn, dann, sonst" unter einer Bedingung, die über diese Variable vorausgesagt wird; c) einer Tabelle mit dieser Variablen "wählen" und d) "weiterleiten" oder "zum nächsten Knoten gehen".
  • Durch Zuordnen entsprechender Knotentypen zu Sequenzen von Befehlen im Programm gemäß Tabelle 1 kann also das Programm durch einen Entscheidungsbaum, z. B. den Entscheidungsbaum, der in Fig. 7 gezeigt ist, dargestellt werden. Der Entscheidungsbaum gemäß Fig. 7 weist mehrere Zweige auf, die als "Verbindungsbearbeitungswege" bezeichnet werden, die zu einer endgültigen Entscheidung einer Verbindung fahren. Das Verbindungsbearbeitungsprogramm, wie es vom Entscheidungsbaum gemäß Fig. 7 dargestellt wird, weist einen Verbindungsauslösungsknoten 701, einen Rechnungslegungsknoten 702 auf, der von einem ANI-Steuerungsentscheidungsknoten 703 gefolgt wird. Der Rechnungslegungsknoten ist eines der Netzbetreibergrundelemente, die dem teilnehmerdefinierten Programm hinzugefügt sind. Die Funktion dieses Knotens besteht darin, für Rechnungslegungszwecke Meßdaten einzurichten, die für Verbindungen zu sammeln sind, die eine Ausführung des Programms aufrufen. Abzweigungen vom ANI- Steuerungsentscheidungsknoten 703 sind: a) ein Beantwortungs- und Rufweiterleitungsknoten 704, der zu Leitweglenkungsknoten 714 und 715 führt; b) ein Verbindungszuordnungsknoten 705, der zu Leitweglenkungsknoten 706, 707 und 708 führt; und c) ein Zeitentscheidungsknoten 709, der entweder zu einem Gefälligkeitsansageknoten 710 oder zu einem Rufaufforderungsknoten 711 fuhrt, der von Leitweglenkungsnoten 712 und 713 gefolgt wird. Jede logische Kette von Knoten, die als "Verbindungsbearbeitungsweg" bezeichnet wird, führt zu einer endgültigen Verbindungsentscheidung im Entscheidungsbaum gemäß Fig. 7.
  • Der "Verbindungsbearbeitunsgweganalyseprozeß" eines teilnehmerdefinierten Verbindungsbearbeitungsprogramms, z. B. des Programms, das in Fig. 6 und 7 dargestellt ist, wird im Schritt 801 gemäß Fig. 8 ausgelöst, wobei das Prüfungssteuersystem 413 das ausführbare Modul analysiert, um Sequenzen von Befehlen im Programm mit spezifischen Knotentypen zu korrelieren, wie in Fig. 6 dargestellt. Die Software, die im Speicher des Prüfungssteuersystems 413 geladen ist, ist eingerichtet, um Sequenzen von Befehlen zu erkennen und spezifische Knotentypen spezifischen Sequenzen von Befehlen zuzuordnen, wie in Fig. 6 dargestellt. Danach leitet das Prüfungssteuersystem 413 im Schritt 802 einen Entscheidungsbaum ab, wie das System, das in Fig. 7 dargestellt ist, von der Sequenz von Knotentypen, die im Programm vorhanden sind. Das Prüfungssteuersystem 413 verwendet im Schritt 803 zurückliegende Daten des Fernmeldenetzbetreibers, um Vorausberechnungen des Netzbetriebsmittelverbrauchs zuzuweisen, der als Ergebnis der Ausführung jedes Knotentyps im Entscheidungsbaum erwartet wird. Danach zählt das Prüfungssteuersystem 413 im Schritt 804 für jeden Verbindungsbearbeitungsweg die vorausberechnete Menge an Netzbetriebsmitteln, die zum Aufbau einer Verbindung auf diesem Weg benötigt wird. Die Verbindungsbearbeitungswege, die entweder spezielle Knotentypen aufweisen oder eine große Menge von Netzbetriebsmitteln verwenden, werden im Schritt 805 für eine zusätzliche Prüfung markiert. Ein Knoten wird als spezieller Knotentyp betrachtet, wenn die Vorausberechnung der Netzbetriebsmittel für diesen Knotentyp mit Wahrscheinlichkeit außerhalb der vorbestimmten Werte liegt. Beispielsweise werden der Zuordnungsknoten für turnusmäßige Bearbeitung und der Beantwortungs- und Rufweiterleitungsknoten als spezielle Knotentypen angesehen, da sie ungewöhnliche Mengen von Netzbetriebsmitteln erfordern, z. B. eine Bearbeitung einer großer Anzahl von Tabelleneinträgen oder eine Verarbeitung einer großen Anzahl von Variablen.
  • Das Prüfungssteuersystem 413 im Schritt 806 analysiert jeden Verbindungsbearbeitungsweg und richtet entsprechende Befehle an den Lastgenerator 210. Der Lastgenerator 210 erzeugt entsprechende Prüfdatenparameter, die die Ausführung einer spezifischen Sequenz von Knotentypen erzwingen. Wenn beispielsweise kein ANI-Datensatz für einen spezifischen Bereichsknoten in der Prüfdatenbasis 107 gespeichert ist, erzeugt der Lastgenerator 210 ANI-Daten für diese spezifische Ortskennzahl, um den Rufaufforderungsknoten 711 zu prüfen, der, wie oben erwähnt, nur für Verbindungen ausgeführt wird, die der ANI unbekannt sind. Ebenso sendet das Prüfungssteuersystem 413 entsprechende Anweisungen an den Lastgenerator 210, um die entsprechenden Prüfdaten für den Zeitbereich zu erzeugen, die bewirken, daß für den rufenden Teilnehmer eine Ansage wiedergegeben wird.
  • Um zu ermöglichen, daß die Prüfumgebung eine echte Ausführungsplattform reflektiert, muß die Prüfumgebung Verkehr simulieren, der Fernsprechverbindungen, die eine Ausführung des Programms aufrufen, und Fernsprechverbindungen, die keine Ausführung des Programms aufrufen, aufweist. Das Prüfungssteuersystem 413 erzeugt demzufolge im Schritt 807 Anweisungen, die vom Lastgenerator 210 auszuführen sind, um Daten zu erzeugen, die bewirken, daß der Vermittlungsstrukturemulator 207 ein Gemisch aus simulierten Verbindungen empfängt. Ein Teil der Verbindungen in diesem Gemisch erfordern die Ausführung des Programms, während andere Verbindungen in dem Gemisch die Rolle eines anderen Teilnehmerverkehrs im Netz spielen, der keine Ausführung des Programms erfordert. Verbindungen, die keine Ausführung des Programms erfordern, werden nachstehend als "Hintergrundlast" bezeichnet. Außerdem erzeugt das Prüfungssteuersystem 413 Anweisungen für den Lastgenerator 210, um für jeden Verbindungsbearbeitungsweg eine Prüfumgebung zu erzeugen, die als "Prüfszenario" bezeichnet wird. Die Charakteristika jedes Prüfszenarios können unter anderem aufweisen: a) die Anzahl der gleichzeitigen Fernsprechverbindungen, die ausgelöst werden können; b) ein Gemisch von Prüfdaten, die eine gleichzeitige Ausführung mehrerer Verbindungsbearbeitungswege auslösen; c) die Größe der Hintergrundlast; und d) die Länge der Prüfperiode. Beispielsweise haben markierte Verbindungsbearbeitungswege Prüfszenarien, in denen das teilnehmerdefinierte Programm für längere Zeitperioden mit einer höheren Hintergrundlast und einer größeren Anzahl von gleichzeitigen Fernsprechverbindungen geprüft wird. Im Schritt 808 gibt das Prüfungssteuersystem 413 alle Anweisungen und Prüfszenarien an den Lastgenerator 210 weiter, der die empfangenen Anweisungen ausführt, um (beispielsweise unter Verwendung eines stochastischen Prozesses) Prüfdaten für jedes Prüfszenario zu erzeugen, und diese in seinen internen Speichereinrichtungen speichert.
  • Wenn für das Programm Prüfdaten erzeugt worden sind, wird der Prozeß des Prüfens der Leistung des Programms unter verschiedenen Lastbedingungen im Schritt 901 in Fig. 9 ausgelöst, wobei dann der Lastgenerator 210 die Auslösung mehrerer gleichzeitiger Verbindungen zum Vermittlungsstrukturemulator 207 unter Verwendung eines Testszenarios für einen bestimmten Verbindungsbearbeitungsweg simuliert. Die Anzahl der gleichzeitigen Verbindungen, die für ein bestimmtes Testszenario ausgelöst werden, kann während des Leistungsprüfprozesses variieren, um die normale und die Spitzenverkehrslast zu emulieren, die bei einem Netzbetreiber auftreten. Im Schritt 902 erzeugen der Vermittlungsstrukturemulator 207 und die Programmausführungseinrichtung 208 und entsprechende Befehle und Verbindungsbearbeitungsmeldungen und senden sich diese gegenseitig zu, um jede simulierte Verbindung zu bearbeiten. Im Schritt 903 zeichnet der Vermittlungsstrukturemulator 207 für jeden Befehl und für jede Verbindungsbearbeitungsmeldung die Anzahl der CPU-Zyklen und den Speicherplatz auf, der zur Bearbeitung des Befehls und zur Erzeugung der Meldung zugeordnet wird. Im Schritt 904 bestimmt der Lastgenerator 210, ob alle Prüfszenarien für alle Verbindungsbearbeitungswege ausgeführt worden sind. Wenn nicht alle Prüfszenarien ausgeführt worden sind, werden die Schritte 901 bis 903 wiederholt, bis alle Prüfszenarien ausgeführt sind. Dann zählt der Vermittlungsstrukturemulator 206 im Schritt 905 die verwendeten CPU-Zyklen und den für jeden Verbindungsbearbeitungsweg zugeordneten Speicherplatz und berechnet eine durchschnittliche CPU-Ausführungsszeit für eine Verbindung, die die Ausführung des Programms aufruft. Diese Information wird an das Versorgungssteuersystem 102 weitergeleitet, das diese Information verwendet, um im Schritt 906 Schwellwerte für CPU-Zyklen und Speicherzuweisungen zur Ausführung des Programms im Betreibernetz zuzuordnen.
  • Zwei Anordnungen können benutzt werden, um die Schwellwerte zu bestimmen, die eine Verbindungsbeendigung auslösen, wenn diese Schwellwerte für Verbindungen, die das Programm aufrufen, überschritten werden. In der ersten Anordnung werden der höchste Wen für CPU-Zyklen und Speicherplatzzuweisung, der vom Zählwert abgeleitet wird, als Schwellwerte für die Programmausführung für jede Verbindung verwendet. Wenn insbesondere diese Schwellwerte für eine bestimmte Verbindung, die die Ausführung des Programms aufruft, überschritten werden, wird die Verbindung beendet, um einen negativen Einfluß auf die Bearbeitung von Verbindungen anderer Teilnehmer im Fernmeldenetz zu vermeiden.
  • In der zweiten Anordnung wird jedem Teilnehmer ein Teil der CPU-Ausführungszeit in einem Prozessor (z. B. in der Programmausführungseinrichtung 208) zugewiesen, die der Programmausführung auf der echten Ausführungsplattform des Fernmeldenetzbetreibers zugeordnet ist. Der Teil der CPU- Ausführungszeit, die dem Teilnehmer zugewiesen wird, kann berechnet werden als die Anzahl von Verbindungen pro Sekunde, die der Teilnehmer erwartet, um eine Ausführung des Programms aufzurufen, geteilt durch die Anzahl der CPU-Zyklen, die für den betriebsmittelintensivsten Verbindungsbearbeitungsweg im Programm abgeleitet sind. Wenn der Teilnehmer seine zugewiesene CPU- Ausführungszeit überschreitet, muß er sich mit einer längerer Nachwählverzögerung für seinen Verkehr abfinden, obwohl das Netz nicht überlastet ist. Obwohl der Schwellwert überschritten wird, können Verbindungen, die das Programm aufrufen, hergestellt werden, da das Netz Ersatzbearbeitungsbetriebsmittel hat, die Teilnehmern zugewiesen werden, die den Prozessor gemeinsam benutzen, beispielsweise auf der Grundlage, wer zuerst kommt, wird zuerst bedient, um eine Beendigung von Verbindungen zu vermeiden, wenn der Netzbetreiber verfügbare freie Netzbetriebsmittel hat. Wenn der Netzbetreiber bei Netzspitzenverkehrslast seine zugewiesene CPU-Ausführungszeitschwelle überschreitet, werden Verbindungen, die das Programm aufrufen, vor der Programmausführung beendet, um zu verhindern, daß andere Teilnehmer durch die Ausführung des Programms negativ beeinflußt werden.

Claims (18)

1. Verfahren zum Prüfen eines teilnehmerspezifischen Verbindungsbearbeitungsprogramms, das in einem Fernmeldenetz (403) auszuführen ist, wobei das Verfahren die Schritte aufweist:
Empfangen eines teilnehmerspezifischen Verbindungsbearbeitungs-programms von Geräten in Teilnehmerbereich in einem Fernmeldenetz (403); dadurch gekennzeichnet, daß das Verfahren ferner die Schritte aufweist:
Simulieren einer Verbindungsbearbeitungsumgebung, die eine Ausführung des Programms für verschiedene simulierte Verkehrsebenen im Fernmeldenetz (403) erfordert; und
Messen der Verwendung der Netzbetriebsmittel in der simulierten Verbindungsbearbeitungsumgebung.
2. Verfahren nach Anspruch 1, ferner mit den Schritten:
Ableiten von Netzbetriebsmittelverwendungsschwellwerten für das Programm; und
Zuweisen der Schwellwerte zu dem Programm, wenn das Programm zur Ausführung in das Fernmeldenetz (403) geladen wird.
3. Verfahren zur Ausführung eines vorher nach dem Verfahren gemäß Anspruch 2 geprüften teilnehmerspezifischen Verbindungsbearbeitungs-programms in einem Fernmeldenetz (403), mit den Schritten:
Beenden von Verbindungen, die das Programm aufrufen, wenn die Schwellwerte durch Aufrufen des Programms überschritten werden.
4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt des Simulierens der Verbindungsbearbeitungsumgebung die Schritte aufweist:
Anlegen eines oder einer gleichzeitigen Vielzahl von Verbindungsauslösungssignalen an einen ersten Prozessor, der eine Vermittlungsstruktur emulgiert;
Erzeugen von Verbindungsbearbeitungsmeldungen und Programmanweisungen in dem ersten Prozessor als Antwort auf das Anlegen der Verbindungs-auslösungssignale;
Weiterleiten der Bearbeitungsmeldungen und der Programmanweisungen an den zweiten Prozessor, um eine Ausführung des Verbindungsbearbeitungs-programms in dem zweiten Prozessor auszulösen;
Empfangen von Antwort- und Bestätigungsmeldungen in dem ersten Prozessor von dem zweiten Prozessor; und
Bewerten der in dem ersten Prozessor empfangenen Antwort- und Bestätigungsmeldungen, um ein Ausführungsverhalten des Programms zu beurteilen.
5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Verkehrsebenen ein Gemisch aus Verbindungen aufweisen, die eine Ausführung des Programms aufrufen.
6. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt des Messens der Verwendung der Netzbetriebsmittel folgenden Schritt aufweist:
Feststellen, wie viele CPU-Zyklen und wieviel Speicherplatz verwendet werden, um mindestens eine Verbindung zu bearbeiten, die das Programm aufruft.
7. Verfahren nach Anspruch 6, wobei der Schritt, der feststellt, wie viele CPU-Zyklen und wieviel Speicherplatz verwendet werden, um mindestens eine Verbindung zu bearbeiten, die das Programm aufruft ferner den Schritt des Bestimmens eines Abrechnungstarifs für die Verbindung aufweist.
8. Verfahren nach einem der vorhergehenden Ansprüche, ferner mit den Schritten:
Kompilieren des Programms und Binden des Programms zu vorbestimmten Grundelementen in dem Fernmeldenetz;
Beurteilen, ob das Programm in dem Fernmeldenetz richtig ausgeführt werden kann; und
Erzeugen von Prüfdaten, um eine Ausführung jeder Verbindungseinrichtung in dem Programm auszulösen.
9. Verfahren nach Anspruch 8, wobei der Beurteilungsschritt die Schritte aufweist:
a) Sicherstellen, daß eine Ausführung des Programms zu zulässigen Leitweglenkungszielen führt;
b) Überprüfen, ob das Programm für eine endgültige Einrichtung jeder Verbindung sorgt, die die Ausführung des Programms aufruft; und
c) Prüfen des Programms auf logische Zuverlässigkeit und Folgerichtigkeit.
10. Verfahren nach Anspruch 9, wobei nach einer Bestimmung, nämlich daß das Programm irgendeinen der Schritte a), b) und c) nicht erfüllt, eine Fehlermeldung erzeugt wird.
11. Verfahren nach Anspruch 8, 9 oder 10, wobei der Beurteilungsschritt ferner die Schritte aufweist:
Empfangen von Verbindungsauslösungssignalen von einem Rufenden; und
Auffordern des Rufenden, Information einzugeben, um eine Aktivierung der Simulation der Verbindungsbearbeitungsumgebung auszulösen.
12. Verfahren nach einem der Ansprüche 8 bis 11, wobei der Schritt des Erzeugens von Prüfdaten die Schritte aufweist:
Umsetzen von Sequenzen von Anweisungen in dem Programm in spezifische Knotentypen;
Feststellen von Bedingungen, die eine Ausführung jedes Knotentyps bewirken; und
Simulieren der Bedingungen für jeden Knotentyp.
13. Verfahren nach einem der Ansprüche 8 bis 12, wobei der Beurteilungs-schritt die Schritte aufweist:
Prüfen des Programms auf Syntaxfehler;
Untersuchen jeder Datenstruktur in dem Programm, um zu bestimmen, ob ein charakteristisches Merkmal der Datenstruktur eine vorbestimmte Schwelle überschreitet;
Feststellen von überflüssigem Code und Logikfehlern und
Ermitteln, ob das Programm eine Vorgabelogik für Zeitbegrenzungsbedingungen und eine Abschlußbehandlung für jeden Verbindungsbearbeitungsweg aufweist.
14. System zum Prüfen eines teilnehmerspezifischen Verbindungs-bearbeitungsprogramms, das in einem Fernmeldenetz (403) auszuführen ist, wobei das System aufweist:
eine Einrichtung in einem Fernmeldenetz (403) zum Empfangen eines für teilnehmerspezifischen Verbindungsbearbeitungsprogramms von Geräten im Teilnehmerbereich dadurch gekennzeichnet, daß das System ferner aufweist:
eine Einrichtung zum Simulieren einer Verbindungsbearbeitungsumgebung, die eine Ausführung des Programms für verschiedene simulierte Verkehrsebenen im Fernmeldenetz (403) erfordert; und
eine Einrichtung zum Messen der Verwendung von Netzbetriebsmitteln in der simulierten Verbindungsbearbeitungsumgebung.
15. System nach Anspruch 14, wobei die Einrichtung zum Simulieren der Verbindungsbearbeitungsumgebung aufweist:
eine Einrichtung zum Erzeugen von Prüfdaten für das Programm; und
eine Einrichtung zum Emulieren einer Auslösung von gleichzeitigen Verbindungen, deren Bearbeitung eine Ausführung des Programms unter Verwendung der Prüfdatenparameter erfordert, um Laufzeitausführungs-parameterschwellwerte für das Programm abzuleiten.
16. System zur Ausführung eines nach dem System gemäß Anspruch 15 geprüften teilnehmerdefinierten Verbindungsbearbeitungsprogramms in einem Fernmeldenetz (403), mit:
einer Einrichtung zum Zuweisen der Laufzeitausführungsparameter-schwellwerte zu dem Programm in dem Fernmeldenetz (403); und
eine Einrichtung zum Beenden von Verbindungen, die das Programm aufrufen, wenn die Schwellwerte überschritten werden.
17. System nach Anspruch 15, wobei die Einrichtung zum Erzeugen aufweist:
eine Einrichtung zum Feststellen von Knotentypen in dem Programm, wobei jeder Knotentyp eine vorbestimmte Sequenz von Anweisungen aufweist;
eine Einrichtung zum Feststellen von Bedingungen, die eine Ausführung jedes Knotentyps bewirken;
eine Einrichtung zum Simulieren der Bedingungen für jeden Knotentyp.
18. System nach Anspruch 14, 15 oder 17, in dem die Simulationseinrichtung eine Einrichtung zum Auslösen einer Vielzahl von gleichzeitigen simulierten Verbindungen aufweist.
DE69328349T 1992-12-28 1993-12-06 System zur Kontrolle der Teilnehmer-Programmierbarkeit Expired - Fee Related DE69328349T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/997,413 US5390232A (en) 1992-12-28 1992-12-28 System for control of subscriber progragmmability

Publications (2)

Publication Number Publication Date
DE69328349D1 DE69328349D1 (de) 2000-05-18
DE69328349T2 true DE69328349T2 (de) 2000-11-09

Family

ID=25543989

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69328349T Expired - Fee Related DE69328349T2 (de) 1992-12-28 1993-12-06 System zur Kontrolle der Teilnehmer-Programmierbarkeit

Country Status (5)

Country Link
US (1) US5390232A (de)
EP (1) EP0608614B1 (de)
JP (1) JPH06284189A (de)
CA (1) CA2103236C (de)
DE (1) DE69328349T2 (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6084943A (en) * 1992-05-19 2000-07-04 Rockwell International Corp. Diagnostic device for a telephone system
US5588048A (en) * 1992-07-31 1996-12-24 800 Adept, Inc. Geographically mapped telephone routing method and system
US5805689A (en) * 1992-07-31 1998-09-08 800 Adept, Inc. Geographically mapped telephone routing method and system
US6385312B1 (en) * 1993-02-22 2002-05-07 Murex Securities, Ltd. Automatic routing and information system for telephonic services
US5848131A (en) * 1993-02-22 1998-12-08 Murex Securities, Ltd. Automatic information and routing system for telephonic services
US5982868A (en) * 1993-02-22 1999-11-09 Murex Securities, Ltd. Automatic routing and information system for telephonic services
US5506897C1 (en) * 1993-02-22 2001-12-11 Murex Securities Ltd Automatic routing system for telephonic services
US5629878A (en) * 1993-10-07 1997-05-13 International Business Machines Corporation Test planning and execution models for generating non-redundant test modules for testing a computer system
JP2812188B2 (ja) * 1994-03-08 1998-10-22 日本電気株式会社 蓄積プログラム制御電子交換機のシミュレート試験方法
US6163597A (en) * 1995-02-10 2000-12-19 Bell Atlantic Network Services, Inc. Method and apparatus for routing calls placed to a virtual telephone number
US5835566A (en) * 1996-03-29 1998-11-10 Telecom Technologies, Inc. System and method for providing in-band and out-of-band testing of telecommunications network components
US6028858A (en) * 1996-06-07 2000-02-22 Cisco Tenchology, Inc. ANI-dormant connections for frame relay
US5901214A (en) * 1996-06-10 1999-05-04 Murex Securities, Ltd. One number intelligent call processing system
US6157640A (en) * 1996-06-25 2000-12-05 Ericsson Inc Providing feature logic control in parallel with voice over a single subscriber access
US5778049A (en) * 1996-06-26 1998-07-07 Mci Communications Corporation Service engineering template
US5809108A (en) * 1996-09-27 1998-09-15 Mci Communications Corporation Automated test call generation and execution system
US6591303B1 (en) * 1997-03-07 2003-07-08 Sun Microsystems, Inc. Method and apparatus for parallel trunking of interfaces to increase transfer bandwidth
US5983348A (en) 1997-09-10 1999-11-09 Trend Micro Incorporated Computer network malicious code scanner
US6173244B1 (en) * 1998-04-09 2001-01-09 Lucent Technologies, Inc. System and method for testing a switching system in a telecommunication network
JPH11331376A (ja) * 1998-05-08 1999-11-30 Fujitsu Ltd 電子交換機の試験手順実行方法及びそのシステム
US7562134B1 (en) 2000-10-25 2009-07-14 At&T Intellectual Property I, L.P. Network traffic analyzer
US7039577B1 (en) 2000-10-25 2006-05-02 Bellsouth Intellectual Property Corp. Network traffic analyzer
US20020097694A1 (en) * 2001-01-19 2002-07-25 Struhsaker Paul F. Method for establishing a prioirity call in a fixed wireless access communication system
AU7205300A (en) * 2000-12-06 2002-06-13 Alcatel Versatile network termination unit and line interface
EP1217811A1 (de) * 2000-12-19 2002-06-26 Tektronix, Inc. Verfahren zum Emulieren eines Terminals und Testgerät zum Testen eines Telekommunikationsnetzwerks mit Funktionswahl mittles Windows Benutzerschnittstelle
KR20040080844A (ko) * 2003-03-14 2004-09-20 주식회사 안철수연구소 정적 분석을 이용한 악성 스크립트 감지 방법
US8520511B2 (en) * 2003-09-11 2013-08-27 Qualcomm Incorporated Automatic handling of incoming communications at a wireless device
US7904882B2 (en) * 2003-10-16 2011-03-08 Salesforce.Com, Inc. Managing virtual business instances within a computer network
US7043435B2 (en) * 2004-09-16 2006-05-09 Sbc Knowledgfe Ventures, L.P. System and method for optimizing prompts for speech-enabled applications
US8387052B2 (en) * 2005-03-14 2013-02-26 Qnx Software Systems Limited Adaptive partitioning for operating system
US7664041B2 (en) * 2005-05-26 2010-02-16 Dale Trenton Smith Distributed stream analysis using general purpose processors
KR20090020558A (ko) 2006-03-27 2009-02-26 닐슨 미디어 리서치 인코퍼레이티드 무선통신장치에 표현되는 미디어 컨텐츠의 미터링 방법 및 시스템
US8056090B2 (en) * 2007-06-29 2011-11-08 International Business Machines Corporation Reducing layering overhead in collective communication operations
US8503991B2 (en) * 2008-04-03 2013-08-06 The Nielsen Company (Us), Llc Methods and apparatus to monitor mobile devices
US8396000B2 (en) * 2009-11-24 2013-03-12 At & T Intellectual Property I, Lp Revenue assurances proactive testing method and system
US8756573B2 (en) * 2012-07-06 2014-06-17 Amazon Technologies, Inc. Digital item ingestion process
US10404759B1 (en) 2016-06-23 2019-09-03 8×8, Inc. Client-specific control of shared telecommunications services
US10142329B1 (en) * 2016-06-23 2018-11-27 8×8, Inc. Multiple-factor authentication
US10348902B1 (en) 2016-06-23 2019-07-09 8X8, Inc. Template-based management of telecommunications services
US11044365B1 (en) 2016-06-23 2021-06-22 8X8, Inc. Multi-level programming/data sets with decoupling VoIP communications interface
US11671533B1 (en) 2016-06-23 2023-06-06 8X8, Inc. Programming/data sets via a data-communications server
US11412084B1 (en) 2016-06-23 2022-08-09 8X8, Inc. Customization of alerts using telecommunications services
US10447861B1 (en) 2017-06-23 2019-10-15 8X8, Inc. Intelligent call handling and routing based on numbering plan area code
US10951484B1 (en) 2017-06-23 2021-03-16 8X8, Inc. Customized call model generation and analytics using a high-level programming interface
US10425531B1 (en) 2017-06-23 2019-09-24 8X8, Inc. Customized communication lists for data communications systems using high-level programming
US10686649B2 (en) * 2018-11-16 2020-06-16 At&T Intellectual Property I, L.P. Method and apparatus for managing a local area network
FR3118233B1 (fr) * 2020-12-18 2024-01-19 St Microelectronics Alps Sas Procédé de détection d’ingénierie inversée sur une unité de traitement utilisant un registre d’instruction et circuit intégré correspondant
US11715056B2 (en) 2021-03-16 2023-08-01 Bank Of America Corporation Performance monitoring for communication systems
US11595527B2 (en) 2021-03-16 2023-02-28 Bank Of America Corporation Dynamic routing for communication systems
CN116893913B (zh) * 2023-09-08 2024-01-23 北京趋动智能科技有限公司 远程程序执行方法、装置、系统、电子设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4366350A (en) * 1979-02-09 1982-12-28 Stromberg-Carlson Corporation Control system for telephone switching system
DE2928492C2 (de) * 1979-07-14 1985-04-18 ANT Nachrichtentechnik GmbH, 7150 Backnang Verfahren zur Überwachung von mehreren, Stationen verbindende Leitungen für Fernwirkmaschennetze
US4611094A (en) * 1983-12-01 1986-09-09 At&T Bell Laboratories Method for customer definable telephone capability
DE3743959A1 (de) * 1987-12-23 1989-07-13 Siemens Ag Verfahren zur ueberpruefung betriebstechnischer funktionen einer rechnergesteuerten kommunikationsvermittlungsanlage
US4945559A (en) * 1987-12-30 1990-07-31 Keptel, Inc. Telephone network interface apparatus
US5101425A (en) * 1990-08-07 1992-03-31 Digital Systems International, Inc. Operations monitoring system
CA2190889C (en) * 1990-12-18 1999-03-30 David Leveau Babson, Iii Systems and processes for specifying customized telecommunication services
US5241580A (en) * 1990-12-18 1993-08-31 Bell Communications Research, Inc. Method for validating customized telephone services
US5132962A (en) * 1990-12-20 1992-07-21 International Business Machines Corporation Fault isolation and bypass reconfiguration unit

Also Published As

Publication number Publication date
US5390232A (en) 1995-02-14
CA2103236A1 (en) 1994-06-29
EP0608614A2 (de) 1994-08-03
JPH06284189A (ja) 1994-10-07
EP0608614A3 (de) 1995-10-25
EP0608614B1 (de) 2000-04-12
DE69328349D1 (de) 2000-05-18
CA2103236C (en) 1997-06-17

Similar Documents

Publication Publication Date Title
DE69328349T2 (de) System zur Kontrolle der Teilnehmer-Programmierbarkeit
DE69900810T2 (de) Verfahren und Vorrichtung zum Testen von ereignisgesteuerten Programmen
DE69233618T2 (de) Verarbeitungssystem zur Leitweglenkung für Teilnehmeranrufe
DE69228318T2 (de) Funktionssteuersystem unter benutzung einer entwurfsorientierten zustandstabellensprache
DE69503759T2 (de) Verfahren zur erkennung von dienstwechselwirkungen in intelligenten netzwerken
DE3879071T2 (de) Verwaltung einer defekten Hilfsquelle in einem Multiplex-Kommunikationssystem.
DE3879072T2 (de) Expertsystem zur Verarbeitung von Fehlern in einem Multiplex-Kommunikationssystem.
DE3879069T2 (de) Schwellenalarme zur Verarbeitung von Fehlern in einem Multiplex-Kommunikationssystem.
AU710523B2 (en) Tracing with keys and locks
DE69332632T2 (de) Anrufverarbeitungssystem
DE69529846T2 (de) Verfahren zum vergleich von attributwerten von steuerbaren objektausdrücken in einem netzwerkelement
DE69733543T2 (de) Verfahren zum Anbieten von wenigstens einem Dienst an Fernmeldenetzbenutzern
DE69732221T2 (de) Verfahren zum Anbieten von einem Dienst an Fernmeldenetzbenutzern
EP1217811A1 (de) Verfahren zum Emulieren eines Terminals und Testgerät zum Testen eines Telekommunikationsnetzwerks mit Funktionswahl mittles Windows Benutzerschnittstelle
EP0580888B1 (de) Steuerverfahren für ein Prüfsystem
DE3445030A1 (de) Verkehrssimulationseinrichtung zum testen von vermittlungsanlagen unter beruecksichtigung der teilnehmer-system-interaktion
DE69731182T2 (de) Nachrichtenverfahren zwischen einer Dienstvermittlungsstelle und einer Dienstkontrolleinrichtung in einem Fernmeldenetz
DE602004007879T2 (de) Dienstbereitstellungssystem
DE60002455T2 (de) Verfahren und vorrichtung zur automatischen softwareprüfung
EP0492251B1 (de) Kommunikationssystem mit Anschlussbaugruppen, einem der Durchschaltung von Verbindungen dienenden Koppelfeld, einem zentralen Zeichenkanal sowie einem der zentralen Steuerung dienenden Multiprozessorsystem
DE69800322T2 (de) Verfahren und Gerät für verbesserte Anrufsteuerungsablauffolgeplanung in einem verteilten System mit ungleichen Anrufverarbeitungsanlagen
DE69714066T2 (de) Verkehrssteuerung in einem kommunikationsnetz
EP1038221B1 (de) Verfahren zur überprüfung der pfadüberdeckung bei software-tests
Fantinato et al. Applying extended finite state machines in software testing of interactive systems
Musa Introduction to software reliability engineering and testing

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee