一种统一开发系统和方法

文档序号:6464099阅读:243来源:国知局
专利名称:一种统一开发系统和方法
技术领域
本发明涉及业务运营支撑系统技术领域,尤其涉及一种统一开发系统和方法。
背景技术
业务运营支^掌系统(Business & Operation Support System, BOSS)开 发IDE环境,涵盖的方面比较广泛,从Java开发到c开发,所有的开发环境 都集成到了一起,而且此IDE环境与普通的IDE环境最大的不同是它实现了从 面向代码到面向业务逻辑开发的转变,所以目前还没有与之相关的技术方案。 但是针对此IDE环境中的某一个方面,确实也存在一些通用的解决方案。比如 在c的开发方面,大家比较通用的是采用Eclipse CDT或是EditPlus甚至是 记事本进行开发;在java的开发方面, 一般会采用Eclipse或NetBeans,在 业务逻辑的设计开发上,有一些相关的开源项目比如Drools。Eclipse CDT是一个基于Eclipse RCP技术的插件,他为window或是linux 下的〔/0++开发提供了一个方便的10£环境。可以实现代码跟踪、调试、自动 生成等一系列的功能,方便了 (:/€++的开发。EditPlus从根本上来说只是一个 文本编辑器,它提供了一些编程接口让开发者可以实现代码高亮显示、函数提 示等一些基本的编码功能,还可以调用开发者编写的外部工具。Eclipse是一种可扩展的开放源代码IDE,在此IDE上,开发者可以开发 java、spring、 hibernate的相关项目。Eclipse的最大特点是它能接受由Java 开发者自己编写的开放源代码插件,所以利用现有的对java、 spring、 hibernate支持的插件以及对版本控制,代码调试的支持插件,能提高开发者的开发效率。Drools是用Java语言编写的开放源码规则引擎,使用Rete算法(参 阅参考资料)对所编写的规则求值。Drools允许使用声明方式表达业务逻辑。 可以使用Java/XML语法编写规则,这对于入门Drools十分有用,因为可以 将Java代码直接嵌入规则文件中。还可以使用Groovy/XML语法或 Python/XML语法在Drools中编写规则。以上是现有的对BOSS系统开发的一些解决方案,涉及到的方面比较广泛, 可以利用的工具比较多,各有各自的特点,在现有的BOSS开发模式下,也只 是利用了上面所述的开发工具的一些优点,不能针对B0SS的具体情况尽最大 可能的发掘开发效率,也没有一种方案能够提供一种针对BOSS系统的通用的 开发IDE环境。Eclipse 007是一个针对0/^++开发的开发工具,范围过于狭窄,而且对 一些特定领域的开发不能提供很好的支持。比如不能提供java端开发的支持, 不能提供Tuxedo工具配置的支持,还有对于BOSS开发不能很好的根据其特点 为其提供方便的开发工具。EditPlus相比较Eclipse对开发者的支持更为不足,大部分情况下都是 由于c开发者在linux环境下特殊的环境不能使用一些类似CDT的IDE而采用 的一种方式。同样不能提供Java端开发的支持,不能提供Tuxedo工具配置的 支持。Eclipse本身是一种最好的Java开发的选扭,但是由于Eclipse'的定位 是一种开发框架而非工具,所以同样存在对特定的开发环境支持不够的缺点, 他更多的是引导用户编写自己的开放源代码插件并且在自己的环境中应用,同 样他还鼓励用户使用很多己有的插件縮短用户的开发效率。所以Eclipse本身 存在对BOSS系统开发支持不够的缺点。Drools的缺点是语法不能定制,不能够很好的用它的语法去描述BOSS系统中现有的业务逻辑,存在业务逻辑定制,即描述和解析不能满足对灵活性的 要求。综上所述,所有的BOSS开发中用到的解决方案都有自己的优点也有自己 不足的地方,目前使用这些开发方案对BOSS系统的开发确实起到了很好辅助 作用。但是由于BOSS的复杂性和其本身的特点,上述通用的方案不能够最大 程度上的对BOSS开发进行支持。BOSS系统使用各个分系统的开发都是采用jaVa+pro*C进行的,Java进行 前端界面展现的开发,pro*c是oracle提供的操作oracle数据库的c语言接 口,进行业务逻辑的开发,由于c语言本身的特点所致,不易封装,所以存在 一系列的缺点开发效率低下,开发周期加长,成本加大,前台页面开发流程复杂,框架 的限制需要做很多的配置,而服务开发人员没有一个统一的版本控制工具,极 易造成版本的冲突,同时服务的开发环境与调试环境脱节,开发在本机,调试 在服务器,调试极为不方便。开发效率低下,开发周期加长,成本加大,这是应为c没有很好的封装, 没有oop编程的思想,这导致了开发很多业务的时候,虽然业务有很多通用性, 但是无法用c去封装,所以每个业务都要单独写一套代码,而c没有提供类似 c+十的vector等集合,c对字符串、变长数组的操作很繁琐,所以导致开发的 效率很低,可维护性也不好,如果有业务变动的话,导致的开发量、调整量会 让开发人员难以承受。同时没有版本控制工具带来的问题是团队开发对程序版本的控制很混乱, 可能每个人的机器上都有自己的版本,不能很好的统一,及时服务器上的版本, 也不能确保是最新的,而且极易被人覆盖,如果发生了错误,基本是不可恢复 的。而调试环境更成为开发者头疼的事情,原来程序的编辑在本地系统,而后通过ftp上传到服务器,在用CRT等工具连接到服务器用命令行进行编译调试。 如果有问题再修改、上传、执行编译命令。这个过程非常繁琐,即使通过执行 角本来实现也不能实现编辑和调试环境继承在一个窗口中进行,这就导致了调 试效率非常低下。发明内容本发明的目的在于提出一种统一开发系统和方法,适用于BOSS系统,能 够解决因BOSS系统服务开发周期长、成本高、不易调试的问题,降低了项目 实施失败的风险。为达此目的,本发明采用以下技术方案一种统一开发系统,适用于BOSS系统,包括数据库服务器、应用服务器、 Eclipse基础模块、业务逻辑控制语言模块、图形界面设计引擎、代码生成控 制器、版本控制模块、远程编译调试模块、远程服务监控管理模块和统一配置 监控日志模块,所述数据库服务器、应用服务器与所述Eclipse基础模块连接, 用于提供外部支持,所述Eclipse基础模块与所述业务逻辑控制语言模块、图 形界面设计引擎、代码生成控制器、版本控制模块、远程编译调试模块、远程 服务监控管理模块和统一配置监控日志模块连接,用于提供函数库支持,所述 业务逻辑控制语言模块用于描述开发的业务逻辑,所述图形界面设计引擎用于 提供图形界面接口,所述代码生成控制器用于实现程序的生成,所述版本控制 模块用于版本控制,所述远程编译调试模块用于将本地程序提交到服务器上编 译、连接和运行并将输出信息返回到本地,所述远程服务监控管理模块用于提 供远程管理的界面,所述统一配置监控日志模块用于提供系统运行参数的图形 化配置、图形化监控以及日志记录和査看。所述图形界面设计引擎进一步包括业务规则定义图形引擎接口模块、业务 规则流程图设计引擎模块、配置图形界面接口模块和监控图形界面接口模块。所述代码生成控制器进一步包括服务生成器、structs生成器、Spring 配置器和Ftl生成器。一种统一开发方法,适用于BOSS系统,包括以下步骤-A、 开发C代码生成器;B、 开发版本控制工具;C、 开发远程开发调试工具;D、 开发远程配置部署工具;E、 开发Java代表生成器;F、 将c代码生成器和所述Java代码生成器组合为统一代码生成器;G、 将代码生成器使用过程中的配置命令和习惯进行归纳,整理BOSS业务, 提供描述BOSS业务逻辑语言给所述代码生成器;H、 将文件配置的方式转变成图形界面配置的方式;I、 将所述代码生成器和图形设计引擎结合。采用了本发明的技术方案,由于平台采用Eclipse RCP技术开发,具有极 强的灵活性和可扩展性,整个系统提供了 BOSS系统开发的统一 IDE环境,基 于Eclipse,是针对BOSS本身的特点开发的一个完整的开发平台,使开发者 能够最大程度的减少开发的复杂性。整个开发系统由七个功能上独立的部分组 成,但是他们在架构上相辅相成,组成了一个独立的可以运行在Eclipse、 CDT 上的插件或者可以单独发布的RCP应用系统。


图l是本发明具体实施方式
中统一开发系统的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式
来进一步说明本发明的技术方案。图1是本发明具体实施方式
中统一开发系统的结构示意图。如图1所示,统一开发系统,包括数据库服务器101、应用服务器102、 Eclipse基础模块 103、业务逻辑控制语言模块104、图形界面设计引擎105、代码生成控制器 106、版本控制模块107、远程编译调试模块108、远程服务监控管理模块109 和统一配置监控日志模块110,数据库服务器、应用服务器与Eclipse基础模 块连接,用于提供外部支持,Eclipse基础模块与业务逻辑控制语言模块、图 形界面设计引擎、代码生成控制器、版本控制模块、远程编译调试模块、远程 服务监控管理模块和统一配置监控日志模块连接,用于提供函数库支持,业务 逻辑控制语言模块用于描述开发的业务逻辑,图形界面设计引擎用于提供图形 界面接口 ,代码生成控制器用于实现程序的生成,版本控制模块用于版本控制, 远程编译调试模块用于将本地程序提交到服务器上编译、连接和运行并将输出 信息返回到本地,远程服务监控管理模块用于提供远程管理的界面,统一配置 监控日志模块用于提供系统运行参数的图形化配置、图形化监控以及日志记录 和査看。图形界面设计引擎进一步包括业务规则定义图形引擎接口模块、业务规则 流程图设计引擎模块、配置图形界面接口模块和监控图形界面接口模块。代码生成控制器进一步包括服务生成器、structs生成器、Spring配置器 和Ftl生成器。整个架构需要外部数据库服务器和应用服务器的支持,由于BOSS系统的 特点,在其上使用规则引擎的时候,需要配置外部数据库服务器和应用服务器 的地址。规则引擎会自动搜索数据库和应用服务器,对业务逻辑进行解析。整个架构采用Eclipse实现,所有的Java开发和c开发都以Eclipse为 基础,同时依赖一些基础的公共插件和函数库,如CDT、 WTP等。这一部分为 IDE环境提供必要的函数库支持。分为两个部分, 一是基础函数库,提供业务逻辑控制语言、图形引擎函数库、配置监控等;另一部分是IDE环境的用户界面模块实现,包括代码生成器、 版本控制工具、远程编译调试工具、远程Tuxedo配置管理工具。用户界面模 块实现依赖于基础函数库,进行图形引擎、业务逻辑控制语言以及日志等工具 的统一调用。其中,业务逻辑控制语言模块(BLCL)可以说是一种专为开发业务逻辑设 计的一种设计语言,同时提供这种设计语言的编译器,用户可以在脱离开发环 境,比如java、 c、 C++、 ftl、 js、 xml的情况下,用这种语言描述前台或后 台开发的业务逻辑,经过编译器编译即可生成前台和后台的所有源码。图形界面设计引擎(PDET)是UBDP的图形界面接口,采用SWT、 JFace、 Java2D等技术实现,它以类库的方式为其他模块提供调用的基础函数。主要 是为业务逻辑生成时的图形化操作界面,用户可以通过图形界面对数据库表、 java类图进行拖拽,可以进行业务流程图的图形化设计,另外图解界面接口 会为Tuxedo远程监控提供接口,还会提供其他基本的配置、监控等功能,综 述,他是一个底层的多功能的图形接口引擎。代码生成控制器(CCT)根据BLCL定义的业务规则实现从前台到后台所有 程序的生成,包括Tuxedo服务的生成、structs代码生成、ftl代码生成、spring 配置文件及代码生成等功能。CCT支持多种语言,包括c、 C++、 pro*c、 java、 ftl等等,支持后台prc^c、 oci、 0(^1在内的多种底层开发接口^/(:++等多 种底层开发语言,支持前台包括structs、 spring、 webwork在内的多种框架, 同时还提供ruby语言的原数据变成接口 。CCT涵盖了 BOSS系统开发各个方面, 用户可以根据自己所选用的技术框架进行灵活的配置,具有极大的灵活性和可 扩展性。CCT包含了从后台到前台所有代码的生成规则,可以帮助开发者将精 力转向这套语言专注与业务逻辑的开发,脱离繁琐的编码本身,是从本质上对 BOSS开发的一种变革。开发者一旦决定了业务逻辑并且用业务逻辑语言描述出来,即可通过CCT工具生成此业务逻辑的c、 c++、 pro*c、 java、 ftl源码 以及所需的配置文件,让开发者从繁琐复杂的编码中解脱出来,极大的提高了 开发的效率。版本控制模块(VCT)实现了团队开发Tuxedo服务时的版本控制,具有在 线checkin、 checkout、备份、差异检査等功能,方便易用,可以大大提高团 队开发的效率。远程编译调试模块(DCT)是提供给Tuxedo服务人员使用的,基于CDT 环境,可以使开发人员将本地的程序提交到服务器上编译、链接、运行,并且 将输出信息返回到本地的CDT环境,显示在console中,如果是编译错误,可 以很方便的定位错误的行数,如果是运行,则可以査看输出信息,提供给开发 人员以参考,整个过程对开发者来说是透明的,仅仅是通过一个快捷键或一个 按钮实现,可以极大提高调试Tuxedo程序的效率。远程Tuxedo服务监控管理模块(RTCT)提供一个远程的Tuxedo管理的界 面,开发者可以在Eclipse的开发环境中启动、停止远程的Tuxedo服务,可 以在Eclipse中用图形界面配置远程Tuxedo的参数,可以监控Tuxedo服务和 请求队列等等,方便了开发者发布和部署Tuxedo程序。统一配置监控日志模块提供系统运行参数的图形化配置、图形化监控以及 日志记录和查看的功能。整个UBDP工具界面的开发采用了先进的RCP技术, 跟原来的IDE环境紧密结合,有极大的扩展性。BOSS系统的统一开发流程包括以下步骤C代码生成器的开发,解决了c开发效率低下的问题。版本控制工具的开发,为了解决c开发过程中没有统一的团队协作工具的 问题。远程开发调试工具的开发,解决了开发c后台程序编译调试不方便,效率 低下的问题。远程Tuxedo配置部署工具的开发,解决了Tuxedo中间件不易部署,不易配置,命令行操作繁琐,入门慢的问题。Java代码生成器,针对Java开发过程中spring配置繁琐等等一系列问题, 开发了Java代码生成器,使开发者可以写最少的代码实现复杂的功能。统一代码生成器,将c代码生成器和Java代码生成器组合在一起,构成了 一个统一的代码生成工具。业务逻辑开发语言是将代码生成器使用过程中用到的一些配置命令和习 惯进行归纳,再将BOSS中涉及到的业务进行整理,设计出了一套用以描述BOSS 业务逻辑的语言,供代码生成器使用。图形设计引擎是为了将整个开发IDE环境的开发由文件配置的方式转变到 图形界面配置的方式,包括代码生成器、远程编译调试工具、远程Tuxedo配置 管理工具,这样可以大大方便开发者的开发。业务规则引擎,将代码生成器和图形设计引擎结合,即成了BOSS统一开发 平台自己一套独立的业务规则引擎。统一开发系统和方法的推出对前台页面和后台服务的开发效率带来了极 大的提升,解决了因BOSS系统服务造成的开发周期长、成本高、不易调试的 问题,降低了项目实施失败的风险。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局 限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变 化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该 以权利要求的保护范围为准。
权利要求
1. 一种统一开发系统,适用于BOSS系统,其特征在于,包括数据库服务器、应用服务器、Eclipse基础模块、业务逻辑控制语言模块、图形界面设计引擎、代码生成控制器、版本控制模块、远程编译调试模块、远程服务监控管理模块和统一配置监控日志模块,所述数据库服务器、应用服务器与所述Eclipse基础模块连接,用于提供外部支持,所述Eclipse基础模块与所述业务逻辑控制语言模块、图形界面设计引擎、代码生成控制器、版本控制模块、远程编译调试模块、远程服务监控管理模块和统一配置监控日志模块连接,用于提供函数库支持,所述业务逻辑控制语言模块用于描述开发的业务逻辑,所述图形界面设计引擎用于提供图形界面接口,所述代码生成控制器用于实现程序的生成,所述版本控制模块用于版本控制,所述远程编译调试模块用于将本地程序提交到服务器上编译、连接和运行并将输出信息返回到本地,所述远程服务监控管理模块用于提供远程管理的界面,所述统一配置监控日志模块用于提供系统运行参数的图形化配置、图形化监控以及日志记录和查看。
2、 根据权利要求1所述的一种统一开发系统,其特征在于,所述图形界 面设计引擎进一步包括业务规则定义图形引擎接口模块、业务规则流程图设计 弓I擎模块、配置图形界面接口模块和监控图形界面接口模块。
3、 根据权利要求1所述的一种统一开发系统,其特征在于,所述代码生 成控制器进一步包括服务生成器、structs生成器、Spring配置器和Ftl生成巡 益o
4、 一种统一开发方法,适用于BOSS系统,其特征在于,包括以下步骤-A、 开发C代码生成器;B、 开发版本控制工具;C、 开发远程开发调试工具;D、 开发远程配置部署工具;E、 开发Java代表生成器;F、 将c代码生成器和所述Java代码生成器组合为统一代码生成器;G、 将代码生成器使用过程中的配置命令和习惯进行归纳,整理BOSS业务, 提供描述BOSS业务逻辑语言给所述代码生成器;H、 将文件配置的方式转变成图形界面配置的方式;I、 将所述代码生成器和图形设计引擎结合。
全文摘要
本发明公开了一种统一开发系统和方法,适用于BOSS系统,数据库服务器、应用服务器提供外部支持,Eclipse基础模块提供函数库支持,业务逻辑控制语言模块描述开发的业务逻辑,图形界面设计引擎提供图形界面接口,代码生成控制器实现程序的生成,版本控制模块版本控制,远程编译调试模块将本地程序提交到服务器上编译、连接和运行并将输出信息返回到本地,远程服务监控管理模块提供远程管理的界面,统一配置监控日志模块提供系统运行参数的图形化配置、图形化监控以及日志记录和查看。采用了本发明的技术方案,能够解决因BOSS系统服务开发周期长、成本高、不易调试的问题。
文档编号G06F9/44GK101276279SQ20081011205
公开日2008年10月1日 申请日期2008年5月21日 优先权日2008年5月21日
发明者易 何, 刘广民, 张剑寅, 宇 辛, 黄保玉 申请人:天柏宽带网络科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1