首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 应用软件 / 数据库驱动的应用程序 / 电信交换系统的软件结构

电信交换系统的软件结构

阅读:445发布:2021-10-07

专利汇可以提供电信交换系统的软件结构专利检索,专利查询,专利分析的服务。并且所揭示的系统包括用于对电信交换系统进行程度设计的说明性语言,这种语言由某些如主语、谓语和宾语的自然语言成分组成。所揭示的系统也包括一种构成 原型 电信系统 软件 的方法。这种软件能够处理电信系统中的实时和并行操作特性。另一方面,所揭示的系统提供层状软件体系结构,这种结构用于有关的电信交换系统以增加整个系统的功能度。,下面是电信交换系统的软件结构专利的具体信息内容。

1、一种用于产生作为进程控制系统部分操作的软件系统的说明性程序设计语言结构系统,所述语言结构包含:
由包含作用的进程表示的主语;
由定义为离散的程序过程的说明性语言的谓词表示的谓语;和
由数据和用符号形式定义的实际世界实体表示的宾语。
2、如权利要求1所述说明性程序设计语言结构系统,其中主语还包含谓语序列且其特征在于作用是能够执行的。
3、如权利要求1所述说明性程序设计语言结构系统,其特征在于,所述谓语专用于仅与一个所述主语相连。
4、如权利要求1所述说明性程序设计语言结构系统,其特征在于,所述谓语是公用的并可用于与任一活主语相连。
5、如权利要求1所述说明性程序设计语言结构系统,其特征在于,所述宾语按照包含有关作用的宾语进程执行。
6、一种构成电信交换系统的原型软件系统的方法,它包含步骤为:
从用户观点定义软件系统的业务情况的整个描述;
识别用户序列的起点和终点形成用户进程中的实际主语;
识别功能实体和系统中的信息流;
映照功能实体和识别唯一的和公用的谓语;和
在系统中将实际世界实体表示为宾语。
7、一种用于电信交换系统的多层软件体系结构,它包含:
用于执行所述交换系统中的电信特征并用直接对应于指定的电信应用构成的应用层;
向所述应用层提供支持功能和隐蔽并隔离电信应用执行细节的应用操作系统层;
基本操作系统层,它包括:原语和执行电信功能所需的功能以及标准原语和分时计算机系统的运行时间执行程序。
8、如权利要求7所述用于电信交换系统的多层软件体系结构,其特征在于,所述应用层包括:在执行的电信功能中定义特定任务的任务模
9、如权利要求8所述用于电信交换系统的多层软件体系结构,其特征在于所述任务模块至少包含下面两者之一:
在被执行的电信功能中定义特定的电话任务的特征模块,其中包括所使用的信号协议;和
定义与提供被执行的电话功能关联的管理功能的管理模块。
10、如权利要求8所述用于电信交换系统中的多层软件体系结构,其特征在于,所述任务模块包含特征模块、该特征模块包括:
以线路协议的独立方式控制建立和监督调用的用户模块;
进出口模块,用于处理朝向用于执行所述电信功能的每个特定类型硬件的每个协议的语义部分、和用于提供朝向所述用户模块的装置独立协议;和
驱动器模块,它通过在硬件和所述进出口模块之间编码和解码信号来处理每个协议的句法部分。
11、如权利要求10所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述用户模块包括:
定义与完成特定电话任务的特征相联系所需的原始数据的起始部分;
定义用户过程句法和含义并分配缺省值给原始定义数据的用户过程部分;和
定义操作关联特征的通信部分。
12、如权利要求10所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述进出口模块包括:
起始部分,用于给实际线路设置缺省数据、激励硬件和把终端复位到适当的状态;和
发送和处理通信事件的通信部分。
13、如权利要求11所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述用户模块的通信部分被分开以便每个用户有一个调用侧,对于电信事务处理,每一个有它自己的一套状态。
14、如权利要求13所述的用于电信交换系统中的多层软件系结构,其特征在于,所述用户模块的所述通信部分也包括:
包含事件和分状态功能的事件驱动逻辑,这种事件和分状态功能是电信系统中其它用户模块能见到的,并且通过定义假设控制所述用户模块的事件和分状态功能来与所述用户模块交互作用。
15、如权利要求14所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述用户模块的通信部分的所述事件驱动逻辑包括:
一种用于调用执行与特定电信功能关联的所需作业的适当阶段、返回结果并初始化下一状态或分状态的装置。
16、如权利要求15所述的用于电信交互系统的多层软件体系结构,其特征在于,所述被调用的阶段作业包括:分析地址信息、查询其它用户和切换操作。
17、如权利要求12所述的用于电信交换系统的多层软件体系结构,其特征在于,所述进出口模块的所述通信部分包括:
包括事件驱动逻辑的事件处理部分,该事件驱动逻辑包含事件和分状态功能,这种事件和分状态功能是电信系统中其它用户模块能见到的,并且通过定义假设控制所述用户模块的事件和分状态功能来与所述用户模块交互作用;和
用于处理来自线路或其它用户的信号、将所述信号转变成事件并将所述事件送给所述事件处理部分的调度部分。
18、如权利要求17所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述进出口模块的通信部分的所述事件驱动逻辑包括:
一种用于调用执行与特定电信功能关联的所需作业的适当阶段、返回结果并初始化下一状态或分状态的装置。
19、如权利要求18所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述被调用的阶段作业包括:处理几个调用进出口的可能性,和向电信功能用户指明调用进度信息。
20、如权利要求10所述的用于电信交换系统中的多层软件体系结构,它进一步包括一个用于每种硬件和那些与驱动器相关部分的特征的驱动器模块,其特征在于,所述驱动器模块也包括:
提供通用驱动器支持功能的装置,在模块起动时,它承袭体系结构的所述基本操作系统中的事件处理。
21、如权利要求8所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述任务模块包含管理模块,该管理模块包括:
以线路协议独立方式控制对调用的建立和监督的用户模块;
进出口模块,用于处理朝向用于执行所述电信功能的每个特定类型硬件的每个管理协议的语义部分、和用于提供朝向所述用户模块的装置独立协议;和
驱动器模块,它通过在硬件和所述进出口模块之间编码和解码信号来处理每个管理协议的句法部分。
22、如权利要求9所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述任务模块包括至少一个特征模块和至少一个管理模块,所述基本操作系统包括数据库;且所述管理模块通过所述数据库与所述特征模块交互作用构成命令。
23、如权利要求7所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述应用层包括:
包含多个功能的应用库,这些功能频繁地用于设计特征并可选择地用于所述应用层。
24、如权利要求7所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述应用操作系统层包括:
对所述应用层提供通用功能的工具箱;和
为事件和分状态处理和为输入新状态提供通用支持功能的装置。
25、如权利要求24所述的用于电信交换系统中的多层软件体系结构,其特征在于,在所述应用操作系统层中的所述为事件和分状态处理提供通用支持功能的装置包括:
按照特征表将事件或状态与适当的用户模块或进出口模块匹配的装置。
26、如权利要求7所述的用于电信交换系统中的多层软件体系结构,其特征在于,所述基本操作系统层包括:
数据库存储器,用于存贮和检索与由系统执行的电信特征相关联的数据。
27、如权利要求26所述的用于电信交换系统中的软件体系结构,其特征在于,所述基本操作系统层的所述数据库包括:
存贮扩展类数据的装置;和
存贮结构类数据的装置。
28、如权利要求27所述的用于电信交换系统中的软件体系结构,其特征在于,所述基本操作系统层的所述数据库中的用于存贮扩展类数据的装置包括:
存贮类数据的装置;
存贮缺省数据的装置;和
存贮独立数据的装置。
29、一种管理电信交换系统体系结构中的数据的方法,这种体系结构包括应用层中的特征模块和管理模块及基本操作系统层中的数据库,所述方法包含:
在所述数据库中建立特征唯一数据字段并使用所述特征模块的起始部分指定格式、范围和缺省值给所述字段;
在所述管理模块的起始部分中建立与所述数据库中的所述数据字段相关的命令和参数并将所述命令和参数存入所述数据库;
分析所收到的命令并检查该命令的使用权级和检查其参数是否在预选的值限内;和
通过管理特征响应接收的所述命令输入输出适当的个人数据元并操作适当的特征唯一数据字段以响应所述命令修改所述字段。
30、如权利要求29所述的管理电信交换系统体系结构中的数据的方法,其特征在于,所述命令包括:
该命令决定哪个数据应被输出和相对于某个标准计算确定所述接收到的数据是否应抛弃。
31、一种管理电信交换系统体系结构中的数据的系统,该体系结构包括应用层中的特征模块和管理模块及基本操作系统层中的数据库,所述系统包含:
一种在所述数据库中建立特征唯一数据字段并使用所述特征模块的起始部分指定格式、范围和缺省值给所述字段的装置;
一种在所述管理模块的起始部分中建立与所述数据库中的所述数据字段相关的命令和参数并将所述命令和参数存入所述数据库的装置;
一种分析所收到的命令并检查该命令的权级和检查其参数是否在予选的范围内的装置;和
一种通过管理特征响应接收的所述命令输入输出适当的个人数据元并操作适当的特征唯一数据字段以响应所述命令修改所述字段的装置。
32、一种用于过程控制系统中的多层软件体系结构,它包含:
用于执行所述系统中的过程控制功能并用直接对应于指定的过程控制应用构成的应用层;
向所述应用层提供支持功能和隐蔽并隔离过程控制应用执行细节的应用操作系统层;
基本操作系统层,它包括:原语和执行过程控制功能所需的功能以及标准原语和分时计算机系统的运行时间执行程序。
33、如权利要求32所述用于过程控制系统中的多层软件体系结构,其特征在于,所述应用层包括:
在执行的过程控制功能中定义特定任务的任务模块。
34、如权利要求32所述用于过程控制系统中的多层软件体系结构,其特征在于,所述任务模块至少包含下面两者之一:
在被执行的过程控制功能中定义特定的控制任务的特征模块,其中包括所使用的信号协议;和
定义与提供被执行的过程控制功能关联的管理功能的管理模块。

说明书全文

发明涉及电信交换系统,尤其涉及电信交换系统的过程控制软件的开发和结构。

软件体系结构和存储程序控制电信交换系统的应用程序的开发一直是一个复杂而耗时的任务。从开发定义所提供服务的操作及其相互关系的功能规格到测试系统在其中运行的硬件中的实际的实时代码,这个过程要求许多步骤。开发这种软件体系结构也要求许多在不同开发领域中工作的开发者的相互工作,并要求每个开发者在开发过程中的每个步骤上进行多次协调。于是,投放市场的能实现用户要求的驱动功能和特征的新软件系统是很昂贵的,而经历了这样一个艰巨而漫长的系统设计、开发、测试和商业上投入市场的过程后,用户的要求常常已变成了更新的需求。

开发任何软件系统重要的考虑之一是选择构成系统中所采用的程序设计方法。熟知的已有技术的程序设计方法包括:用如“ADA”或“PASCAL”语言的面向过程的程序设计;用如“C+”或“SMALLTALK”语言的面向目标的程序设计;和用如“PROLOG”或“LISP”语言的说明性程序设计。这些语言没有一个能包含开发电信交换软件所需要的全套特性。例如,面向过程的程序设计语言概念能给欲编程的主题提供良好的理解和定义,但是,它给过程中的结构和定义作用或判定只给以极有限的支持。当对过程中的作用进行程序设计时,需要设计者提供应用软件中大量的各个详细情况。同样,虽然程序设计语言的PASCAL/ADA代对于数据的定义和处理给出某种支持,仍然要求程序员做大量的详细工作,而这些工 作对于正在产生的实际应用作用很小。

即使最新的面向目标的程序设计方法也有它的局限性。这种面向目标的程序设计方法已将各种技术集中于对目标的定义和继承,和如何为各目标编制文件。虽然这些技术在开发包含大量目标要定义和处理的程序中具有重要作用,但是当某个程序自身被定义为一个目标时,就会出现许多涉及说明和结构的问题。

然而,在如电信交换系统那样的过程控制程序中,程序实体总是那些对系统中的活动起作用和控制的主体。电信过程程序系统中的目标基本上具有两种类型:

(1)所有这种程序系统具有用程序运行用数据定义的内部目标。这些目标是软件系统的实际,而数据是程序处理的实际世界的“静态图象”(static    picture)。

(2)然而,所有实时和过程控制系统也对程序系统外部的动态目标操作。这样的动态目标如电信系统中的显示屏上的图像、或电话机和长途通信系统中的中继线。这些程序系统也将包括由数据目标表示的动态目标。

如果程序是一个与它的目标密切相关的例行程序,则将动作与数据封在一起全部作为一个目标的面向目标的程序设计技术将是一个明显的优点。这样的例行程序的例子可在显示屏表示系统中及在电信系统的线路接口部分中找到。然而,如果在这样的一个过程控制软件系统中的控制程序全被定义为目标,则也会产生某些负作用。首先,控制程序被分成片段且在目标之间必须进行复杂的交互和联系。其结果是需要一种重叠的控制结构,且在已知的目标库(object-based)电信系统中,已要求用复杂的C.C.I.T.T规格设计语言(SDL)流程图来描述这种控制结构。此外,目标之间的动态关系即使使用这种流程图也仍然难以描述,甚至难以理解。其次,当控制软件系统中没有实体定义为目标时,则任何解释模型有其内在 的缺陷。程序作用,即它的判断与目标在一起,于是提供目标和作用两者是很难安排的。这样使得把过程控制系统中的作用组成逻辑组几乎是不可能的。而且,设计人员不能以普通方式构成应用,这种普通方式是指任何人都很易懂得作用的组成并且对于设计者也能很方便地用它工作。

最近的一代说明性程序设计语言如PROLOG和LISP是很有效的并减少了软件设计和程序设计的工作,这是由于:(a)所有程序设计都能以符号形式进行;(b)谓词概念和整套全新的强有的指令已包含在那些语言中。这种语言的应用显著地减少了程序员需涉及的细节的数量和程序密封的重要性。在如存储程序控制电信交换系统的过程控制和实时系统中应用说明性语言的实际缺点是实时性能不足且它们不能进行并行处理。

许多较新的说明性或面向目标的编程语言的使用已允许程序员完成功能或程序的快速原型。快速原型技术有许多已知的优点,它们具有增量式地设计并开发某种应用或系统的能力。潜在的花费大的设计错误能被检测出且在开发过程的早期就能被纠正;系统的各个方面能很快完成和测试;能避免冗长的测试和/或实现阶段;并且快速原型开发使设计者能开发出关于应用或功能的大量选择方案。原型法还存在许多其它优点。

快速原型技术还有利于电信系统的前后衔接。然而,直到目前,这种技术由于处理出现在电信系统中的活动的实时特性和这些操作的并行特性而存在几个缺点。

本发明的系统包括对先前已知的原型法和其能力在某些方面的扩展以便快速原型能有效地用于电信系统中。原型技术用于电信系统的实验描述在“prolog对电信系统的快速原型的应用”(J.L.Armstrong和M.C.Williams,这信交换系统软件工程第七届国际会议,1989年,7月3-6日,Bournemouth)一文中及“编程语言和 技术用于电信应用的试验”(B.Dacker,N.Elshiewg,P.Hedeland,C-W    Welin,M.Williams,电信交换系统软件工程第六届国际会议,1986年,4月14-18日,Eindhoven)一文中,这里也将它们收入供参考。

说明性语言ERLANG的开发已根本上解决了将过程控制概念引入说明性语言领域中存在的两个问题。ERLANG语言的基本概念描述在文章“ERLANG:实验电话学编程语言”中(会刊,国际交换论文集ⅩⅢ,卷3,第48页(1990)),这里也收入作为参考。一个更详细的处理可在“Erlang用户指南和参考手册”和“Erlang    BIF指南”中找到,这里收入作为附件A。这种语言的应用能使得实时过程控制软件系统的结构与本发明的系统一致。

本发明系统的一个目的是提供一种用于如电信交换系统的程序设计过程控制系统中的说明性语言结构。这种语言结构包括自然语言成份,包括:由过程作用表示的主语;由定义为程序进程的说明性语言表示的谓语;和由数据及定义为符号形式且包括在目标过程中的实际世界客体表示的宾语。

本发明系统的另一个目的在于提供一种构成电信交换系统的原型软件(prototype    software)的方法,该方法包括准备功能规格说明并连续地将这些功能规格说明直接映照给用户和使用本发明的说明性语言结构的网络功能实体。

本发明的再一目的在于提供用于如电信交换系统的过程控制系统中的软件体系结构。在这种情况下,系统包括一个包含有应用层、应用操作系统层和基本操作系统层的分层结构,每层相互结合提供增强的功能度。

本发明的又一目的在于提供一种构成电信交换系统的原型软件系统的方法,在这种软件系统中,软件系统的服务状况的整个描述首先由用户观点定义。形成用户实际主题的用户序列的起点和终点 给以标识。接着,对功能实体和系统中的信息流给以标识,并对功能实体和单一性及通用性谓语的标识进行映照。最后,实际世界实体表示为系统中的目标。

本发明的第五个目的在于提供一个用于电信交换系统中的多层软件体系结构,这种结构包括一个实现交换系统中的电信特性的应用层,且这种结构用直接对应于特定的电信应用来构成。一种应用操作系统层用于支持应用层的功能和用来对电信应用的实施细节进行隐蔽和隔离。一个基本操作系统层包括:实现电信功能所需的原语和函数及标准原语和分时计算机系统中的运行时间执行程序。这方面的实施例包括具有定义电信功能中或要实现应用中的特定任务的任务模的应用层,包含其中应用的信号方式协议。在其些情况下,如果实现某个特性不需要直接与其相关的特定的管理功能,则一个任务可仅包含一个或多个特征模块。同样,也存在这样一种情况,在这种情况下任务可仅包含一个或多个管理模块,而不包括特征模块。最后,一个任务模块可包含一个或多个特征模块及一个或多个管理模块。

本发明的第六个目的在于提供一个管理电信交换系统的体系结构中的数据的系统,它至少包括应用层中的一个特征模块和至少一个管理模块及基本操作系统层中的一个数据库。在该数据库中建立特征-唯一(Feature-unique)数据字段,并且利用特征模块的初始部分来指定格式、界限和缺省值。管理模块的初始部分建立涉及数据库中的数据字段的命令和参数并把这些命令和参数存入数据库中。每个命令被分析以响应它的接收且为调用它时校对它的参数是否在予选值的界限内。适当的独立单位由管理特征存取以响应接受命令,而适当的特征唯一数据字段被运行修改字段以响应命令。

本特定技术领域中的技术将被作为那些普遍技术而接受:除了电信交换系统外,本发明的原理和方式能用于改进其它各种计算机 和过程控制应用和其它软件系统。

下面结合附图参照本发明的描述就能理解本发明并能进一步看到本发明的其它优点,其中:

图1表示本发明系统应用于开发控制电信交换机的原型软件的方框图;

图2为用于开发原型软件的步骤方框图;

图3表示本发明系统的软件开发的流程图;

图4表示指定本发明电信软件开发服务情况的步骤流程图;

图5表示按照本发明开发电信软件的功能网络状况的规格说明流程图;

图6表示本发明的将来自功能规格说明的功能实体映照到软件系统结构上的方框图;

图7表示本发明的将某个网络中的功能实体从规格说明映照到软件系统的方框图;

图8表示本发明构成的电信交换系统的整个软件体系结构的方框图;

图9表示本发明电信软件系统体系结构的方框图;

图10表示用户模块的业务部分按本发明分层建立方式的方框图;

图11表示本发明软件系统体系结构中数据处理操作交替进行的方框图;

图12表示本系统的呼叫侧分开状况的方框图;

图13表示本系统呼叫侧的交互作用图;

图14-16表示执行本系统中的功能特征的各种状况图;

图17表示建立本系统原型并在其中操作的整个开发环境方框图;

图18表示本发明系统和某些其它已知系统之间的某种差别的 方框图;

本发明的系统由几个相关的方面组成,它包括:一种特别适用于如电信系统的实时过程控制系统的程序设计语言结构;一种用于准备应用于电信系统的原型软件的方法学;和电信交换系统的软件体系结构和程序构造工具。本发明这些不同方面的每一个和它们的相互关系下面将从它们的理论和技术基础及它们在实际操作软件系统中的应用两方面加以讨论。

如上所讨论,熟知的面向过程的编码方法、面向目标的编程方法和说明性语言编程方法,当它们用于如目前的电信交换系统的实时过程控制环境中时,存在某些内在的缺点。用于本发明系统中的这种实时过程的程序设计结构方法通过使用一种具有新颖语言结构技术的健全的说明性语言结合处理实时过程和性能及平行操作,产生了一种清晰的易于理解的面向应用的(application-oriented)软件体系结构。

本发明系统的语言结构技术,其特征在于使用“主语”、“谓语”和“宾语”三个自然语言成份。“主语”由作用过程表示,而“谓语”由定义为程序进程的说明性语言的谓词来表示。“宾语”由数据和如电信长途通信和电话等的实际世界的实体来表示,它们都定义为符号形式并包含在一个目标过程中。本技术不仅能够在构成应用结构方面使软件设计者专心于定义不同的实体,而且,本技术强有力地支持了这种做法。使用人类语言的三个基本成分使建立一种不仅强有力而且更清楚易懂的模型。而且,本语言结构也可看作活目标的变化表(“PACS”)。

在本发明系统中,主语定义为一个序列或谓语的许多序列,且其特征在于,它能执行。这提供了一种将所有功能构成组的强有力的机制,以形成软件中自然和容易理解的实体。使用过程概念解决了大量的实时问题,另外,它支持了把“主语”语言成分引入计算机 程序设计语言的结构中。在本发明系统中,主语以类似于这样的方式被命名和指定它的作用内容,这种方式如同泥瓦工、机修工或木匠等各种人被各种人被命名和定义在实际世界中一样。这使能自然说明作用之间的关系。例如,在一个PBX软件系统中,这种情况称为业务交互作用,在使用本发明的方法学中,这种交互作用变成主语说明的自然部分。然而为了对某应用或业务定义适当的主语,则需要彻底了解这种实际应用。主语概念也支持这样一种努力,即把软件开发的集中点从低平的实现细节转移到朝向整个应用和解决用户定义的问题。

在本系统中,除了设计人员的概念化的对被开发的系统或应用中的最低级的抽象外,任何其它情况都可定义主语。在最高级抽象中,存在一个被定义且打破系统整个功能的主语。提供全部控制序列和系统流的最高级主语类似于用于传统程序设计语言中的主程序或例行程序。在本发明系统的这种情况中,主语包含一个主语、谓语和宾语过程的序列,或是包含一个仅有谓语和宾语过程的序列,用来定义形成那主语部分的全套活动。

本系统中可定义为主语的功能或活动的例子包括但不限于这些:(a)电信交换系统的活动;和(b)询问电信系统什么业务可在系统中使用。应该理解为:被定义为谓语的一个序列或多个序列的主语,在处理某特征的特定情况的特征模块的用户部分中,可解释为活动或控制流,正如下面涉及的本发明改进的原型技术“和”软件体系结构和技术”部分中所描述。下面紧跟的是一套“伪代码”例子,它们能用于本发明系统中定义主语。

ACTIVATION,DEACTI-VATION    and    REGISTRATION>

activate(FromUser,UserSatate,UsersParticipated,User-Date)->

register(FromUser,UserState,UsersParticipated,User-Data)->

INTERROGATION

interrogate(FromUser,UserState,UsersParticipated,UserData)->

INVOCATION

userInvocation(UserState,InteractingState,UsersPartici- pated,

UserData)->

interacting    Invocation    1(UserState,InteractingState,UsersParticipated,UserData)->

interacting    Invocation    2(UserState,InteractingState,UsersParticipated,UserData)->

OPERATION

OPERATION

user    1(UserState,InteractingState,USersParticipated,UserData)->

user2(UserState,interactingState,UsersParticipated,UserData)->

user2(UserState,InteractingState,UsersParticipated,UserData)->

EXCEPTIONS

activation    Exception(UserState,InteractingState,UsersParticipated,UserData)->

deactivationException(UserState,InteractingState,UsersParticipated,UserData)->

*1991 Telefonaktiebolaget L M Ericsson

主语所用的谓语,在本发明的系统中用基本指令或通过由定义称为过程的程序的例行程序形成新的谓语来定义。每一过程能被指定且对一个特定主语唯一或该过程可通用并由许多不同的主语来使用。每个过程的特征在于它的作用。在分层体系结构中用过程作为说明性语言中的谓语,对于产生抽象等级和增强最高等级语言的能力,事实上是没有限制的。在设计这类系统中应使用的一个基本规则是应保持过程数少到足以使系统易于理解和维持。一个谓语应看作这样一个离散的过程,如数量分析。虽然谓语能完成一个复杂的任务,但它必须总是非常清晰。在最低级上,谓语能由没有比单一说明语句更多的东西组成。这也应该看到:本发明语言结构方面所用的谓语在应用操作系统中(AOS)表示为说明性语言中的谓语且定义为程序的过程,正如本发明下面“软件体系结构和技术”一段中所述。

本发明方法能与提供全部或部分程序的已知的C++方法相比 较。但在后者情况下,实际的宾语和谓语都称为目标且作用或谓语总是与实际目标紧密相关联。在C++中这样做是为了提供密封。然而,当使用说明性语言时正如使用面向目标语言时,密封的需要几乎是不重要的。如在C++中作用与目标的弱关联极难产生易理解的功能结构。另一方面,本发明的方法使得只要承袭谓语或作用就能产生清晰的功能结构。这样的功能结构容易理解且在过程控制软件系统的结构中这样做总是很重要的。

在本系统中,宾语定义为与作用密切相关处理的包含以符号形式的数据和/或实际世界实体的进程。这使得在宾语进程中能够包括任何与宾语密切相联而对谓语的逻辑结构不重要的作用。这样的例行程序包括如:扫描外部目标状态的例行程序,总是执行某个目标的计算例行程序、和在屏幕上显示某些东西的例行程序。于是,面向目标的方法如C++的主要优点在本系统中获得应用。然而,更重要的是主语和宾语由于它们作为两个进程而不是相互混合在一起的。进程是一种执行技术,而在应用体系结构中,主语、谓语和宾语都是进程实体。如果一个例行程序不与数据宾语紧密相联、则它应当分离出来作为谓语进程。用于承袭和包括其它宾语的方法需要时也可引入,这是本技术中众所周知的。同样,如果谓语长或复杂,那末它应当构成主语以代之。

应当认识到:通过本发明的语言结构中的数据和实际世界实体表示的状况,如下面本发明的“软件体系结构和技术”一段相关的描述,可解释为存取部分。在那相关部分中,用户部分执行一个谓语或是一个过程,它对于存取部分是一个执行特定任务的命令。该命令不取决于实际世界实体是如何设计的。这就是说,命令能按呼叫的实际条件通知存取部分,例如,进入呼叫,呼叫用户号码、例如12345,和呼叫用户类别,例如,一个操作者。如果存取部分是一个模拟扩展,那末有可能在存取部分中产生一个振铃信号。然而,如 果存取状况是一个特征电话且有显示,那末号码12345能够与操作者类别的可能的指示显示在显示器上。

本发明的软件结构方法学强有力地支持了设计者和程序员的活动远离执行细节且朝着增加他们集中于应用方面的知识。这使得即使当应用包含非常复杂的进程和逻辑时,也能对面向应用的软件体系结构有清晰和容易的理解。本发明的技术使软件易于维护且通过添加功能进一步增强,下面将结合本发明的其它方面的描述进一步举例说明。

一种用于电信交换系统中的软件开发的改进的原型技术

本发明系统能用于开发和评估当前的软件体系结构或电信交换系统,尤其是,能用于产生开发新应用或扩展这种软件的有用的原型库。用于本发明系统的编程变化表如上所述是说明性编程变化表,且所采用的操作系统尤其适用于支持电信应用。例如,操作系统已扩展到包括每个呼叫故障的恢复。

电信交换软件的开发越来越多地为市场所驱动。应用专家们正卷入软件体系结构设计中以便通过整个开发链来简化销售特征的处理。就是说,产品规格说明中的特性被映照到软件体系结构中的实际特性模块中。事实上,市场驱动已引进了软件开发之中。

原型电信交换系统体系结构和交换系统软件包括解决极复杂的问题,且在早期阶段还必需检验实际试验的结果。原型分成若干周期,每个都有它自身定义的目标,其中每个周期包含全部要执行的限定的特征数,且每个连续的周期引入新的特征。这样的原型,即使它们限定于它们的功能度内,也代表实际的系统。原型能有实时特性和可与实际产品相比的质量。它们形成一个稳定的库用来建立进一步的原型及执行操作软件。

原型进程在准备整个工作模型中是个极重要的阶段,且允许使设计者主要考虑用户方面。参看图1,那里显示了进程的方框图,图 中所提出的系统的可适用性21从用户学习和他们的要求22开始评估。随后是用户接口模拟/测试23为原型提供原始工作依据。接着执行原型进程24自身。该进程使用原型新应用26的新软件技术25,以便对产品开发28的规格说明有透彻的了解,及对标准机构27产生合格的输入。进一步的好处是,这些原型,用相对少的工作就能开发成最终可用产品。

实际上,新应用或特征的原型在协作的用户侧被设计、执行且最后被测试。构成原型的实际工作模型显示在图2中且最终模型以设置在特征模块中的每个特征为特征。图2表明在规范和设计阶段期间必须产生的相应文件,它包含特征规范31,特征规范31包含功能规范32和测试规范33。从特征规范31引入特征设计和验证阶段34,该阶段34包括结构规范35、多个说明性语言模块36、和用来产生验证逻辑38的验证模块37的准备。最后,进行和完成系统测试阶段39。

接着参看图3,这里显示了说明本发明系统的原型软件开发方面多阶段整体状况的流程图。如上所述,产生原型的开始任务是准备规范。在方框步骤41中,使用了由C.C.I.T.T.标准规程规定的三阶段方法学的第一阶段。特别是,这些技术表明在C.C.I.T.T.规格说明书I.130(电信业务特性法);Q.65(阶段2的详细描述);和I.310(ISDN网络功能原理)中,这里列出供参考。该起始阶段对用户方的应用的整个描述或规范进行准备。下面在方框42中,准备粗略设计与上述每个用户给出的说明性语言相接合的各种主语。它包含形成实际主语的用户序列的起点和终点的识别。因此在方框(步骤)43中,系统采用了另一个规范步骤即上述同一C.C.I.T.T.规程中给出的阶段方法学中的阶段2,它包括功能实体的识别,下面步骤44中,功能实体被映照,且唯一和共同的谓语按照上述说明性语言方法被识别。在这一步骤中,用户序列以主语表示,且各种功能 以自然和易懂的方式被构成和/或分组。最后,在步骤45中,每个实际世界的实体表示为宾语。如,存取序列,它们虽在内部可构成主语,但也用宾语表示。

下面进一步阐述本发明的原型技术。图4说明功能规范的业务方面的步骤1的规范。这是整个描述从用户方面开始的准备过程。如图4所示,业务可以特定状态51出现,且为响应用户请求52就要求功能作用53。53上功能作用的结果产生一个输出去触发54上的用户响应并选择特定状态55。然而,53上功能作用也可取网络/用户请求56的形式以调用产生功能组成58的网络/用户响应57。组成58可进一步产生功能作用59及用户响应60使系统进入内部状态61。

相类似,产生功能规范的阶段2过程处理如识别功能实体的功能网络方面,且信息在系统中流动。如图5所示,多个功能实体(FE1-FEn)62-65与网络66的功能组成方面相互连接。每个这种功能组成能与其它功能组成交换信息以便在系统的各种组成中有完全的信息流将实体与功能网络相联。例如,从功能实体62在66a上发送的信息请求,在功能实体63的67上被接收。在响应中,它从68传送一个信息请求到功能实体64的69,依次,从71传送信息到功能实体65的接收器72。此后,在功能实体65中产生的响应使用从73至74和75至76和77至78的信息响应,通过功能实体64和63传递到功能实体62以便在79上提供一个对原始请求的回答。

下面参见图6,它表示了一种方式的说明图,本地情况下的即非网终的电信中的功能实体以这种方式被映照到程序结构中。它表明了包含规范结构81的功能实体FE1-FE4是怎样映照到本发明82的程序结构上的。如图所示,两个电话装置83a和83b通过进出口84a和84b各自与软件结构互连。每个进出口构成软件结构中的宾语。类似地,进出口84a和84b通过在本发明程序结构中形成主语 的用户A实体85a和用户B实体85b互连,且如图6所示,进出口/宾语是独立的。

下面见图7,图7表示了功能实体被映照入网络电信情况的方式。这里显示了规范结构81的功能实体FE1-FE4被映照到程序结构82上。电话装置83a和83b也分别连接于各自的进出口A和B的84a和84b。类似地用户A实体85a和用户B实体85b也在进出口/宾语独立的程序结构中形成分开的主语。另外,还存在网络相关主语86及总网终主语87。它们的每一个包含网络用户A86a、87a和网络用户B86b、87b。另外,网络协议88互相连接网络进出口A实体89和网络进出口B实体90。

在本发明的原型系统中,进程的概念用于以相互同时进行的进程来得到应用的运行时间结构调用模型。一个进程由于外界激励/信号会变活,且在执行实际编码之后,进程仍保持确定的状态。这样一种模型能很好地与应用特性相匹配,在于有许多并行调用且每个调用触发几个操作序列。

通常,系统以分配规范中的功能模型的方法来分配调用模型。下面参看图12,每一个功能特征模块90有进出口160和用户161的不同实体,且除了这些模块之外,线路/终端装置162也是分开设计的。于是,如图12所示,对于调用的每一侧,分开的进程分配给:(a)每个硬件装置(驱动器进程163);(b)每种线路(进出口进程164);和(c)调用中的每一方(用户进程165)。

网络化特征,及独立PBX特征应该很好匹配,且因为它们在规范工作阶段已放入功能模型中,所以分开调用侧用不同的实体表示。因此,从一种分开的观点选用于调用控制,以产生两个调用侧,每一侧有它自己的进程组。分调用控制也包括使状态总数大大减少的附加优点。在许多情况中,分调用控制在做决定之前需要调用侧之间进行交涉/联络。于是,两侧之间的通信联络当它在处理器之 间通过时由隐含信息的高等级的协议来支持。

按照下面更详细的讨论,系统软件体系结构分成几层。这将提供显著的优点,如:

(1)应用变得独立于所选操作系统;

(2)应用变得独立于所选CPU硬件及独立于电信硬件;和

(3)应用感觉不到处理器的分配。

系统体系结构的分层结构显示在图8中。图中,应用层91、应用操作系统层92、和基本操作系统层93组成软件系统。应用层码被定界是为了应用软件结构尽可能紧凑地将操作运行时间环境模块化。应用层91包括许多独立的任务模块89,这些任务模块89将先前在规范工作阶段确定的宾语/特征反馈给销售者。这些任务模块89进一步细分为用户模块94、进出口模块95和驱动器模块96。每个用户模块94将进出口安排成独立特征方式即一个特征的通信控制部分。每个进出口模块95处理终端特征和个人调用会话的起点/终点。每个驱动器模块96将逻辑信号编码成位流给硬件并对来自硬件的位流和逻辑信号进行解码。这些任务模块89为:(a)电话任务、包括信号协议;(b)管理任务;或(c)特征之间的交互作用等描述了全套功能或特征。本发明系统的一个强制性特征是基本调用序列。

系统的应用层91也包含一个应用库97。应用库97的组成给设计者提供强有力的工具和提高应用设计的水平。它包含设计特征时频繁使用的功能。这些功能的每一个在每个新应用的规范阶段可被识别且不需要对做功能操作的细节进行编程就可结合进系统。

继续参看图8,应用库97包含如设计特征时常用的功能。这些功能可在规范阶段进行标识且在工作阶段也可简单地再使用。应用库97的功能与应用操作系统功能的约束性相比较可很好地具有几个调用侧方面的功能度。下面是一个可包含在应用库97中的功能表:

(a)回答调用;

(b)校验调用;

(c)连接调用;

(d)分离调用;

(e)分配调用;

(f)结合调用;

(g)合并调用;

(h)排队调用;

(i)重联接调用;

(j)重改路线调用;

(k)重新开始调用;

(l)复原调用;

(m)占用用户;

(n)调定调用;

(o)分调用;和

(p)暂停调用。

另外,应用库97的功能也可定义为管理型特征。

系统体系结构的应用操作系统(Aos)层92也显示在图8中,它对应用层91提供支持功能,且帮助开发者在几个不同特征中复制编码。这也有助于通过再一次隐蔽应用设计者的执行细节而使应用编程以尽可能高的抽象水平出现。Aos层92有两个原始功能组,工具箱98和一组类功能99。工具箱98给应用层91提供一般用途的功能,如它包括:(a)用户间通信;(b)交换;(c)排队;(d)定时;(e)调用履历;(f)号码分析;和(g)结构管理。AOS层92中的类功能(一般功能,即generic    functions)提供执行包含在特征模块90中的用户94和进出口95模块所必需的机制。

电信系统的操作系统通常是比在系统部分之间发送信息、装入 代码、和执行I/O操作等具有稍多功能度的简单运行时间执行程序。在电信系统中,这常意味着管理分配、再起动或其它操作/过程机制比对特定特征或应用的功能度进行编码更困难。本发明操作系统的做法在于提供一个基本操作系统93,它更类似于用于标准分时系统中那样,但它也包括附加的尤其是电信所需的原语(prmitives)和功能。这样的功能的一些例子包含:

(a)驱动器102的类功能;

(b)初始化功能103;

(c)数据库存储和检索功能104;

(d)装置定位和再定位功能105;

(e)误差恢复功能106;

(f)根据切换(交换)组的变换进行切换;和

(g)隐含分布式体系结构和实际结构的真实性。

在进程、进程调度、连接到硬件的I/O等之间通行的信息的标准原语当然是和控制程序板一起出现的。本发明的基本操作系统(“BOS”)93提高了编程等级,但也有利于系统容错能力。BOS93保持资源已分配给应用进程的信息,且也保持进程在事务处理中的联结信息。于是,由于编程错误或由于连接节点失败而出错时,BOS93能够终止连接的进程并恢复资源。作用之一是它允许每个调用错误得到矫正。另一优点是它提供一个开发所应用软件的极强的试验环境。而且,在本系统中,硬件和软件故障仅影响到它们所在的事务处理,且系统能以有效和有序的方式再组织和再定序。

如上讨论,按照本发明,原型和实时操作系统两者的程序设计采用如按照如上讨论的活主语的变化表所构成的语言ERLANG的说明性语言。在选择这种用途的ERLANG中,对语言LISP、PRO-LOG和PARLOG进行了研究。研究表明需要附加结构来处理并行、实时操作和其它特别是对于电信交换系统的特性。甚至能够处理 并行性的专类逻辑语言如PARLOG,并行的PARLOG和其它,也仍然不能包括足够的并行度使异步电话进程能用该语言的单个进程来表示。ERLANG具有PROLOG和PARLOG两者所需要的特征而用并行性和误差校正构成其语言本身。正如上面ERLANG结合参考其它所明显看到的那样,ERLANG包含:高水平符号化特性;图型匹配句法;简单的控制结构;高级数据结构;误差检测和校正支持;轻便进程和信息通行。

本发明原型系统的实行中,原型环境可包含工作在UNIX操作系统下的标准工作站。工作站的开发环境可包含:包括X窗口的用户接口;具有根据菜单存取的档案库存储器;版本管理;运行在UNIX下的文本编辑程序;通过画面产生器准备文件;和经电子邮件的通信。另外,原型支持系统包含用于规范阶段及进一步设计和验证阶段的工具。这些工作阶段共同的工具包含:在同一工作阶段中的文件之间的浏览程序(browers)、选择图像(selected    views)、高级文本编辑程序、文件中的跟踪能力;和在规范及最终码之间的跟踪能力。

对于规范工作阶段,支持系统提供图形工具、构成静态和动态模型的工具和模板。对设计和验证工作阶段,最重要的工具是ER-LANG系统,它具有如下能力:

(a)执行一个特征模块和模拟硬件节点;

(b)跟踪各功能步骤;

(c)监视特定进程的所有通信;

(d)检查进程结构,即确定哪些进程暂停,进程是怎样联接解决错误校正的等;

(e)检查进程的全程变量;和

(f)对飞行码重新编译并将它引入操作运行时间系统。

另外,该支持系统还提供交互作用图,数据库和其它工具。

在原型技术的评估中,各种特征可选用作测试宾语。这些特征按照现代PBX的功能规范如Ericsson    MD    110进行设计,且包含下面的特征:基本调用;基本网络调用;基本无塞绳调用;调用线路标识;三用户业务;调用发送;话务员转接;关于忙/闲回答的调用完成;话完员二次呼叫;和侵入(打扰)。

如上所述,软件体系结构中的层状结构与规范功能结构的密切映照能够使得一个完成整个特征设计和运行。该个人也可对功能规范工作阶段作出响应,于是能使软件设计者成为实际应用设计者,并使他们的注意力集中于用户和他们的要求。这进一步使得体系结构中的较低层要由系统设计者多加注意,尤其是对于任务更是如此。

软件体系结构到功能结构的密切映照使工作模型极简单。结果是本发明所生成的文件量大大减少。而且,原型中的某些文件能自动生成。本系统的设计效率至少提高了10倍。原型软件的特定特征的设计和验证所需人员减少到一个人,这提供了极大的优点,包括消除了长时间的等待期并减少了引导时间。进一步的好处是具有更精确的软件设计。

本系统中的任务,特征或管理模块设计相当容易,由于有大量的不同因素还能智能进行模拟。例如,功能规范的语言文本与特征模块中的编码相对应,因此改进了编码和特征理解。另外,程序规模小且可使用语言质量如匹配、列表处理和递归功能等进行测量。而且,设计是增量式和交互的且进程允许结构扩充。在本系统中,由于程序能在飞行中重新编译且由于特征或部分重复验证是自动的和仅由起动测试文件就可完成这种验证,所以不需要插入码。最后,数据能以高符号等级来显示;这就不必考虑设计期间的容量问题;且几乎不要准备文件编制。

正如从本发明的上面描述的原型技术中所看到的,体系结构工 作是建立在对用户应用知识的真正掌握的基础上。这就能在层结构中建立有限量的好定义的实体。系统对实体划界且严格地定义它们的功能内容,而不是要求去开发如何提供资料和承袭宾语的附加方法。这种体系结构的组合是相当易懂和易掌握的,使用如上所述的实时说明性语言,大大减少了实现电信交换系统中新业务和特征所需的工作量。这样就能在它们大量投入市场之前就能通过执行先进的原型来完成新业务和特征的实际生活试验。本发明的技术能排除实现问题的大量工作且将注意力集中于用户需要和集中于开发新的更先进的业务。

软件体系结构和技术

根据上面结合图8的讨论,本发明软件系统结构体系是层状且包含:应用层91;应用操作系统层92;和基本操作系统层93。另外,一个执行层101接收层状软件体系结构。应用层91包含具有大量任务模块89的应用库97。每个任务模块89包含用户模块94、进出口模块95和驱动器模块96。应用操作系统层92包含工具箱98和一套类功能99。基本操作系统层93包含驱动器102的类功能、系统起动和再起动功能103、数据库存贮和检索功能104、装置定位/再定位105的类功能和错误校正功能106。执行框101包含如Erlang说明性程序设计语言系统107、硬件操作系统(“OS”)108、中央处理单元(“CPU”)109、和电信交换硬件110。

下面参见图9,这里显示了本发明的层状软件体系结构的另一个视图,其中,应用由最高层即最接近应用说明的那些组成。其它层代表较深的执行层、它们更接近运行软件的物理机器。如图所示,应用由应用层91组成,它包含应用库97和应用操作系统层92。应用层91给出的结构与应用被最初指定的方式相一致。应用层91也用应用操作系统层92与基本操作系统和系统体系结构分隔开。应用操作系统层92为了避免在几个不同任务或特征中重复编码而给应 用层91提供支持功能,以便使应用程序设计尽可能高度概括进行并使应用设计者脱离执行细节。在内部,应用层91细分成多个独立任务模块89,从功能上它们可看作特征模块90和管理模块111的结合。这两类模块、特征模块90和管理模块111的每一类相互非常相似且全部细分成用户(呼叫处理)模块112a-b、进出口(线路处理)模块113a-b、和驱动器模块114a-b。特征模块90和管理模块111一起描述了系统中的全套特征或任务。任务可包含如电话和管理任务自身,即它是如何与其它特征、信号协议等交互作用的。“基本调用(呼叫)”认为是必须总是包含在系统中的强制性特征。任务模块89对于一个特征任务可仅包含特征模块90或对于另一个任务仅包含管理模块111。然而,在其它情况中,任务模块89可包含特征模块90和管理模块111两者。

特征模块90的用户模块112a,如可控制基本调用(呼叫)和任何特征。它以线路协议独立方式控制调用(呼叫)的建立和监控。作为举例,用户模块112a可包含:

(a)一个起始部分,它定义由特征所需要的原始数据,以便完成如建立独特的数据段、给这种字段指定缺省数据等任务;

(b)用户过程部分,它定义用户过程句法和意义并指定缺省值;和

(c)话务(通信)部分,它定义特征是如何工作的。

管理模块111有类似结构的用户模块112b、进出口模块113b和驱动器模块114b。

特征的通信部分(traffic    part)是分开的,以便每个用户的一个呼叫(调用)侧有它自己的一套与其它呼叫(调用)侧分开的状态。这大大减少了必需的呼叫(调用)状态的总数,而留下的状态是能够在将来定位的自然用户状态。每个用户模块112a的通信部分从最高级(顶级)分层构成。如图10所示,所有外部和内部激励进入该顶 级以便到达由事件和分状态(substate)功能170构成的状态/事件驱动逻辑。从该顶级、一个适当的阶段171被调用,该阶段的结果作为下一个状态或分状态及调用中用户的加入/离去的开始。这种结构给设计者提供了只要通过读该顶级即可综观整个特征的方便。

事件和分状态功能只是用户模块的部分,在系统中,这些功能可看到系统中的其它模块。它们包含通过定义事件或分状态功能能与第一调用处理模块交互作用,这些功能接收控制,其后返回去。例如,记录特征总是在特征完成执行后返回去。由应用操作系统92向状态/事件处理提供通用支持功能(generic    support    functions)。

阶段171是对它自己本地库172、应用库97或应用操作系统92寻址的功能调用在一个大范围内的组合。完成阶段171之后,一个结果返回到顶级。典型示例阶段的作业包括:(a)分析地址信息;(b)校验权级(authority);(c)询问其它用户;(d)回答其它用户的询问;(e)切换(switch)操作;和(f)命令接管线路。应用层的通信(traffic)部分中所用的分层结构表示在图10中。这里显示了为执行通信功能各种功能是怎样从各个库和操作系统被调用的。

本发明系统的组成结构再一次以交替的形式表示在图11中。这里表明进出口模块113a,b控制着特征的线路相关部分。每种线路终端和具有线路相关部分的那些特征有独立的进出口模块。线路终端的例子包含:模拟/数字/ISDN电话终端和基本及附加业务的模拟/数字/ISDN长途通信。每个进出口模块113处理每种特定硬件协议的语义部分。该进出口模块也参加直接指向用户模块112的装置独立协议。这种协议是纯功能性的且为独立于线路终端型的。每个进出口模块113a,b包括:

(a)一起始部分,它为实际线路设置缺省值,激活硬件并把终端复位到适当的状态;和

(b)一通信部分,它适合于调度和通信事件的处理。

进出口模块113的结构与用户模块112稍有不同。进出口模块113的顶级分成两个更小的部分,即调度部分和事件处理部分。调度部分的用途在于事件进入事件处理部分之前,通过处理翻译信号对从线路或从其它用户进入内部事件组的进入事件进行提炼。这种预处理是对接收的信息、信息数据和终端状态进行的。事件处理部分类似于用户模块的顶级。进出口模块113中的典型阶段的作业包括:

(a)对于若干进出口调用可能性的处理;

(b)向用户指明调用进度信息;

(c)处理线路终端协议的语义部分;

(d)进行数字、过程和词尾分析;

(e)产生并组合调用处理程序(handlers)。

驱动器模块114a,b可看作硬件的接口。它们处理线路协议即特征的句法部分的硬件部分。驱动器模块114对硬件线路信号/比特流解码并把它们以符号形式传递给适当的进出口模块113。驱动器模块114也对从进出口模块113至硬件的信号的符号信号进行编码。还有在操作系统中的事件/信息处理的通用驱动器支持功能,它们在模块起动时进行承袭。它们可看作硬件和软件之间信号转移的运行机构。每种终端/硬件有一个驱动器模块。

本系统包括许多管理模块111,它们用来调整不同类型管理功能的阵列(array)。这些管理功能包括:(a)故障管理;(b)结构管理;(c)帐目管理;(d)性能管理(performance    management);和(e)和其它之间的保密管理(security    management)。

管理特征由管理模块111以类似于特征模块90定义和执行电话特征的方式进行处理。一个管理模块可处理单个或多个管理特征。管理模块111由管理用户模块112b、管理进出口模块113b和管理驱动器模块114b组成,且分别表示在图9和11中。类似于特征模块90的操作方式,管理驱动器模块114b处理管理协议的句法部 分,而管理进出口模块113b响应管理协议的语义部分。最后,管理模块111与特征模块交互作用如下:

(a)经数据库构成命令;

(b)作为报表/信息接收器以记录特征;且

(c)经数据库和直接用硬件用于线路管理。

再看图11,方框图不仅表明了软件体系结构的各组成结构,也如图8所示也表明了每个组成之间的交互作用。特征模块90在适当的BOS数据库104中建立特征唯一数据段121并指定格式,在它的起始部分限定缺省值122,如122和123所表明的那样。管理模块111通过涉及类数据字段124如125所示建立它的起始部分命令和参数。这些连同检索类数据字段124的界限和进出口权级(authority)一起存入结构数据库104中。根据在128上接收到的给管理模块111的驱动器114b的命令,该命令在127上由命令分析程序分析并校验使用该命令的权级。进而在127和128上确定给定的参数是否在存贮在类数据段124中的值的范围内。当命令被接收时,适当的个人通过实际管理特征和适合的特征允许使用进出口,此时如在132和133上所示,单独的数据段131可根据用户模块112b操作和用该模块接收。这种操作可包括:插入、变换、打印和脱离运行。

尤其是,在特征模块90的用户模块112a中的起始部分,当起动时,它调用AOS层92中的一个“create_field”过程起动扩充类数据121的BOS数据库104中的缺省值用于属性(或参数)“intru-sion_cat_A”(即起动用户的业务或类别调用,A用户起动侵入)。该数据的指定格式或范围也贮存在数据库104中。

当执行特征模块90的用户模块112a中的通信部分时和当测试intrusion_cat_A”时,AOS层92中的过程校验被调用。这过程首先校验有关的用户对于在个人扩充数据库131中编程的“intru- sion_cat_A”而言是否有个人类别。如果有,该类别将被使用。否则,扩充类数据库121的122中指定的缺省值数据将被使用。

管理模块111的用户模块112b中的起始部分,当起动时它通过使用AOS层92的过程,为在扩充类缺省数据122中定义的每个属性或参数,建立结构类数据124中的参数125。

当在管理模块111的进出口模块113b中接收到一个管理操作时,那么实际操作连同管理用户的使用该操作的权级生效。一旦该管理操作被认为有效、那么它将传给用户模块112b。如果管理操作是为具有值“yes”的扩充“12345”建立一个“intrusion_cat_A”的数据字段,则产生如下操作:用户模块112b通过使用AOS层92的过程调用扩充类121中的缺省数据122而得到数据字段“intru-sion_cat_A”参数的实际格式。如果值“yes”在该格式中生效,则AOS层92中的过程被调用以更新个人扩充数据131为具有值“yes”的扩充“12345”。如果管理操作得到数据段“intrusion_cat_A”为扩充“12345”,那么,AOS层的过程被调用,在个人扩充数据131中取实际值133。

管理特征也能接收如来自记录数据特征的输出。那么该管理特征签署某事件和所选的电话特征,且当这些事件发生时,电话特征将转储标准信息到适当的管理特征。命令由该管理模块111处理,依次决定如下:

(a)所接收的数据是否该放弃;

(b)何时产生输出;

(c)要输出哪些数据;

(d)输出数据的格式;和

(e)该输出数据送往的地址。

管理模块111可与本地终端相联或与网络管理中心相联。

应用数据分成两种,静态数据和动态数据。所有数据实质上都 存贮在数据库中,该数据库由基本操作系统93管理且上述每种数据的目的可从应用层91看到。静态数据是一个比一个调用寿命更长的数据。静态数据的寿命可能是短的,譬如一天,数据的寿命取决于特征拥有该数据的时间,且大多数这类数据的寿命通常不会比系统崩溃更长,在这种情况中,数据生存到由命令改变它或系统崩溃后被重新存贮到后备媒质中为止。短寿命数据的例子包括回叫信息或转移数据,而长寿命数据的例子为数字串、允许的用于用户的特征进出口(feature    accesses)(业务类)、用户激活特征、特征相关数据等。

某种数据属于宾语(objects)类或属于超级类,其中一类可看作某种用户型。这种数据型式有一个名字、缺省值、指定的格式、一个允许的数值区间、和系统崩溃后关于它是否需恢复的信息。当产生时个人与某类相联系;根据个人实体示例,它们承袭适当类数据。缺省数据值可为每个个人改变。典型类数据包括:扩充类数据121、结构类数据124,操作类数据、目的类数据、路由类数据和长途通信类数据。为了分类和类个体,本系统包括分析表。这些是根据分类和/或类个体的变化或产生而导出或变化的数据表。

动态数据是与调用相联系的数据,当调用结束后就消失。典型动态数据包括:处于调用的用户之间的引用、调用履历(即,执行特征、更早的连接等)和调用状态。动态数据仅能由宾语/进程自身操作控制,且进出口经数据名得到。对于静态数据,相比之下,进出口由与数据名相结合的主引用获得。

应用操作系统层92,它的级别低于包含特征模块90和管理模块111的应用层,它也描绘在图11中。应用操作系统层92的目的在于将执行细节与应用层隔开,因此产生了与应用设计相联系的抽象级(abstraction    level)。与操作系统的接口是整体上的且隐含着应用操作系统层92保持不影响内部变化和包含在系统硬件中的操作 系统功能。应用操作系统层92,如图8所示,它包括含有工具箱98和类功能99的两个主要功能组。应用操作系统工具箱98给应用层91提供通用功能。可包括在应用操作系统工具箱98中的典型功能包括:(a)交互用户通信;(b)用户处理;(c)切换操作;(d)排队处理;(e)定时;(f)履历处理;(g)数据段处理;(h)数字处理;(i)过程处理;和(j)管理处理。

进一步参照图8,应用操作系统92的通用功能99给事件/分状态处理和进入新状态提供支持功能。通用功能99可看作应用层的匹配工具(engine)。当产生事件或分状态时,由通用功能99提供的支持功能对该事件或分状态,包括它的参数,在安装命令下,与系统的用户模块112(或进出口模块113)相匹配。如果事件或分状态涉及用户,匹配按照进出口特征表在用户模块112上进行。如果事件涉及进出口,则匹配按照进出口的特征表在进出口模块113上进行。当发现用户模块112或进出口模块113具有匹配事件时,该模块被调用并执行相应的功能,如果事件或分状态涉及用户而没有匹配事件或分状态,则该调用将夭折。如果事件涉及进出口而没有匹配事件时,那么事件将不予考虑。

应用操作系统92也包含输入能直接指向用户模块或进出口模块的新状态的内附功能。“新状态”可包括:

(a)新状态;

(b)进入给定新状态之前的分状态;

(c)与增加或离开的用户相结合的新状态;

(d)当前状态;或

(e)调用失败/无状态。

在定义调用模型中,进程概念近于将应用的运行时间结构模型化。术语“进程”,当用于本文中时,表示用相关的一套数据顺序执行语句。进程可连续执行,且某个进程可变活,即由于外部的激励/ 信号而处于执行状态。一个进程当执行完毕时,总是处于某个确定的状态。进程概念的所有这些特性能很好地与电信应用相适配。这种电信应用有许多并行调用,每个调用由一个或几个操作序列组成。进程概念,如上所述,由扩展的操作系统和本发明专建立的程序设计语言两者支持着。

在本发明系统中,进程范围以限定应用码的同样方式被限定,以便在应用结构和运行时间结构之间尽可能有一个完全的匹配。如图12所示,对于功能规范宾语,应用码已尽可能紧密地被模块化。这种结构导致给每个硬件装置设定一个进程,驱动器对应一个驱动器进程,每种线路对应于一个进出口进程,和每个参加者对应一个用户进程。

因为网络特征和独立的电信交换特征应很好地匹配,所以本发明系统对实现调用控制使用分开的方式。这意味着有两个调用侧,每侧有它自己的一套进程。分调用控制的主要优点如下:

(a)状态总数大大减少。状态概念用于减少应用码的复杂性,并且是一个高度希望的概念。在集中的调用模型中,当状态数必须增加到具有几个用户的组合结构时,状态数量趋于失控。

(b)用户能很好地相互隔开,每个用户有它自己的状态和覆历。当调用返回到原有调用结构通常为一个两用户调用时,每个调用侧的数据仍然有效。分调用控制在许多情况下、作出决定前、需在调用侧之间进行交涉和联络。两侧之间的联络由在进程之间提供信息通道的高级协议支持。至少能支持3个不同的通信(联络)状态:

(a)无确认的信息发送;

(b)有确认的信息发送;

(c)确认并请求进一步信息的信息发送。

这些通信的每一种可有四个信息类型:

(a)当不期待确认信息时用于发送信息的通知信息;

(b)当期待确认信息时用于发送信息的请求信息;

(c)在给出回答信息之前用于请求进一步信息的校验信息;和

(d)对先前请求信息进行确认的回答信息。

图12所示为上面在原型PBX交换系统的特定执行的上下文中已讨论过的。图12表明为在调用侧之间有效通信而必须执行和使用的协议,这种调用侧是分调用控制变化表所必须的。两侧之间的通信首先由用户至用户信息通道的高级协议180支持。其它较低级协议支持落到硬件级的整个通信和线路。用户/进出口协议181提供用户进程165和进出口进程164之间的通信。进出口/驱动器协议182提供进出口进程164和驱动器163之间的通信。最后硬件驱动器协议183提供驱动器进程163和各硬件单元184之间的通信。

图13表明一个基本调用的调用模型例子。显示了用户进程165a、b;进出口进程164a、b;和驱动器进程163a、b;所示基本调用的两分开调用侧的每一侧各一个。当调用起动且送一个信号比特流到它的驱动器进程时,硬件开始检测。然后,驱动器将该信号比特流变换为符号形式并向它自己的进出口进程164发送一个信息、然后等待、接收、分析和变换被调用用户的地址信息为被调用用户的逻辑个人参数。当该工作完成时,进出口进程164起动一个它自己调用侧的用户进程165,且发送一个建立信息给它。该用户进程165为所调用的用户确定逻辑个人参数。然后,它为该同样的调用用户起动一个用户进程165b,并请求它的用户进程165a建立调用。被调用用户的用户进程165b请求该用户的进出口进程164b占用该用户并把它自己联接于该用户进程165b。然后,一个确认信息被送到原始侧的用户进程165a且整个基本调用的调用模型就建立起来。

下面参见图14,这里显示了包括三用户调用的调用模型。对于一个查询调用187或当一个操作建立第二调用侧时,该进出口进程191a暂停第一调用188并为该新调用189建立进程识别串(用户 192a-用户192c-进出口191c-驱动器190c)。于是进出口进程191a联接两串进程188、189,每个调用一串。

接着参见图15,这里显示了多用户调用的模型。在多用户调用中,一个普通的进程调用侧线路用于每个参加者。在调用侧的另一端有一共用的服务用户进程195。它没有联接进出口进程,所以这种结构使它从每个参加者的调用侧看像是一组普通的两用户调用。

下面参见图16,这里是对于操作的二次调用的调用模型。在操作的二次调用上,对于每侧调用有一个从原始调用的每个用户200a、b到一个操作用户201a、b的联接的新调用。当设计特征时,要始终考虑到这种调用模型,且关于上面图13-16中所述的原理和示例可看作设计未来调用模型的准则。理想的是人们应努力于使模型与应用概念很好匹配且使它易于适用于应用情况中的可能出现的新状态。

本发明系统中使用的程序设计语言是一种扩展的说明性语言,它能与实时设备并行执行。ERLANG语言包括这样一些必要的特性,它们的一些如下:

(a)由动态存贮装置支持的如来自LISP或PROLOG的表格和元组的高级数据结构;

(b)提供如LISP相同的有效程序开发的高级符号程序设计;

(c)通过图象匹配和简单控制结构的执行体现短而清楚的程序设计格。

(d)模块化,有助于构成大的程序系统;

(e)进程,处理并行和实时操作支持的管理和通信;

(f)错误检测和错误校正的支持,它能使健全的系统设计具有每个调用错误校正;和

(g)非常接近于SDL,即一种由C.C.I.T.T.推荐的规范语言。

作为说明,下面给出了一些取自基本调用执行的编码例子。下 面是一种事件/状态级的例子,其中建立信息包括5个已收到的参数。对于特征模块而言按照特征表已完成了事件的匹配。其它特征已具备与该事件交互作用的机会,但还没有进行。最后的匹配在于如下所述的基本调用模块:

1#setup(Self,_,Idle,[Self],[CallType.no_name])-->

case

call_start_up(Self,CallType){

barred-->abort(blocked);

ok-->state(call_started);

complete(Partner)-->state(call_started,add(Partner));}

2#setup(Self,_,Idle,[Self],[CallType.Name])-->

case

establish_call(Self,CallType,Name){

barred-->abort(blocked);

yes(Partner)-->state(call    started,seizure,add(Part-ner));}

99#setup(_,_,_,_,_)-->

continue.

@1991 Telefonaktiebolaget L M Ericsson

模式匹配出现在与所接收到的建立信息的匹配首先达到包括同时在第一基本调用建立子句上的所有参数的匹配中。如果有匹配,这种功能定义将被应用。如果功能不匹配,匹配试图在下一子句上,等等。如果参数上不匹配,则控制回到匹配工具。由于基本调用是特征表中最后的特征,则调用在这种情况将会失败。高级符号程序设计的例子可通过调用名字和建立子句中的参数名的功能看到。软件 设计者可选择任意长度的合适的名字。

高级数据结构包括建立子句的参数[CallType,No_Name],它是一个代表具有两个变量的数据结构。在本系统中有简单的调用控制结构,实际上在系统中极少有这样的控制结构。在上述例子中,仅有两个控制结构,即“情况”和“继续”。然而“情况”语句是最重要的控制结构语句。下面所述是一个阶段的例子,其中,我们假设上面例子中的第一个建立子句已与所接收的信息匹配。则该句中的功能调用“call_start_up(Self,CallType)”被调用

1#call_start_up(Self,CafllType)-->

case

check(call_allowed,Self){

no-->notify(release(barred),Self),

^barred;

yes-->remember(call_direction,calle_A),

notify_ack(normal),Self),

^ok

}.

@1991 Telefonaktiebolaget L M Ericsson

“当call_start_up”子句在它的一轮中匹配时,第一功能调用是AOS功能校验/2,它有两个参数。该功能被计算且结果返回“call_start_up”功能,这成了调用一对其它AOS功能的作业,且然后把结果返回到建立功能。

开发属于电信系统的嵌入式实时系统的不可避免的问题之一是,总是包含两个计算机。这里一个是主计算机,通常为VAX、IBM或其它相当的计算机,其用于程序开发。另一个是目标计算机,如应用在Ericsson    AXE    SPC电信交换系统中的特定的微处理器APN或APZ,其中,程序在操作系统中运行。这必定意味着在主计算 机上的开发和编辑程序和在目标机中测试它们之间将存在大的运行时间。然而,在本发明的系统中,这些活动结合在一起。经过某些操作控制,一个线路接口模块(“LIM”)由工作站和它的计算机控制,于是组合了主机和目标计算机的功能,结果是编辑一执行循环时间事实上被取消。如图17所示,这样的设计/执行结构包含许多优点。

如图18所示,一个已知的工作模型与本发明的系统相比包括多得多的步骤。与本发明的简单符号任务模块142相比,就能看到方框141中如何大量的设置特征的。于是,大量简化的规范和编码步骤产生了最终的操作软件系统。

更高的软件质量也是本发明的另一优点。本发明的许多方面已执行和测试,证实它们的设计效果超过了先前的已知的电信系统。设计效果测试的结果是对于被测试的每个特征而言本发明系统运行得比已知系统好得多。而且,平均来看,使用本系统设计、执行、校验和使特征构成文件所需时间比已知系统所需时间少得多。

这些效果因素与这样一种事实相一致,即在本系统中设计者在验证他自己的编码之前不需要等待另一个设计者的工作,这就意味着软件开发能够以平面的和特定的次序序列进行。本系统的过程软件具有包含独立的、已验证的构成块的清晰的分层,这使得整个系统能快速容易地阅读和理解。进而。本发明系统使编码能独立地和增量式地被验证,且它还提供了错误校正和编码分析工具。如上面简要提及的,涉及特征设计和验证的大量人员可减少到仅剩一个人,由此减少了等待时间和导引时间。本系统能使规划和设计验证即使在功能测试前也能进行。

使用本发明系统设计特征模块有利和方便的主要因素包括功能规范的用词文本与特征模块中的编码相对应,于是改进了对编码和特征两者的理解。而且,通过使用像匹配、表处理、和递归功能等语言特性使程序能做得很小且一目了然。设计采用增量式和交互作用 式并允许结构增长。因为程序能在飞行中重新编译,修补是不需要的。重复验证特征或其部分是自动进行的,即只要用测试文件激励,且数据能在高符号级上显示。另外,在设计期间不必考虑容量问题,只有相当少量的文件需要写,且设计者在特征进入实际使用前能全面验证该特征。软件的质量大大提高,从而使设计者更满意。

上面提到的大部分有效因素,当把新功能度加入系统时是有效的。增加功能度等于给系统增加一个新的特征模块。这种特征模块要么是包含添加到基本调用模块的完全新的功能度,要么是替代已存在在基本调用模块上的特征模块的功能度。

上面所述许多有效因素,当在一个分布的设计环境中设计特征时也是有效的。这些因素中最重要的是开发被分成小而完整的特征模块。当产生他的特征时,该设计者与其它设计者无关。另外,狭窄的接口使配合的要求很小。特征设计者的唯一必须输入是功能规范、系统库的实际版本和应用操作系统工具箱的实际版本。最后,特征之间的交互作用,即特征被调用的命令由操作过程加以解决,且这种交互作用可用一个简单的定位(location)来测试。

正如对本发明系统的各个方面的检查所看到的,许多内在的优点存在于能够执行软件原型的软件语言结构中和存在于实现电信交换系统的基本软件体系结构中。而且,能很容易地看到:该系统很容易适用于其它过程控制系统的应用。

我们认为前面的描述使本发明的操作和结构明显的优于以前的系统,同时,所示和所述的方法、装置和系统都具有较佳特性,在不脱离下面权利要求书限定的本发明的精神实质和范围的前提下做出种种变化和修改的可能性将是显而易见的。

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈