开发和执行平台的制作方法

文档序号:6561689阅读:112来源:国知局
专利名称:开发和执行平台的制作方法
技术领域
本发明通常涉及计算机系统开发和执行领域,更具体地说,本发明涉及在计算机系统中用于执行业务逻辑,同时减轻书写专用代码的负担的系统和方法。
背景技术
目前,开发并执行一种计算机系统要求一个或多个有经验的程序员的编程时间的巨大投资。虽然存在用来辅助程序员为系统生成源代码的开发工具,但那些工具并未消除对这些源代码的需要。一些开发工具创造了减少这种工作的专用语言,但是同样的,这些开发工具并不能免除这种工作本身。
典型的系统开发工程包括生成(通过书写代码或使用专用代码生成工具)用于执行业务逻辑本身的代码、和书写或者生成处理处理非业务逻辑任务,如访问数据库和提供系统服务等的代码。代码必须被书写以用于同数据库服务器、邮件服务器、电话服务器等这些系统所使用的资源进行通信。传统方法并不将业务逻辑与非逻辑分离开来。因而,开发人员必须努力不仅要使业务逻辑正确地执行,而且要使那些通常构成开发大部分内容的非逻辑方面正确地执行。
必须进行通信的用户(用户指的是人或计算机程序)和资源几乎总是有变化很大的接口要求。因而,为与不同的用户和资源进行通信必须书写各自的代码,这样即使不提及为完成这种任务所需的附加的复杂性和专门技术,也极大地增加了必须花费在系统开发上的时间和工作。维护按这种方法开发的系统也是繁重的。如果用户或资源发生变化,那么同该部分相关的编码的业务逻辑也必须被改变。同样,如果业务逻辑发生变化,非逻辑代码部分也必须被改变的情况是经常发生的。
图1概括了开发具有基于Web的用户接口、CORBA接口、数据库和其它资源访问的系统的现有技术的结构。开发者必须为系统的每个方面书写源代码110。例如,必须按照CORBA(公共对象请求代理体系结构)规范对业务逻辑120编码。CORBA是一种结构和规范,用来创建、分配和管理网络中的分布式程序对象。
开发者必须额外地为系统书写非逻辑代码122来连接CORBA用户,并为CORBA用户书写非逻辑代码124。此外,开发者必须为系统书写非逻辑代码126来连接数据库资源,并按照数据库规范书写非逻辑代码128来访问该资源。
系统也为最终用户提供基于Web的用户接口,并且必须书写一组相似的代码130来允许系统与Web通信。另外,也必须为系统书写附加代码140来访问如电子邮件、电话及其它服务器等的附加资源。
用于定义对象接口的现有技术的代码,如代码122、126,必须被专门书写来处理可能出现的大量带有各种名称、接受参数集和返回数据值的命令和可能出现的大量具有各种数据成员和数据类型的数据集。如图2所示,一个名为Sample的现有技术接口的实例定义了一个用于检索一些被请求信息的名为getRequesterInfo的命令。此例子是用作为面向对象接口定义形式的接口定义语言(IDL)书写的。
实例中的接口定义200包括命令定义210。该命令定义具有唯一的命令名称211、参数集212和返回数据类型213。
典型地用于命令定义210的复合数据类型需要具体的定义,如数据结构RequesterInfo 230。当在逻辑120和非逻辑122、124(图1)中书写或改变代码时,那么那些定义必须跟随。此外,由于那些定义对于正在应用的业务逻辑的数据要求而言是特定的,因而必须为每个数据要求定义单独的数据类型。
紧随图2中的、一个系统被开发用于检索一些请求信息的例子,图3示出了用于检索来自数据库的请求信息的一个极度简化的Java程序300。开发者必须处理在任何程序设计语言中所固有的许多内务事务,如访问数据库、处理错误捕获/异常310、315和数据库330中的无效数据等。
必须书写附加代码来提供系统服务。例如,在用户源代码中需要图4中的另一个简化的、用作CORBA servlet的Java程序400。
可见,当开发者必须设计代码来执行如逻辑120的业务逻辑的同时,如今,开发者的工作的实质部分是专心致力于创建同系统的各个部分通信的必要的非逻辑代码以及在不同的地方编码业务逻辑来处理不同的技术。因而,目前存在对一种通过最小化编程和调试时间来加速系统的建立的开发和执行平台的需要。更特别地,存在对一种允许开发者专注于业务逻辑而不用对使用多种程序设计语言和技术类型的工作而分心的开发和执行平台的需要。就发明者所知,目前还没有提供这样的系统。

发明内容
本发明通过提供一种将开发者的任务减少到仅为业务逻辑编码的开发和执行平台来解决上面所述的需要。由于本发明的平台处理内务工作,本发明允许开发者以一种同传统程序设计语言相比更为简化的格式书写业务逻辑。
在本发明的一个实施例中,开发平台是用来建立一个向用户提供服务的系统。平台包括用于提供系统管理和执行业务逻辑的引擎,至少一个具有服务端插件模块接口的服务端(北区)插件模块,和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口。所述服务端接口包含唯一的命令。服务端接口支持所有服务端插件模块接口(单接口技术),并且该命令支持所有服务端插件模块接口的命令(单命令技术)。
此外,平台可以包括至少一个资源端(南区)插件模块;和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口。这种情况下,资源端接口包含唯一的命令。所述至少一个资源端插件模块的每一个可以具有一个资源端插件模块接口。这种情况下,每一个资源端插件模块被用来与资源中的至少一个相连接、所述资源端接口支持所有资源端插件模块接口(单接口技术),并且所述资源端接口的唯一的命令支持资源端插件模块接口的所有命令(单命令技术)。
系统可以通过用户定义的配置文件进行配置。
服务端插件模块中的一个可以连接到包含用于说明基于Web的最终用户接口的最终用户接口源代码的Web服务器。这种情况下,引擎许动态加载最终用户接口源代码,从而在运行时间内不用重启系统就可以重新加载最终用户接口源代码。最终用户接口源代码可以被定义在XML文件和HTML文件中。
此外,平台可以包括用来对说明业务逻辑的主源代码进行解释的解释器。这种情况下,引擎可以允许动态加载主源代码,从而在运行时间内不用重启系统就可以重新加载主源代码。主源代码可以被定义在XML文件中。
每个服务端插件模块是可执行的。
引擎可以允许动态加载资源端插件模块,从而在运行时间内不用重启系统就可以重新加载资源端插件模块。
所述服务端接口可以以接口定义语言IDL定义。同样的,资源端接口可以以IDL定义。
在本发明的另一个实施例中,提供了用于在包括引擎、至少一个服务端插件模块和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口的平台上执行业务逻辑的方法。所述服务端接口包括唯一的命令,该方法执行唯一的命令来支持服务端插件模块接口的所有命令的步骤。
此外,执行此方法的平台可以包括至少一个资源端插件模块和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口。所述资源端接口包括唯一的命令。此外,每个资源端插件模块可以包括一个资源端插件模块接口,而每一个资源端插件模块用于与至少一个资源相连接。在这种情况下,所述资源端接口支持所有资源端插件模块接口,并且所述方法还包括执行该唯一的命令来支持资源端插件模块接口的所有命令的步骤。
此外,所述方法可以包含通过用户定义的配置文件配置系统来进行管理的步骤。
所述服务端插件模块中的一个可以连接到包含用于说明基于Web的最终用户接口的最终用户接口源代码的Web服务器。在这种情况下,所述方法还可以包括在运行时间内不用重启系统而重新加载最终用户接口源代码的步骤。最终用户接口源代码可以被定义在XML文件和HTML文件中。
此外,所述方法可以包括对在引擎中的用于说明业务逻辑的主源代码进行解释的步骤。解释主源代码的步骤被执行,以使在运行时间内不用重启系统就能够重新加载主源代码。主源代码可以被定义在XML文件中。
所述方法还可以包含在运行时间内不重启系统而动态加载资源端插件模块的步骤。
在本发明的另一个实施例中,开发平台是用于建立为用户提供服务的系统。所述平台包含用于提供系统管理和执行业务逻辑的引擎,至少一个服务端插件模块每个都是可执行的,以及与引擎通信并与所有服务端插件通信的唯一的服务端接口。服务端接口仅包括唯一的命令。
此外,平台可以提供与至少一个资源的连接,所述平台还包括至少一个资源端插件模块;和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口;所述资源端接口包括唯一的命令。
每一个所述至少一个资源端插件模块具有一个资源端插件模块接口,每一个资源端插件模块用于连接至少一个资源。在这种情况下,所述资源端接口支持所有资源端插件模块接口,和所述资源端接口的所述唯一的命令支持资源端括件模块接口的所有命令。
本发明的另一个实施例是一种计算机程序产品,包括具有记录于其上的包含代码装置的计算机程序的计算机可读记录介质,当该代码在计算机上执行时,所述代码装置用于指示所述计算机来控制上述方法中的步骤。


图1是用于建立具有基于Web的用户接口、CORBA接口和对数据库及其它资源的访问的系统的现有技术结构的原理图。
图2是定义在IDL中用于检索一些请求信息的现有技术接口的示意代码段。
图3是使用图2中的接口定义来检索请求信息的现有技术的Java代码的示意代码段。
图4是图2中的例子所需要的现有技术附加Java代码的示意代码段。
图5是根据本发明的开发和执行平台的结构原理图。
图6是根据本发明的开发和执行平台的一个例子的结构原理图。
图7是在图6的例子中使用的在IDL中的使用单接口技术和单命令技术的接口定义的一个例子的示意代码段。
图8是用于定义图6的例子中的引擎所使用的XML中的主源代码的文档类型定义(DTD)的一个例子。
图9是根据本发明的一个实施例的由用户定义的、用于检索在图2、3和4中请求信息的系统配置文件的一个例子。
图10是根据本发明的一个实施例用于检索在图2、3和4中的请求信息的XML格式下的主用户源代码的一个例子。
图11是示出可以运行本发明的部分或所有平台的计算机的一个例子的简化原理图。
具体实施例方式
图5的简化原理图示出了包括所发明的系统510和相关联的用户代码550的结构500。系统510包含三个主要部分在核心处是软件引擎520,与引擎通信的是与其分离的接口530、540,和接口插件模块531、541。在这里,结构500有时被称为DOPA。
引擎520、接口530、540和接口插件模块531、541包括预先建立的软件包,它包括除了业务逻辑本身以外的、将被开发的目标系统的其它所有方面。引擎520、接口530、540和接口插件模块531、541是一般的,它们不是专门用于如电信或银行的任何工业。平台不包括与特别任务相关的业务逻辑。
另一方面,如建立数据库连接和提供系统服务的所有其它非逻辑任务,被本发明的预先书写和预先测试对象所执行。那些对象是彼此独立的。
与产生的新代码必须稍后在每个应用中被测试的自动代码生成技术相比,本发明使用了预先建立、预先测试对象,用于除将被书写的业务逻辑外的系统的其它所有方面。那些方面包括常用的或者遵循标准的对象。因而,随着系统的其它所有方面都被预先建立和预先测试,开发者能够完全集中精力在编码和调试系统的业务逻辑部分。
引擎520的主函数用于提供对整个系统的控制和管理并处理用户逻辑。引擎520可以包括一个函数的集合,它在概念上类似于包含于许多编程语言中的函数,用于为开发者方便起见而预先书写一些常用代码的目的。
主源代码552和最终用户接口源代码551包含用户书写的开发代码550。主源代码552是用引擎支持的语言书写的,而最终用户接口源代码551是用Web接口插件模块532和Web服务器分别支持的语言书写的。主源代码552定义了被系统执行的业务逻辑,并且最终用户接口源代码551定义了基于Web的最终用户接口。当业务逻辑变化时主源代码是唯一必须被修改的地方。在这里所使用的术语“业务逻辑”的意思是被计算机系统执行的、用于正在开发的特别应用的一个任务或决定或者任务或决定的序列。本发明所使用的开发代码的例子将在下面参考图10进行解释。
服务端接口530和资源端接口540,都是使用本发明的单接口技术(SIFT)的接口。SIFT允许一个接口定义来支持不同的接口。SIFT也支持多种接口类型,如CORBA、HTTP、SOAP、Telnet、Java等等和将来将出现的新的接口类型。
服务端接口530和资源端接口540,均是引擎和所有插件模块之间的中间层,它们吸收各种插件模块接口的差异将其符合成一个接口,并使用该接口同引擎通信。接口使用本发明的单命令技术来实现这个独特的功能。
单命令技术553是支持具有各种不同的数据类型和数据结构、所有可能的参数集和各种返回数据值的各种不同命令的命令定义。
与下面将被更详细描述的一样,单命令技术允许引擎以单一方式处理所有命令并允许用户以更简化的格式书写源代码552,因而简化了书写业务逻辑的处理。这一概念显著地缩短了软件开发周期,允许快速建立适应性好、大规模的能够支持各种系统特性的软件系统。调试和代码维护变得简单快捷。
引擎520仅同服务端接口530和/或者资源端接口540通信。由于引擎520仅同这些接口通信,则引擎520不必随不同的接口插件模块而修改。换句话说,SIFT允许引擎520保持不变。
服务端接口530支持服务端接口插件模块531,如基于Web的图形最终用户接口模块532。资源端接口540支持资源端接口插件模块541,提供与如数据库的资源542的交互。
如果其接口定义已知,接口插件模块531、541可以被预先建立。例如,通过使用IDL接口定义,CORBA接口模块可以被预先建立。该模块能够被用于所有CORBA接口,并且不必为专门应用而重新书写。另外一个例子,基于Web的最终用户接口插件模块532可以被预先建立在用于Web服务器的服务端接口之上。
将接口插件模块从该接口本身分离出来的好处如下第一,这使得每个接口模块成为插件,而不是硬连线的,因而可以变换不同的接口技术而不会冲击系统的其它部分;第二且更重要的是,由于其预先定义、面向所有目的(all-purpose)且通用的单接口技术,它可以支持将来的新技术;第三,它也可以支持专门的用户接口。
引擎520支持热插拔。它使用现有的动态对象加载技术,借此在运行时间内不用中断服务就能够热插拔系统配置、用户源代码和接口插件模块。
具有同样的接口插件模块或不同的插件模块的系统的多个例子可以同时运行。
具体实施方式
本发明系统结构的具体实施方式
600由图6示意性地示出。它包括DOPA系统610和开发者代码660。在这里被包括的例子是本发明的一个实施例的图解,并且决不意在限制本发明的范围。本领域的普通技术人员将发现使用其它的编程语言和技术也可以实现本发明的系统和方法。
具体实施方式
中的DOPA系统610包括DOPA引擎620、北区的服务端接口630、两个服务端预先建立的CORBA插件模块631、632、用于最终用户调试器的服务端预先建立的命令行对象插件模块637、连接于一个CORBA接口插件模块632的服务端预先建立的DOPA servlet引擎633、南区的资源端接口640和连接于南区的资源的若干资源端预先建立的插件模块641到646。
开发者代码660包括由DOPA servlet引擎633读取的、用于基于Web的显示的、HTML/XML的Web源代码661,由系统610读取的、用于动态地管理系统的配置代码662,定义系统消息、包括错误的XML的消息代码663,以及用于业务逻辑的、由DOPA引擎620读取的DOPA主源代码664。
预先建立的CORBA服务器接口模块631向CORBA客户635提供服务。相同的CORBA插件模块的另一个实例632被用于与DOPAservlet引擎633进行通信,所述DOPA servlet引擎633为网页浏览器636连接Web服务器634。因而,在两个实例中重用了相同的CORBA接口模块。可见,可以为客户预先建立接口模块,以减轻开发者为这些接口模块书写代码的任务。
预先建立的CORBA客户接口模块643被用于与CORBA服务器653相联系。CORBA服务器可以是一个在DOPA系统中的CORBA服务器。在此例子中的系统610包括附加的预先建立的接口插件模块用于数据库651的ODBC接口插件模块641;用于另一个数据库652的JDBC接口插件模块642;用于邮件服务器654的邮件接口插件模块644,和用于电话服务器655的电话接口插件模块645。本领域的普通技术人员将发现其它的接口模块也可以被以相似的方式预先建立来被使用和重用。
在图6的示范系统的实现中,开发者如下所述地书写开发者源代码660主源代码664,如上面所讨论的用于业务逻辑的XML文件,以若干HTML/XML文件661书写、用于由DOPA servlet引擎633所使用的Web源代码661,用于提供基于Web的用户接口,如下面所讨论的被系统610读取的配置文件662,以及将被用于系统中的、由开发者所定义的消息文件663。
开发者源代码660不需要用特别的数据类型或数据结构来声明数据,因为如下所述,平台仅有唯一的命令和一个数据结构来进行工作。变量var_name=value被定义为和数据类型无关。必要时DOPA引擎620和DOPA servlet引擎633能够根据上下文将变量转换为适当的数据类型。它也允许用户在一个命令中使用尽可能多的参数而不需要在相应的命令中预先定义参数集。
图7示出了根据本发明使用单接口技术的、用于服务端接口和资源端接口的、IDL中的接口定义700的例子。如图6所示,单服务端接口630是在DOPA引擎620和北区的接口模块631、632、637之间定义的唯一的接口。这对于DOPA引擎620和南区的接口插件模块641到646之间的单资源端接口640是相同的。
回到图7中,单接口750的例子取代了用于与之连接的用户和资源的多种接口技术、数据库等所需要的多个分离的接口。多个分离的接口的存在需要开发者在所连接的项目变化或增加新项目时使用现有技术改变系统的核心代码或者添加新代码。因而当添加对新的接口插件模块的支持以用于不同的技术时,不需要添加或改变存在的接口定义(如图7中的接口定义700),从而改变引擎620。
通过使用具有一个命令名称775的单命令770(本例子中的DopaCommand),单个接口750的例子是可行的。单命令770的元素允许唯一的命令能够处理所有命令,这样系统可以接收和实现所有的要求。单命令的元素提供命令所使用的数据和操作。
通过使用单数据技术,单个命令770的例子是可行的。单数据技术是支持所有可能的数据结构、数据类型和数据元素的多个数字的数据结构或数据类型。
图7示出了本发明中的使用单数据技术的单数据结构的例子。单数据结构被称为rdata 710。在单命令770中的数据类型被称为rdatas720,这里rdatas 720是rdata 710的序列。结构710的元素715提供通用性和灵活性来支持单命令770内的所有数据结构和数据类型。
DTD(文档类型定义)文件800(图8)定义了在XML中的开发者的DOPA主源代码664中使用的元素或标识名。ROOT元素被定义用来包含零个或更多的COMMAND元素,而COMMAND类似于传统程序设计语言中的“方法”。遵循在DTD800中已设定的规则的COMMAND元素包括包含可选择的声明(STMT)和零个或更多的参数(PARAM)的零或更多的DATA元素,用来允许命令以相同格式执行所有业务逻辑。若干的属性目录820提供与元素COMMAND和DATA相关联的附加信息。由此例子可以看出,执行业务逻辑的任务已经被减少为遵循定义在图8中的简单的DTD来书写XML文件。在图8中的DTD例子中,多个COMMAND元素可以被用于执行业务逻辑。每个COMMAND元素可以包含包括可选择的STMT(声明)元素和任一个PARAM(参数)元素的多个DATA元素。
回到图7中的具体实施方式
,本发明的平台仅利用了一种数据结构和一种数据类型。从而根本不需要数据类型,以至简化了开发者代码,因为所有数据共享同样的数据类型和数据结构。平台具有基于上下文内部辨别适当的数据类型,并根据需要在一个序列720中使用结构710中的元素715来传递所有数据值的智能。因而,开发者可以根据需要使用数据而不需关心数据类型声明的正确性和预先定义的参数集的匹配性。
为检索如图2中举例说明的请求信息的目的,图9和图10分别示出了DOPA配置文件652和XML中的用于业务逻辑的DOPA主源代码654的例子。图9中的配置文件900建立了系统的配置,它包括一个具有端口的CORBA服务器和一个具有数据库名称、数据库驱动和登录信息的数据库。
图10的XML文件1000描述了开发者使用图8所示DTD书写的业务逻辑。在此例子中,一个称为“getRequesterInfo”的COMMAND元素被使用。它有两个DATA元素块,一个包含PARAM元素块1020,另外一个包含STMT元素块1030。
PARAM块1020声明了一个称为“用户”的参数并传递登录用户的身份。STMT块1030包含用于访问名为PEOPLE的数据库表来为用户提取请求信息的业务逻辑。STMT块1030内的SQL语句与包含于在图3的320所示的现有技术的用户源代码是相同的。值得注意的是,在图2、4中显示的现有技术系统所必需的附加编码被去除了,因为这些附加编码可以提前被获知,并因而可以在DOPA系统中被预先书写和预先测试。
上面描述的发明是模块化的框架,并就像可触知地体现在程序存储器装置上的应用程序一样作为软件来配置。用于执行的应用代码可以常驻于本领域的普通技术人员所知的多个不同类型的计算机可读介质上。执行本发明的实施例的指令的计算机1121的简单实施例由图11示出。被描绘的典型硬件环境示出了计算机典型的硬件配置。计算机1121包括CPU 1123、存储器1125、程序存储器装置1127、公共通信总线1129、网络接口1131和用户接口1139。网络接口1131允许在计算机1121、其它计算机和使用已知通信协议的外部兼容设备之间的双向通信。可执行指令被从程序存储器装置1127加载到内存1125中。CPU1123执行在存储器1125中存储的兼容指令。本领域的普通技术人员将知道本发明可以在不背离本发明的范围的情况下被应用于多种其它配置上。
前述的详细说明应该被理解为在每个方面是说明性和实例性的,而不是限制性的,并且这里所公开的本发明的范围不能由“发明内容”决定,而是由根据专利法允许的全部范围所解释的权利要求书所决定的。例如,当例子主要涉及CORBA接口的时候,具有如HTTP、SOAP等其它接口技术的系统也可以利用本发明进行开发和执行。这里显示和描述的实施例应该被理解为仅是对本发明的原理的说明,而且本领域的普通技术人员在不背离本发明的范围和精神的情况下可以进行各种修改。
权利要求
1.一种开发平台,用于建立为用户提供服务的系统,所述平台包括引擎,用于提供系统管理和执行业务逻辑;至少一个具有服务端插件模块接口的服务端插件模块;和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口;所述服务端接口包括唯一的命令并且所述服务端接口支持所有服务端插件模块接口;所述唯一的命令支持服务端插件模块接口的所有命令。
2.根据权利要求1的平台,还包含至少一个资源端插件模块;和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口;所述资源端接口包括唯一的命令。
3.根据权利要求2的平台,其中所述至少一个资源端插件模块的每一个都具有一个资源端插件模块接口,每一个资源端插件模块用于与资源中的至少一个相连接;所述资源端接口支持所有资源端插件模块接口;而且所述资源端接口的所述唯一的命令支持资源端插件模块接口的所有命令。
4.根据权利要求1的平台,其中,所述引擎被配置用于通过用户定义的配置文件来管理系统。
5.根据权利要求1的平台,其中,所述服务端插件模块中的一个连接到包含用于说明基于Web的最终用户接口的最终用户接口源代码的Web服务器。
6.根据权利要求5的平台,其中,所述引擎允许动态加载最终用户接口源代码,从而在运行时间内不用重启系统就可以重新加载最终用户接口源代码。
7.根据权利要求5的平台,其中,所述最终用户接口源代码包括一个XML文件。
8.根据权利要求5的平台,其中,所述最终用户接口源代码包括一个HTML文件。
9.根据权利要求1的平台,还包括用于对说明业务逻辑的用户源代码进行解释的解释器。
10.根据权利要求9的平台,其中,所述引擎允许动态加载主源代码,从而在运行时间内不用重启系统就可以重新加载主源代码。
11.根据权利要求9的平台,其中,所述主源代码包括一个XML文件。
12.根据权利要求1的系统,其中,每一个服务端插件模块都是可执行的。
13.根据权利要求2的平台,其中,所述引擎允许动态加载资源端插件模块,从而在运行时间内不用重启系统就可以重新加载资源端插件模块。
14.根据权利要求1的平台,其中,所述服务端接口以接口定义语言被定义(IDL)。
15.根据权利要求2的平台,其中的所述资源端接口以接口定义语言被定义(IDL)。
16.用于在包括引擎、至少一个服务端插件模块和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口的平台上执行业务逻辑的方法,所述服务端接口包括唯一的命令,该方法包括如下步骤执行唯一的命令来支持服务端插件模块接口的所有命令。
17.根据权利要求16的方法,其中,所述平台还包括至少一个资源端插件模块和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口,所述资源端接口包括唯一的命令。
18.根据权利要求17的方法,其中,所述资源端插件模块的每一个还包括一个资源端插件模块接口,每一个资源端插件模块用于与至少一个资源相连接;所述资源端接口支持资源端插件模块接口的所有命令;并且其中,所述方法还包括如下步骤执行该唯一的命令来支持资源端插件模块接口的所有命令。
19.根据权利要求16的方法,还包括如下步骤配置所述引擎以通过用户定义的配置文件来管理系统。
20.根据利要求16的方法,其中,所述服务端插件模块中的一个连接到包含用于说明基于Web的最终用户接口的最终用户接口源代码的Web服务器。
21.根据权利要求20的方法,还包括如下步骤在运行时间内不用重启系统而重新加载最终用户接口源代码。
22.根据权利要求20的平台,其中,所述最终用户接口源代码包括一个XMI文件。
23.根据权利要求20的平台,其中,所述最终用户接口源代码包括一个HTML文件。
24.根据权利要求16的方法,还包括如下步骤对在引擎中的用于说明业务逻辑的主源代码进行解释。
25.根据权利要求24的方法,其中,所述解释主源代码的步骤被执行,以使在运行时间内不用重启系统就能够重新加载主源代码。
26.根据权利要求24的方法,其中,所述主源代码包含一个XML文件。
27.根据权利要求16的方法,还包括如下步骤在运行时间内动态加载资源端插件模块而不重启系统。
28.一种开发平台,用于建立为用户提供服务的系统,所述平台包括引擎,用于提供系统管理并执行业务逻辑;至少一个服务端插件模块,每一个模块都是可执行的;和与引擎通信并与所有服务端插件模块通信的唯一的服务端插件模块;所述服务端接口包括唯一的命令。
29.根据权利要求28的平台,其中,所述平台还提供与至少一个资源的连接,所述平台还包括至少一个资源端插件模块;和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口;所述资源端接口包括唯一的命令。
30.根据权利要求29的平台,其中每一个所述至少一个资源端插件模块具有一个资源端插件模块接口,每一个资源端插件模块用于与至少一个资源相连接;所述资源端接口支持所有资源端插件模块接口;和所述资源端接口的所述唯一的命令支持资源端插件模块接口的所有命令。
31.一种计算机程序产品,包括具有记录于其上的包含代码装置的计算机程序的计算机可读记录介质,当该代码在计算机上执行时,所述代码装置用于指示所述计算机来控制用于在一个平台中执行业务逻辑的方法中的步骤,所述平台包括引擎、至少一个服务端插件模块和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口,所述服务端接口包括唯一的命令,所述方法包括如下步骤执行唯一的命令来支持服务端插件模块接口的所有命令。
32.根据权利要求31的产品,其中,所述平台还包括至少一个资源端插件模块和与引擎通信并与所有资源端插件模块通信的唯一的资源端接口,所述资源端接口包括唯一的命令。
33.根据权利要求32的产品,其中,所述资源端插件模块还包括资源端插件模块接口,每个资源端插件模块用于与至少一个资源相连接;所述资源端接口支持资源端插件模块接口的所有命令;并且其中,所述方法还包括如下步骤执行唯一的命令来支持资源端插件模块接口的所有命令。
全文摘要
本发明公开了一种用于执行业务逻辑的系统的开发和执行结构,包括提供系统管理和执行业务逻辑的引擎。单服务端接口将引擎和服务端插件模块相连接,而且单资源端接口将引擎和资源端插件模块相连接。服务器端和资源端插件模块分别连接到用户和资源。单接口将插件模块接口符合为一个接口来与引擎通信。单接口使用了单命令定义。定义业务逻辑的开发代码是由用户书写并由引擎执行的。
文档编号G06F9/44GK1932760SQ20061012746
公开日2007年3月21日 申请日期2006年9月11日 优先权日2005年9月12日
发明者田村张福 申请人:全智科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1