throbber
United States Patent [19]
`Norell
`
`[54] SOFTWARE PROGRAM STRUCTURE AND
`METHOD FOR MODULIZING THE
`OPERATIONS OF A
`TELECOMMUNICATIONS SYSTEM
`
`[75] Inventor: Bror L. Norell. Alvsjo, Sweden
`
`[73] Assignee: Telefonaktiebolaget LM Ericsson,
`Stockholm, Sweden
`
`[21] Appl. No.: 451,072
`[22] Filed:
`May 25, 1995
`
`Related US. Application Data
`
`[63] Continuation of Ser. No. 112,809, Aug. 27, 1993, aban
`doned.
`Foreign Application Priority Data
`
`[30]
`
`Aug. 28, 1992 [SE]
`Mar. 25, 1993 [SE]
`
`Sweden ................................ .. 9202488
`Sweden ........................ ..
`9301000
`
`[51] Int. Cl.6 .................................................... .. G06F 15/00
`[52] US. Cl.
`395/674
`[58] Field of Search ................................... .. 395/600, 650,
`395/700; 455/39
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,280,610
`5,303,375
`5,303,379
`
`1/1994 Travis, Jr. et a1. ................... .. 395/600
`4/1994 Collins et al. . . . . .
`. . . .. 395/650
`4/1994 Khoyi et a1. .......................... .. 395/700
`
`FOREIGN PATENT DOCUMENTS
`
`405 829 111991 European Pat. 01f. .
`
`OTHER PUBLICATIONS
`K. Maruyama et al.. “Object-Oriented Switching Program
`Structure”, Electronics and Communications in Japan, Part
`1, vol. 75, No. 6, pp. 26-40 (1992).
`
`USO05634126A
`[11] Patent Number:
`[45] Date of Patent:
`
`5,634,126
`May 27, 1997
`
`R. Bruins, “Stored Program Controlled Telecommunication
`Services”, IEEE International Conference on Communica
`tions, vol. 4, pp. 1632-1636 (1990).
`K. Maruyama et al., “A Concurrent Object-Oriented
`Switching Program in Chill”, IEEE Communications Maga
`zine, vol. 29, No. 1, pp. 60-68 (1991).
`
`Primary Examiner-—Kevin A. Kriess
`Attorney, Agent, orFirm-Burns, Doane, Swecker & Mathis
`[57]
`ABSTRACT
`
`The invention relates to a telecommunication system pro
`vided with resources and with software which controls the
`individual resources and also the manner in which the
`resources cooperate mutually at a system level. In accor
`dance with the invention, the software is divided into two
`parts. The ?rst part, called object logic, comprises a number
`of object units, each of which represents an individual type
`of resource. Further, each object unit includes operations for
`controlling its individual resource. An individual type of
`resource may be used for a number of di?’erent purposes.
`The second part, called control logic, includes a number of
`control cases. Each control case, in turn, combines a number
`of object units in a superordinate fashion, to control the
`mutual cooperation of corresponding resources irrespective
`of the manner in which an individual object unit is intended
`to in?uence its resource. A control case includes a number
`of control stages, each of which has only one input, at least
`a ?rst operation, called control stage operation, and at least
`one output. The control stages of a control case are mutually
`connected by links, each of which is designed to connect an
`output of a preceding control stage with the input of a
`following control stage. The points at which links are
`connected to the control stages are called potential connec
`tion points to which additional control cases, called control
`case features, can be connected to the control case in which
`the control stages are present, called the basic control case,
`for modi?cation of the basic control case.
`
`30 Claims, 34 Drawing Sheets
`
`54
`
`Object unit
`0
`
`32
`
`52
`
`/
`/
`
`NEW I/
`iii]
`:
`58
`
`s]
`
`x-m
`
`'
`
`\
`\
`
`E2 \ \
`l
`\\
`so
`\
`\
`\<
`\\
`\
`\
`
`A
`
`\\\ 5/15
`
`GTL 1008
`IPR of U.S. Patent 7,324,637
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 1 of 34
`
`5,634,126
`
`Fig. 1
`
`21\ Software
`
`1 1
`
`22\
`Database
`\ Computer
`
`Operative
`system
`\2O
`
`15
`\
`
`TI
`
`12
`/
`
`F“- _ _ _ _ _ ' _ '___"'"1
`
`6E2?
`\
`14
`
`I
`i
`I
`l
`
`I
`*
`'
`‘
`|\19
`51.1 X ET
`\
`\1s
`\17
`18 l
`l
`
`Lsritsniaaswerrsrrmniw
`
`

`
`U.S. Patent
`
`May 27,1997
`
`Sheet 2 of 34
`
`5,634,126
`
`Flg. 2
`
`21\ Software
`
`23\
`\ Control logic
`
`24\\ Object logic
`
`13\ TI
`
`12 /
`
`15
`
`'
`
`@- su
`‘4
`\1s
`
`><
`\
`17
`
`ET —-——§——
`\
`1s‘
`
`19
`
`Switching equipment
`
`\10
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 3 0f 34
`
`5,634,126
`
`Fig 3
`
`28
`/
`
`j
`
`Self-starting
`object unit
`
`/
`25
`
`Object logic
`
`28
`
`28
`/
`
`Object unit
`
`Object unit
`
`/
`26
`
`/
`27
`
`24
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 4 of 34
`
`5,634,126
`
`Fig 4
`
`46
`
`\\'i
`
`Control logic
`
`Control case
`
`_|
`
`_
`
`47
`\
`
`48
`/ \
`Part
`sequense
`
`Por‘t-
`sequense
`
`45
`\
`Start
`logic
`
`_
`
`/42
`/43
`/37 /38 /36 /39 /4()
`
`23
`
`44
`/
`/41
`
`l
`
`I
`l
`l
`I
`
`i
`I
`
`30
`i /
`Sub-
`scriber
`data
`
`31
`/
`Routing
`do’co
`
`Object
`{Ogle
`
`32
`/ »
`
`Sub-
`scriber
`interface
`
`34
`33
`/ i /
`Switch
`Trunk
`interface
`
`35
`i /
`Operator
`interface
`
`i
`1
`
`22 4-’ 49
`
`51
`
`13\ TI
`
`15 [__1—_T_”T_—i
`0 \ i
`su X ET
`2 \
`\
`\
`\
`19
`14
`I
`16
`17
`18 :
`
`Léw?shisa 21:11pmnt __ _J\1o
`
`(1
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 5 of 34
`
`5,634,126
`
`Object unit
`(class)
`
`32
`
`5
`
`2 3
`
`m m 2 .000 DOI m
`N O W M.»- /
`
`/ 5/ m
`
`
`
`J! :h* llll\\|\\
`
`5 X
`
`6
`
`1\
`
`
`5 .|_| .wa. \
`\ D \\
`
`A \
`
`6 ¥ \
`
`5 \ D \ X
`
`/ __ v
`
`\\ \ A E
`
`\
`
`O \ \
`
`- \ ~
`
`b
`
`/
`
`\, \
`
`\ _
`
`\
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 6 0f 34
`
`5,634,126
`
`54
`
`Interface
`I \
`I
`28
`I
`l
`l
`|
`:--L»
`l
`:
`I
`l
`I‘
`I
`l
`:
`:
`l
`I
`53
`:
`67
`\
`FL» > STOP
`:
`I
`End
`|
`I
`sequence
`
`4 65
`
`F ig 6
`
`62
`/
`
`Free
`gran-existent
`__J
`
`52
`
`> NEW /
`Star’:
`/63
`sequence
`
`64
`< START
`response /
`
`66
`l/
`‘
`Existing
`J
`
`73
`/
`
`> op1
`|
`op1
`procedure
`
`> op2
`i
`op2
`procedure
`
`:
`I
`72
`|"-—-A—-—-
`I i
`i
`
`l
`
`l
`
`\68
`\74
`< Result
`< Result
`\70
`\71
`
`\69
`
`r
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 7 of 34
`
`5,634,126
`
`Fl 9 7
`
`class Y
`public:
`{ //START SEQUENCE } ;
`Y()
`virtual ~ Y() { //END SEQUENCE };
`
`
`
`int op‘! int 0p2();
`
`int Y ::op1() {
`//op1 procedure
`
`int Y ::op2() {
`//op2 procedure
`
`Fig 8
`
`
`
`X=new Y Y-.—>‘op1();
`
`X—>op2()
`delete (X)
`
`

`
`US. Patent .
`
`May 27, 1997
`
`Sheet 8 0f 34
`
`5,634,126
`
`Fig 9
`
`Control case A
`
`55
`
`A5
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 9 0f 34
`
`5,634,126
`
`Fig 10
`
`Fig 11
`
`. P
`
`O
`1
`
`80\
`
`[
`
`82
`\
`
`83
`
`P
`0/
`
`Execute control stage
`operation
`
`S1\
`
`\a1
`
`.
`Output selection
`
`84
`/
`
`Fig 12
`
`C t I
`
`In???
`
`executor
`
`47
`
`\ / \ /
`
`r3
`
`87
`
`r1
`
`r2 ,
`
`A,
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 10 of 34
`
`5,634,126
`
`Fig 13
`
`P
`
`- O
`88 I
`m
`0 9 9
`
`L1
`
`P
`
`Q
`
`Q
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 11 0f 34
`
`5,634,126
`
`Control case D
`
`14
`
`Control case start -
`
`

`
`US. Patent
`
`May 27,1997
`
`Sheet 12 of 34
`
`5,634,126
`
`Control case
`
`A
`
`Pl 160
`9
`gggérol
`
`A
`
`Ccgnsléol
`feature
`8
`
`Control
`case
`feature
`C
`
`Flg 16b gggéml
`
`Control
`C058
`
`feature
`B
`
`Control case
`feature
`
`Controt case
`feature
`
`B
`
`o
`
`D
`
`Control case
`feature
`
`4
`
`C
`
`(égg‘t‘lrol
`feature
`D
`
`Fl 16d
`g
`Control
`case
`
`gggérol
`feature
`B
`
`gaggol
`feature
`D
`
`A
`
`Flg l6e ggnsgol
`
`Control
`CGSE
`
`feature
`B
`
`A
`
`A
`
`feature
`C
`
`feature
`C
`
`Fig 160
`
`Control
`C088
`
`A
`
`Fig 161‘
`
`Control
`C088
`
`A
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 13 of 34
`
`5,634,126
`
`Fig 1 70
`
`Control cose D
`
`Control oose feature I
`
`Control case
`specialization
`P
`
`l
`
`op2
`
`104
`
`D1
`
`op1
`
`103
`
`r1
`
`r2
`
`r3
`
`Fig 17b
`
`L
`
`op2
`
`10%
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 14 of 34
`
`5,634,126
`
`'Fig 180
`
`Control case D
`
`Control case feature J
`
`D1
`
`(LP
`
`op1
`
`O
`
`\
`
`PASS
`
`l
`
`103 q
`/
`
`‘
`
`106
`/
`
`r1
`
`r2
`
`r3
`
`F3
`
`r5
`
`r6
`
`1
`
`2
`
`3
`
`4
`
`5
`
`6
`
`F:
`9
`
`18b
`
`o\
`F)
`
`\
`
`op1
`
`107
`/
`
`

`
`US. Patent
`
`May 27, 1997
`Sheet 15 of 34
`Fig 190
`
`5,634,126
`
`Control cose D
`
`Control case feature K
`
`o
`
`i
`
`op2
`
`clp
`
`\
`
`0P1
`
`1
`
`102
`/
`
`r1
`
`r2
`
`r3
`
`1
`
`2
`
`3
`
`Fig 19b
`
`x
`
`O\
`1
`F’
`
`1
`
`op2
`
`103
`/
`
`r1
`
`r2
`
`r3
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`, Sheet 16 0f 34
`
`5,634,126
`
`Fig 200
`
`Hg 20b
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 17 of 34
`
`5,634,126
`
`Fig 21
`
`Control stage
`specialization
`
`Control stage
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 13 of 34
`
`5,634,126
`
`

`
`US. Patent
`
`May 27, 1997
`
`Sheet 19 of 34
`
`5,634,126
`
`89
`
`1
`10
`/
`/
`
`SR3 SR4 SR5 SR6
`SR2
`
`SR1
`\
`
`\
`
`Control stoge=|=
`
`___//
`
`Control stoge
`implementation
`
`Control stoge=o=
`
`n"
`
`r1
`
`r2
`
`r3
`
`1
`
`2
`
`3
`
`_
`
`l
`I
`
`Output number
`1
`
`2
`
`3
`
`112
`
`Next control
`stage-ID
`
`6
`
`Control stoge-lD 1
`2
`
`I5
`
`4
`
`5
`
`6
`
`Fig 23
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 20 of 34
`
`5,634,126
`
`Control stage feature
`
`Fig 24
`
`Modified
`control case
`
`Feature type
`
`F
`
`. t
`t
`6° “re pom
`
`Control case-ID
`
`Input
`takeover
`
`C°”tr°'
`St°9°"'D
`
`Output
`takeover
`
`Control
`stage-—lD
`Output-ID
`
`Control stage
`specialization
`
`Control
`stage-ID
`
`89
`
`Hurst control
`stage——lD
`
`116
`
`1 10
`
`1 1 1
`
`Control stage
`
`Control staget
`
`Control staget
`
`Output number
`1
`
`..?..._..-p
`
`2
`
`35
`
`Control
`
`stage—lD or
`return—lD
`
`Possible
`Control stage
`output
`Retum—:o --
`Control
`stage—-ID —
`
`Control
`
`stoge——lD
`
`output-lD
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 21 of 34
`
`5,634,126
`
`ll
`
`Control
`
`stage—|D
`
`\1CDUI-¥>-(.rll\'>-*
`
`Output number
`
`Control
`
`stage-ID
`
`Control stage
`implementation
`
`Dl
`
`Control stage
`implementation
`
`D2
`
`Control stage
`implementation
`
`D3
`
`Control stage
`implementation
`
`D4
`
`Control stage
`implementation
`
`D5
`
`Control stage
`implementation
`
`D6
`
`Control stage
`implementation
`
`D7
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 22 of 34
`
`5,634,126
`
`Modified
`control case
`
`Feature type
`
`Control stage
`specialization
`
`Control stage
`implementation
`
`D1
`
`Control stage
`implementation
`
`E1
`
`C°"tr°'
`stage—lD
`
`Control Possible
`Return—lD Stage
`output
`
`I‘
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 23 of 34
`
`5,634,126
`
`Modified
`control case
`
`Feature type
`
`input takeover
`
`Control stage
`implementation
`
`F1
`
`Controi stage
`implementation
`
`F2
`
`Control
`
`Possible
`
`Return-—lD
`
`stage
`
`output
`
`Fig 27
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 24 of 34
`
`5,634,126
`
`Modified control case
`
`Feature type
`
`Output
`
`takeover
`
`_
`Feature pomt
`
`Control stage 5
`
`Output
`
`2
`
`89
`
`E
`
`C
`
`Control stage
`
`implementation
`
`G1
`
`Control
`
`stage-lD
`
`T9
`
`Omput "”mbe'
`1
`2
`
`Control
`Possible
`Return--ID
`stage
`output
`T:
`
`112
`
`115
`
`Fig 28
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 25 of 34
`
`5,634,126
`
`Fig 29
`
`Colllapsed control case
`
`R
`
`Ere
`
`Control
`stage-ID
`
`-—\O¢.OUJ\lO')LJ'l-#(.>1l\)-'~
`
`._L—l
`
`Control
`stage-lD
`
`Output number
`|._:_.______..
`1
`2
`
`3 1
`
`0
`
`Control stage
`implementation
`
`D1/E1
`
`Control stage
`implementation
`D2
`
`Control. stage
`implementation
`D3
`
`Control stage
`implementation
`D5
`
`Control stage
`implementation
`D7
`
`Control stage
`implementation
`E1
`
`Control stage
`implementation
`G1
`
`Control stage
`implementation
`F1
`
`Control stage
`implementation
`
`Short—circuited control stage
`
`Short—circuited control stage
`
`--
`
`-_L_L—-OtOm\lOiU'l-F~LrJl\'J-'-
`
`I-
`
`I1
`
`-_“
`
`--
`-EH
`_- -
`----
`--
`--
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 26 of 34
`
`5,634,126
`
`Control case configu-
`ration (data per exe-
`cufion
`
`
`
`
`Representation of a control case (Hg 2.3)
`
`start89
`
`1 1 1
`
`
`—'.._"—"-5‘-—-|
`stage
`I
`
`Control
`
`imple-
`mentation
`
`I
`
`Control case
`feature
`Control case
`feature
`
`Basic control
`
`case
`
`C
`
`
`
` A
`
`
`
`
`
`
`
`
`
`
`
`
`
`89
`start
`1 1 1
`Control stage jd
`table
`a“
`
`Control
`link
`112 St°9°
`.
`imple-
`matnx
`mentation
`
`Control
`
`|
`
`
`
`
`
`
`
`
`
`
`
`
`
`Control stage
`executor
`(F79 33)
`
`Next control
`
`stage (Y.A.U)
`
`Execute control case
`‘[22 (basic control case)
`
`
`
`
`
`lnitiate/
`terminate
`execution
`
`
`
`
`
`Execute control
`
`123
`
`
`
`case (Fig 34) I
`
`Execute control
`
`case (X)
`
`Control
`
`logic executor
`
`
`
`feature
`
`45
`
`Start
`
`logic
`
`
`
`
`
`I
`
`Representation of a control
`case feature
`1 14
`Feature information
`
`Control case
`feature
`Control case
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 27 of 34
`
`5,634,126
`
`Fig 31
`
`127
`
`Call of function with
`input parameter X and
`output porometer Y
`
`Coll of function which
`has the alternative
`
`responses A and B with
`response data (X) and (Y)
`
`fknix)
`
`in the
`Entry point
`definition of a function
`
`/
`
`133
`
`Return from 0 function
`
`definition
`
`134
`
`/
`
`Loop
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 28 of 34
`
`5,634,126
`
`Control
`
`stage
`
`I l
`
`Control
`executor
`
`logic
`
`II {
`
`4
`:
`I
`
`/
`
`
`
`
`
`1 38
`
`-
`Fig
`
`
`
`
`
`Control
`stage opera-
`
`tion
`
`
`
`137 :
`Execute
`I
`
`Execute
`-1 ——————————— —— control stage
`control stage
`operation
`{
`operation
`
`CREATE
`OBJECT
`
`14-1
`
`145
`
`OVERLAY
`
`
`

`I145
`__/V 0Ve"‘°Y
`Over1ay
`‘T
`control C058
`cQnfro| cqse
`'
`f
`i
`t‘
`W'th ‘d
`t'f'
`\‘ 140
`ienucanono
`I
`which feature control
`—.—\A
`case shall be overlaid
`147
`148;
`_______:____z___
`Create
`:
`object
`'
`lMth identification of
`which object unit shall
`be started
`.
`/
`150;
`--—--+ ---------- --
`:
`I
`
`Create
`object
`\\
`—————— ———*
`149
`
`——————
`
`PASS
`
`PART—
`SEQUENCE
`
`OBJECT
`OPERA‘l1ON
`
`OBJECT
`
`1 l
`
`I
`
`.
`
`oP__
`response
`
`.
`Object
`-‘F UN”
`operation
`1
`!
`144 . :
`153 :
`:
`— T-
`I
`:
`'
`g\
`1:56
`(28)
`
`154
`
`30
`
`143
`
`14-2
`
`Part-
`
`——————————————————————
`
`
`
`Operation
`
`is there an output from
`this control stage for
`this result?
`
`158
`————-
`
`159
`
`_ _ _ _ _ _ _ _ _ _ _ _ _
`
`_ _ ___ Output from this
`control stage
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 29 of 34
`
`5,634,126
`
`Control stage
`.
`€X€CU1Zl0n
`
`For all control cases
`in the control case
`priority list from the
`feature control case
`of highest priority to
`basic control case
`
`Execute—o control stage
`(A)=contro| stage identity
`
`1 64
`
`________
`
`p
`
`_........
`
`.__..
`
`0 Yes
`
`CONTROL
`
`CASE 8
`
`169
`
`Does this control cose/
`
`control case feature 8
`
`include the control
`stage A or a control
`stage specialization
`for A?
`
`End of control
`case
`
`1 67
`
`____ __
`
`168
`
`172
`
`Loop end B
`
`
`
`control stage
`operation
`
`
`Control stage
`lacking
`
`.
`
`Create object or
`CUS6
`
`-
`
`173
`
`Carry out
`
`requested
`function
`
`171 0
`
`170
`
`Default output
`
`Output
`
`‘-‘°“t"°'
`
`this ]"“‘
`
`Output
`
`1 7
`
`4-
`
`
`
`175
`
`""
`
`For all control cases
`in the control case
`-
`-
`1- t f
`{h
`
`cintrfimcasee
`
`of highest priority to
`basic control case
`
`1“
`
`fl°W
`
`1
`
`Does this control case/
`control case feature B
`include the control
`stage A or a control
`‘r 1-
`?°(r3_gz?SpeCl0 lZCl Ion
`
` at
`
`_
`
`________ __
`
`0
`
`1 77
`
`Loop end C
`
`End of control
`case
`
`__
`
`Control stage
`lacking
`
`178
`
`Output
`
`Yes
`
`1 76
`
`179
`
`CONTROL
`PASE C
`
`output
`selection
`
`_ __
`
`D 180
`
`-————
`
`Control
`Stage A
`
`
`
`O t
`
`t X '
`
`02:32.
`
`C
`
`181
`
`132
`
`}............--
`
`ou(;>,ut
`
`9
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 30 of 34
`
`i
`
`5,634,126 i
`
`B<ecute control case
`X=Contro| case
`identi
`
`183
`
`184
`
`identify first
`control stage
`(X)
`
`
`
`
`
`=flrst control stage
`in control case X
`
`————
`
`Indicated control
`stage==A
`
`----'
`
`Execute—-A—
`control stage
`
`géntgol
`----- -— exefiufion
`(fig 33)
`
`135
`
`188
`
`O
`
`186
`
`output
`
`::":;::,:;° --
`
`
`
`Indicated output U from }
`
`control stage A in cont-
`rol case or control case
`feature Y
`Is there an observing control
`case feature with output obser-
`vation on output U from cont—
`rol stage A in control case or
`control case feature Y?
`
`189
`__ 0 °
`
`N
`
`End
`
`l=observing cont-
`For all
`rol case features accord— —————
`ing to the above
`
`187
`
`Determine next control stage
`after output U in control
`stage A _in control case
`(also while taking transitions
`to control cc)xse features
`'nt
`ccount
`I
`o a
`
`Control stage 8 in control
`case or control case
`feature 2
`
`Is there an observing control
`case feature with input take—
`over on control stage B in
`control case for control case
`
`feature 2?
`
`196
`
`--
`
`Yes
`
`No
`
`194
`
`For all
`l=observing cont-
`rol case feotures accord— ___.._. @ 198(-'-'12s)
`ing to the above
` SELl-"(recursive call of
`
`Execute control
`case (I)
`
`the now described
`function)
`
`Change of signs for
`repetition of the function
`for the next control stage
`
`199
`—--—---— Y<"Z
`
`Fig 34
`
`
` SELF(recursive call of
`
`
`
`
`Execute control
`case (I)
`
`— the now described
`function)
`
`
`/
`192
`_____
`
`Ne“ n°n_
`tml Stage
`(YAU)
`O /
`19 .
`r
`
`____ input
`
`124
`
`________
`
`Link
`executer
`
`195
`
`1
`/
`Control sta ‘_
`
` .___.___._............_.._.....—._....—._——.—_.—._—_...—.—.—.-—......._._—.——......-..._.—.....—...—._.——.._—.—-..—-—....—.._._—_.—
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 31 of 34
`
`5,634,126
`
`..-.—-pg..-.————_...._......._._._.——_..._..—..—_._.._._.-——...—.__.._..—.———_.._.——.._.._......_._.——._._.._—-._._-_.————_——_._....—.—.-..-..._
`
`Link executer
`
`Is there a control case
`feature Z with output
`takeover on output U
`from control stage A
`in control case or
`control case feature Y?
`
`Link from output U from
`control stage A in cont-
`rol case or control case
`
`feature Y > control stage
`C in control case W
`(also taking into account
`a return from control
`
`case feature)t
`
`ls the link empty,
`
`i.e. W,C undefined?
`
`Fig 35
`
`
`Next control stage
`=control case ID
`A=contro| stage ID
`
`U=°utput
`
`————-——
`
`-----
`
`Determine next control
`stage after output U
`in control stage A in
`control case Y (also
`taking into account
`transitions to control
`case features)
`
`
`Identify first
`control stage
`(w)——>(w,c)
`
`_______J
`
`\
`
`—————— '"'
`
`C=first control
`
`stage in control
`case W
`
`
`
`Control
`stage
`lacking
`
`
`
`207
`
`Is there a control case
`feature 2 with input
`takeover on the input to
`control stage C in cont— ‘“‘-"
`rol case or control case
`feature W?
`
` Identify first
`control stage
`
`_______J
`
`V‘”—_i——“_7
`B=first control
`stage in control
`case Z
`
`
`
`209
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 32 of 34
`
`5,634,126
`
`Start
`
`logic
`
`Start
`event
`
`
`
`
`Start configuration-or
`
`Start configuration:
`
`
`
`
`
`
`
`Start
`logic, data
`
`
`29
`
`
`
`
`
` Observing
`control case
`list
`
`Start configurationt
`
`216
`
`Self~starting
`object unit
`
`Start
`
`logic. program
`
`25
`
`45
`
`Start execution
`(configuration)
`
`logic
`Start
`executor
`
`I
`I Configuration
`I (data per exe— I
`I cution of controtl
`
`47
`
`/
`120(Fig 30)
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 33 of 34
`
`5,634,126
`
`Fig 37
`
`Representation of a control case (Fig 23)
`
`Control
`_ matrix
`
`link
`
`1 12
`
`Link executer (Fig 35)
`
`Representation of a control
`case feature
`
`Feature information
`
`identify first
`
`control stage
`(w)__>(w’C)
`
`‘
`
`203
`
`222
`
`Link
`(Y,A,U)—>(W,C)
`
`913
`
`Representation of a control
`case feature (Fig 24)
`Feature information
`_
`
`start
`
`-
`
`89
`
`link
`
`Control
`matrix
`
`l 12
`
`“5
`
`

`
`U.S. Patent
`
`May 27, 1997
`
`Sheet 34 of 34
`
`5,634,126
`
`Fig 38
`
`Control stage
`
`
`
`
`Operation code
`
`51
`
`Parameter
`
`227
`
`227
`
`Operation
`
`Parameters
`
`Overlay
`control case
`
`1
`
`Identity of control case features
`that shall be added to the now
`
`Result
`
`Lacking
`
`
`
`executing configuration
`
`2 Priority (O=observing)
`
`
`
`
`Create object
`
`1
`
`ldentity of the object unit for
`which a new object shall be
`created
`
`2 Reference for this object
`
`L-°°kl“9
`
`
`
`
`
`
`Table 1
`
`0Pel'0ti°"
`code
`
`1
`
`2
`
`
`
`
`
`
`
`Object
`operation
`
`
`
`
`
`2 4
`
`1 Reference to object
`
`2 Operation
`
`
`
`
`Maps result
`value to
`output
`
`
`
`

`
`1
`
`SOFTWARE PROGRAM STRUCTURE AND
`METHOD FOR MODULIZING THE
`OPERATIONS OF A
`TELECOMMUNICATIONS SYSTEM
`
`This application is a continuation of application Ser. No.
`08/112,809, filed Aug. 27, 1993 now abandoned.
`
`TECHNICAL FIELD
`
`The present invention relates generally to a method and to
`an arrangement by means of which a functionality in a
`telecommunication system can be quickly changed. By
`telecommunication system is meant
`telecommunication,
`devices and arrangements and methods by means of which
`such devices and arrangements can be operated. The term
`telecommunication arrangement as used here also includes
`the network or networks in which communication takes
`place. By telecommunication network is meant a typical
`telephone network, a telex network. a circuit switched data
`network, picture information transmission network, a pri-
`vate telecommunication network, a radio network, a satellite
`communication network and general carriers of telecommu-
`nication services. Communication can be effected by analog
`transmission, digital transmission, synchronous multiplex
`transmission or asynchronous multiplex transmission. This
`list is given merely by way of example and has no limiting
`etfect on the invention.
`
`By functionality is meant the ability to carry out a
`function in a telecommunication network. Examples of
`functionality are activities and services that can be per-
`formed in the telecommunication network. Examples of
`functionalities are the ability to establish a connection or
`signal route or path between two parties, and the digit
`analyzing, billing, operating and maintaining of functions.
`By connection is meant a circuit switched connection or
`packet switched connection. In the case of a circuit switched
`connection, it is meant by establishing a connection that a
`circuit switched connection is established between two
`pieces of hardware terminal equipment, while in the case of
`a packet switched connection relationships are created
`between logic channels on physical links which mutually
`connect nodes in the telecommunication network.
`
`One main problem with present-day telecommunication
`systems is that the systems must be tailor-made to a large
`extent, so that they can be adapted to network operators in
`diiferent markets. A telecommunication system that has been
`developed for a network operator in one market, for instance
`the European market, cannot be used by another network
`operator in another market, for instance the U.S.A. market.
`since the different network operators place dilferent
`demands on the configuration of the telecommunication
`services. The work required in tailoring an existing telecom-
`munication system to comply with the requirements of a
`network operator is a highly comprehensive operation on a
`system level. The task is sometimes impossible to achieve
`with reasonable work inputs, since the changes required
`become much too complicated.
`A telecommunication system is a complex arrangement
`which constantly changes. The hardware involved changes
`with time, as a result of continuous development in appro-
`priate technologies. Telecommunication networks are
`extended into new geographical areas, and users come and
`go.
`Different users within one and the same telecommunica-
`tion network require diiferent services. For instance, com-
`pany users require the network operator to handle and
`
`5,634,126
`
`2
`
`control certain specific network services, while private users
`require the network operator to handle and control other
`specific network services which difler from the former.
`Different company users may also require access to mutually
`different network services. Consequently, a telecommunica-
`tion system must be capable of providing the network
`operator with a system which can be readily adapted to the
`requirements of diiferent subscribers with regard to tele-
`communication services, preferably by the actual network
`operator.
`
`Ditferent markets may also have diiferent requirements as
`to how one and the same service shall be implemented with
`respect to hardware and software. It may be possible in one
`market to implement a functionality with the aid of one
`certain piece of hardware, while in another market, it may be
`possible to implement the functionality with other hardware
`that is different from the first-mentioned. The opposite may
`also occur, namely that the same may be programmed to
`carry out different functions in different markets. In both
`cases, the software which controls a functionality on one
`market diflers from the software which controls the same
`functionality on another market. This creates problems when
`wishing to make changes in the telecommunication system
`on a system level. since the change will
`influence the
`software used in the different markets.
`
`The present-day technique of tailoring telecommunication
`systems to meet the aforesaid requirements of the network
`operator is highly deficient in several aspects.
`
`KNOWN TECHNIQUES
`
`The telephone system A}G-E 10 retailed by the Swedish
`company Ericsson can be adapted to ditferent markets by
`enabling the use of specific hardware for ditferent work
`tasks, and also by enabling a particular piece of hardware to
`be replaced with another without needing to reprogram on a
`system level. To make this possible. when constructing the
`telephone exchanges of the telephone system the system
`constructors have prepared each telephone exchange for
`connection to predetermined types of functionalities that
`have been envisaged by the system constructors to be
`necessary in the future. This preparation resides in the
`construction of separate interfaces which permit predeter-
`mined types of future functionalities to be added to the
`telephone system. Attempts have been made to make these
`interfaces as general as possible within the framework of the
`type of functionality concerned
`However. it is diflicult to try to anticipate at the construc-
`tion stage of a telecommunication system all conceivable
`futuristic functionalities that may be required but which do
`not yet exist.
`The known technique only provides a limited possibility
`of adapting the telecommunication system. The only func-
`tionalities which can be changed and varied are those
`functionalities for which the system has been prepared. The
`number of possible variants is limited. The task of changing
`a functionality where the system has been prepared for
`making such a change is time consuming. The known
`technique provides no solution to the problem of adapting a
`telecommunication system to an end user who requires the
`telecommunication system to handle a novel type of func-
`tionality for which the system has not been prepared.
`When a new functionality for which the telecommunica-
`tion system has not been prepared is to be constructed, or
`configured, problems occur. For instance. it is necessary to
`ascertain whether or not the new functionality can be
`combined with the functionalities possessed by the existing
`telecommunication system.
`
`5
`
`10
`
`20
`
`25
`
`30
`
`35
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`
`5,634,126
`
`3
`In order to ascertain whether or not the new functionality
`can be combined with existing functionalities, it is necessary
`to investigate the functions of the telecommunication system
`as a whole and also to investigate the diiferent functions of
`the individual existing functionalities and also the function
`of the new functionality. Since a telecommunication system
`is highly complex, this analysis is often very comprehensive
`and diflicult to carry out, even when several system con-
`structors work together. The incorporation of the new func-
`tionality in the existing telecommunication system consti-
`tutes a problem. since no prepared interfaces are included in
`the system. It is possible that the entire telecommunication
`system must be reconstructed in order to adapt the system to
`the new functionality. It is also possible that an existing
`interface in the telecommunication system must be recon-
`structed and made more general in order to enable the new
`functionality to be connected-up in the system. On the other
`hand. it may be necessary to construct an entirely new
`interface.
`
`The development of a new functionality requires the
`assistance of system constructors that have a special com-
`petence in this field. More particularly, the system construc-
`tors must have detailed knowledge of the function of the
`telecommunication system, more specifically knowledge of
`how the system resources shall be used in order to imple-
`ment the desired new functionality. Such competence is very
`rare. which is a disadvantage.
`The document Electronics and Communications in Japan,
`Part 1, Volume 75. No. 6. June 1992, K. Maruyama et al,
`“Object-Oriented Switching Program Structure” pages
`26-40 and the document IEEE Communications Magazine,
`Volume 29, No. 1, January 1991, K. Maruyama et al, “A
`concurrent Object-Oriented Switching Program in Chill”,
`pages 60-68 do both describe an object oriented program for
`controlling a switch. Chill is an object-oriented program-
`ming language. The two documents are almost identical and
`therefor only the first one will be described. There is first
`created a logical model of a switch and its resources. The
`model has three layers, a service layer, a resource layer and
`an execution control layer. Each logical component in the
`diiferent layers is implemented as a software “object”.
`An object at the service layer sends a request message to
`a resource allocation object at the resource layer. Aresource
`is seized, the object-ID of the resource is returned and then
`the seized resource is controlled from the resource layer by
`sending logical messages to the “object-1D”.
`At the service layer there is a call-control object (in reality
`there are two call-control objects, one associated with the
`caller and one associated with the callee). A call-control
`object receives among other things the digits dialled by the
`caller. The digits are analyzed by a service analyzer object
`so as to establish the type of the requested service. A call
`control-object shall not comprise all “features” of a
`requested service. Each service should be packaged indi-
`vidually as an independent program.
`The term “service scenario” class definition is introduced
`
`The service analyzer object dynamically creates a service
`scenario object from the class definition and returns a
`scenario object-ID to the call control object. Afterwards the
`call-control object executes the scenario object.
`The program structure makes it easy to maintain and
`modify a complex software system and does also allow for
`distributed processes.
`The software described in the two documents is divided
`
`into two parts, a first one is called logic at the resource layer
`and relates to the resources of the telecommunication
`
`4
`
`system, and the second one is called logic at the service layer
`and relates to control of the resources at the resource level.
`
`The logic at the service layer handles and controls func-
`tions on a system level. For instance, to enable a telephone
`exchange operator to enter certain data, to enable an operator
`to take a specific subscriber line interface into operation, to
`enable a subscriber to make a telephone call, i.e.. it controls
`external functions which the telecommunication system
`provides for its environment, i.e., its operators, subscribers,
`etc. The logic at the service layer includes a control program
`for each such function on a system level, these control
`programs combining the system resources mutually in a
`desired manner, irrespective of how each specific resource is
`implemented.
`A switch is, for instance, hardware which contributes to
`the utility of enabling two connections to be coupled
`together and to enable this utility to be used for different
`functions, for instance for a first function in which two
`speech channels are connected together, and a second func-
`tion in which a signal path or route is established for an
`internal signalling arrangement in the network, and a third
`function which enables arented or hired line to be connected
`
`to a company. One and the same resource can thus be used
`in many different functions. The logic at the service layer
`defines which.
`A service scenario utilizes the resources via a standard-
`ized interface towards the logic at the resource layer. This
`enables one and the sa.me operation towards the logic at the
`resource layer to be used in totally different contexts and by
`several different service scenarios in creating different func-
`tions in the surroundings of the telecommunication system.
`For instance, the logic at the service layer is able to define
`the procedure to be carried out when connecting a telephone
`call from a subscriber; the logic at the resource layer makes
`subscriber stages, switches and trunk lines available to the
`logic at the service layer. Definitions of what shall be carried
`out at system level, for instance the procedures to be
`followed with regard to the aforesaid telephone call, are
`found in a service scenario. A service scenario defines a
`desired functionality by defining different operations which
`control a number of resources in a manner to obtain the
`desired functionality.
`The aforesaid structuring of the software into logic at the
`service layer and logic at the resource layer makes it easy to
`change a functionality in the system, for instance to add to
`an existing functionality or service, since the logic at the
`service layer is not dependent on how the resources are
`implemented. Access to people having the aforesaid spe-
`cialist knowledge is not required when introducing a new
`functionality into the telecommunication system. It is suf-
`ficient to use only two types of constructional engineer, of
`which one type need only know the function of the tele-
`communication system on a system level. while the other
`need only have knowledge of parts of the telecommunica-
`tion system on a detail level, more specifically knowledge of
`how the resources shall be used to implement the desired
`new functionality. The first type of construction engineer. or
`designer, need have no knowledge of the system on a detail
`level, while the second type of construction en

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket