本发明专利技术公开了一种用于执行业务逻辑的系统的开发和执行结构,包括提供系统管理和执行业务逻辑的引擎。单服务端接口将引擎和服务端插件模块相连接,而且单资源端接口将引擎和资源端插件模块相连接。服务器端和资源端插件模块分别连接到用户和资源。单接口将插件模块接口符合为一个接口来与引擎通信。单接口使用了单命令定义。定义业务逻辑的开发代码是由用户书写并由引擎执行的。
【技术实现步骤摘要】
本专利技术通常涉及计算机系统开发和执行领域,更具体地说,本专利技术涉及在计算机系统中用于执行业务逻辑,同时减轻书写专用代码的负担的系统和方法。
技术介绍
目前,开发并执行一种计算机系统要求一个或多个有经验的程序员的编程时间的巨大投资。虽然存在用来辅助程序员为系统生成源代码的开发工具,但那些工具并未消除对这些源代码的需要。一些开发工具创造了减少这种工作的专用语言,但是同样的,这些开发工具并不能免除这种工作本身。典型的系统开发工程包括生成(通过书写代码或使用专用代码生成工具)用于执行业务逻辑本身的代码、和书写或者生成处理处理非业务逻辑任务,如访问数据库和提供系统服务等的代码。代码必须被书写以用于同数据库服务器、邮件服务器、电话服务器等这些系统所使用的资源进行通信。传统方法并不将业务逻辑与非逻辑分离开来。因而,开发人员必须努力不仅要使业务逻辑正确地执行,而且要使那些通常构成开发大部分内容的非逻辑方面正确地执行。必须进行通信的用户(用户指的是人或计算机程序)和资源几乎总是有变化很大的接口要求。因而,为与不同的用户和资源进行通信必须书写各自的代码,这样即使不提及为完成这种任务所需的附加的复杂性和专门技术,也极大地增加了必须花费在系统开发上的时间和工作。维护按这种方法开发的系统也是繁重的。如果用户或资源发生变化,那么同该部分相关的编码的业务逻辑也必须被改变。同样,如果业务逻辑发生变化,非逻辑代码部分也必须被改变的情况是经常发生的。图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的最终用户接口的最终用户接口本文档来自技高网...
【技术保护点】
一种开发平台,用于建立为用户提供服务的系统,所述平台包括: 引擎,用于提供系统管理和执行业务逻辑; 至少一个具有服务端插件模块接口的服务端插件模块;和 与引擎通信并与所有服务端插件模块通信的唯一的服务端接口;所述服务端接口包括唯一的命令并且所述服务端接口支持所有服务端插件模块接口;所述唯一的命令支持服务端插件模块接口的所有命令。
【技术特征摘要】
US 2005-9-12 11/224,6651.一种开发平台,用于建立为用户提供服务的系统,所述平台包括引擎,用于提供系统管理和执行业务逻辑;至少一个具有服务端插件模块接口的服务端插件模块;和与引擎通信并与所有服务端插件模块通信的唯一的服务端接口;所述服务端接口包括唯一的命令并且所述服务端接口支持所有服务端插件模块接口;所述唯一的命令支持服务端插件模块接口的所有命令。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的方法,其中,所述资源端插件模块的每一个还包括一个资源端插件模块接口,每一个资源端插件模块用于与至少一个资源相连接;所述资源端...
【专利技术属性】
技术研发人员:田村张福,
申请(专利权)人:全智科技公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。