首页> 中国专利> 一种业务组件及基于业务组件的应用软件开发方法和系统

一种业务组件及基于业务组件的应用软件开发方法和系统

摘要

本发明实施例公开了一种业务组件及基于业务组件的应用软件开发方法和系统,其中所述基于业务组件的应用软件开发方法包括:根据应用软件待实现功能确定所述功能对应的业务流程拓扑;根据所述业务流程拓扑确定当前业务流程所需的业务组件及各个业务组件之间的连接关系;在获取当前业务流程所需的业务组件后,根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件,本发明实施例所提供的应用软件开发方法是基于业务组件进行的。业务组件具有业务含义,可以直接表达业务概念,满足应用软件的业务需求。

著录项

  • 公开/公告号CN101593111A

    专利类型发明专利

  • 公开/公告日2009-12-02

    原文格式PDF

  • 申请/专利权人 大连新中连软件集团有限公司;

    申请/专利号CN200910141310.4

  • 申请日2009-05-31

  • 分类号G06F9/44(20060101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人逯长明;王宝筠

  • 地址 116001 辽宁省大连市中山区祝贺街35号锦联大厦8层

  • 入库时间 2023-12-17 23:10:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-05-22

    未缴年费专利权终止 IPC(主分类):G06F9/44 授权公告日:20121003 终止日期:20190531 申请日:20090531

    专利权的终止

  • 2015-07-08

    专利权的转移 IPC(主分类):G06F9/44 变更前: 变更后: 登记生效日:20150617 申请日:20090531

    专利申请权、专利权的转移

  • 2014-01-29

    专利权的转移 IPC(主分类):G06F9/44 变更前: 变更后: 登记生效日:20140103 申请日:20090531

    专利申请权、专利权的转移

  • 2012-10-03

    授权

    授权

  • 2010-01-27

    实质审查的生效

    实质审查的生效

  • 2009-12-02

    公开

    公开

查看全部

说明书

技术领域

本发明涉及软件工程技术领域,尤其涉及一种业务组件及基于业务组件的应用软件开发方法和系统。

背景技术

在软件工程领域,软件组件定义为自包含的、可编程的、可重用的、与语言无关的软件单元,软件组件可以很容易被用于组装应用程序中。鉴于软件组件的易组装特性,基于软件组件的开发方法被广泛的应用于软件工程领域。

基于软件组件的开发是一种软件开发范型,在这种范型的支持下,软件组件的开发者和应用软件的开发者可以实现产业分工,软件组件的开发者关注软件组件的开发和交付,而应用软件的开发者则通过软件组件装配的方式实现软件系统开发,并交付最终的软件产品。在这种分工合作的方式下,软件系统开发方式更加规范,由此以更高的开发效率开发出质量更好的软件系统产品。

发明人通过研究发现,现有的软件组件开发模型涉及到的软件组件均属于技术组件,技术组件具有技术功能含义,屏蔽了复杂繁冗的底层技术,对底层硬件技术、软件技术和网络通讯技术进行抽象和包装。不同的行业都有自身的行业特点,同一个行业中的不同业务之间也存在很多的区别,所以现有技术中,以技术组件为基础开发某一具体行业的应用软件时,因为技术组件不具有业务针对性,所以存在很多的困难,以银行业为例,银行业应用软件系统要求各个交易之间具有业务相关性,难以直接用现有的技术组件表达其业务含义;银行业应用软件系统中的一项业务功能的实现需要多个技术组件的耦合与关联,增加技术组件开发应用系统的组合复杂度;基于技术组件模型开发的银行业应用软件系统在投产后不易根据业务需要进行业务扩展,难以满足客户多样化的业务需求。

发明内容

有鉴于此,本发明实施例的目的在于提供一种基于业务组件的应用软件开发方法和系统,从而实现应用软件系统的业务需求。

为实现上述目的,本发明实施例提供了如下技术方案:

一种业务组件,包括业务组件接口、业务数据存储单元和业务逻辑单元,其中:

所述业务组件接口,用于为业务数据存储单元和业务逻辑单元提供处理数据并对外提供业务组件数据处理结果;

业务数据存储单元,用于存储业务组件属性数据和从业务组件接口获取的业务数据;

业务逻辑单元,用于利用从业务组件接口和/或业务数据存储单元中获取的数据根据当前业务组件的功能执行逻辑运算,并将结果输送给业务组件接口。

所述业务组件还包括:

至少两个业务组件组成业务组件库,用于对所述业务组件进行存储和管理。

一种基于业务组件的应用软件开发方法,包括:

根据应用软件待实现功能确定所述功能对应的业务流程拓扑;

根据所述业务流程拓扑确定当前业务流程所需的业务组件及各个业务组件之间的连接关系;

获取当前业务流程所需的业务组件,并根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件。

所述获取当前业务流程所需的业务组件具体为:

从业务组件库中获取当前业务流程所需的业务组件。

当所述业务组件库中没有所述业务流程所需的业务组件时,新建所需的业务组件。

所述方法还包括:

将新建的所述业务组件加入所述业务组件库中。

根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件包括:

根据所述连接关系对各个业务组件进行技术要素的配置和定义;

当所述技术要素的配置和定义完成后,按照所述连接关系将各个业务组件进行连接;

当所述连接完成后,生成代码。

所述生成代码具体为:

根据预设配置信息,在指定位置生成代码。

一种基于业务组件的应用软件开发系统,包括:

业务组件存储单元,用于存储业务组件;

业务流程确定单元,用于根据所获取的待实现的应用软件的功能确定业务流程拓扑;

业务组件确定单元,用于根据所述业务流程拓扑确定当前业务流程所需的业务组件以及各个业务组件之间的连接关系;

业务组件获取单元,用于从所述业务组件存储单元中获取当前业务流程所需的业务组件;

业务组件组装单元,用于根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件。

所述系统还包括:

业务组件构造单元,用于构造所述业务组件存储单元中没有的新业务组件;

所述业务组件存储单元,还用于将所述业务组件构造单元构造的新业务组件进行保存。

所述业务组件组装单元包括:

设定子单元,用于根据所述连接关系对各个业务组件进行技术要素的配置和定义;

组装子单元,用于当所述技术要素的配置和定义完成后,按照所述连接关系将各个业务组件进行连接;

代码生成子单元,用于当所述连接完成后,生成代码。

所述代码生成子单元还包括地址配置模块,用于记录所述代码生成的地址;

所述代码生成子单元,用于当所述连接完成后,将代码生成到所述代码生成地址指定的位置。

可见,在本发明实施例中,根据应用软件待实现功能确定所述功能对应的业务流程拓扑;根据所述业务流程拓扑确定当前业务流程所需的业务组件及各个业务组件之间的连接关系;在获取当前业务流程所需的业务组件后,根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件,本发明实施例所提供的应用软件开发方法基于业务组件进行的。业务组件具有业务含义,可以直接表达业务概念,满足了应用软件的业务需求。

附图说明

图1为本发明一实施例所提供的业务组件的结构示意图;

图2为本发明一实施例所提供的方法的流程图;

图3为本发明另一实施例所提供业务流程拓扑示意图;

图4为本发明一实施例所提供的一系统的结构示意图;

图5为本发明一实施例所提供的一系统中一单元的结构示意图。

具体实施方式

本发明实施例公开了一种业务组件及基于业务组件的应用软件开发方法和系统,为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。

参见图1,本发明实施例所提供的业务组件包括业务组件接口101、业务数据存储单元102和业务逻辑单元103组成,其中:

业务组件接口101,用于为业务数据存储单元102和业务逻辑单元103提供处理数据并对外提供业务组件数据处理结果。

业务组件接口是业务组件与其他实体或者用户界面进行信息交互的窗口。

所述其他实体包括其他的业务组件或者其他信息交互渠道。以金融领域为例,所述其他信息交互渠道可以是ATM机或者网上银行。

具体地,所述业务组件接口包括业务组件输入接口和业务组件输出接口,所述业务组件输入接口用于为业务数据存储单元和业务逻辑单元提供处理数据;业务组件输出接口则用于提供业务组件数据处理结果。

业务数据存储单元102,用于存储业务组件属性数据和从业务组件接口获取的业务数据。

业务组件通过特定业务数据表达其业务内容。在业务组件设计过程中,凡是涉及到业务内容之处,均需使用业务数据集合中的数据,优选地,本发明实施例中,使用中文作为业务数据的基本文字,例如,在银行应用软件中常见的客户信息类业务数据有客户号、客户名称、性别、籍贯、生日等;常见的客户账务信息类的业务数据有账号、分账号、余额、利息积数、透支金额等。

业务逻辑单元103,用于利用从业务组件接口101和/或业务数据存储单元102中获取的数据根据当前业务组件的预期功能执行逻辑运算,并将结果输送给业务组件接口。

所述数据包括业务组件属性数据和从业务组件接口获取的业务数据。

业务逻辑用来表达业务组件的处理逻辑。业务逻辑可以用计算机伪语言的方式表达,也可以用自然语言形式表达。无论是伪语言的方式还是自然语言的形式,都有严格的语法要求。

所述业务组件还可以包括业务功能描述单元104,用于说明业务组件的作用、功能、约束条件和使用方法等。

业务组件是对通过应用软件所对应的业务功能的抽象而形成的。业务组件通过其业务逻辑单元对数据的处理而具备业务要素,具有业务含义,可以直接在构建应用软件时根据不同业务组件的业务特点进行使用。业务组件在实现粒度上要大于技术组件,它本身具有内在的业务涵义,而技术组件本身不具有业务涵义,其涵义需要应用软件开发人员根据不同的业务语境动态指定。

以下以“新建股东/投资人”业务组件的制作为例,说明业务组件的制作过程。

首先要确定业务组件功能。本例中,“新建股东/投资人”组件的业务功能为根据外部提供的股东或投资人的信息,在目标系统中添加该信息。

然后根据业务组件的功能确定业务组件的接口、业务数据和处理逻辑。本例中,业务组件接口包括输入接口和输出接口,其中输入接口用于接收待添加的股东/投资人信息,输出接口用于显示处理结果和提示信息;本例中的业务数据包括客户关联信息,公司客户基本信息;处理逻辑指示了当前业务组件如何根据业务组件接口和业务数据处理当前业务,从而实现当前业务组件的功能。在本例中,所述处理逻辑包括:

S1:根据业务组件接口输入的客户信息判断该客户所属客户类型;

S2:根据客户信息中包含的证件类型与证件号码,以及所述客户类型,从业务数据存储单元中查询是否存在该客户信息;

S3:如果没有该客户信息,则将此客户信息添加至目标系统中;

S4:通过业务组件接口反馈处理结果信息。

在本发明的另一实施例中,至少两个业务组件组成业务组件库。

当一个业务组件被建立起来后,可以保存到业务组件库中,通过所述业务组件库对已经建立的业务组件进行集中保存和管理。

参见图2,本发明实施例还提供一种基于业务组件的应用软件开发方法,包括:

步骤201:根据应用软件待实现功能确定所述功能对应的业务流程拓扑。

通过对待实现功能分析确定实现该功能所需的操作以及具体的处理步骤形成所述业务流程拓扑。

一个业务流程拓扑包含用户界面层和业务处理层两部分。在用户界面层确定当前业务流程拓扑所对应功能的界面所囊括的输入要素、显示要素和界面操作要素。在业务处理层确定实现当前业务流程拓扑所对应功能的具体处理步骤。

步骤202:根据所述业务流程拓扑确定当前业务流程所需的业务组件及各个业务组件之间的连接关系。

当一个业务流程拓扑确定之后,一个功能的实现方式就确定了。图3显示的是一个实现新增公司客户信贷关系功能的业务流程拓扑。由业务流程拓扑确定,要实现新增公司客户需要执行六个步骤,包括公司客户建档判断、本机构公司客户判断、公司客户终于信息核对、新增客户档案、建立客户关系以及显示处理结果。其中,根据处理结果的不同所显示的处理结果的内容会有不同。

在确定了实现新增公司客户功能的业务流程拓扑之后,就需要根据所述业务流程拓扑确定该业务流程拓扑对应的业务组件和各个业务组件之间的连接关系。

通过前面对业务组件的描述可以知道,业务组件的实质是具有业务要素和业务含义的功能模块,根据业务流程拓扑确定业务组件及各个业务组件间的连接关系包括:

首先根据业务流程拓扑中的步骤确定各个步骤所对应的业务组件;

然后根据各个步骤之间的逻辑关系确定各个业务组件之间的连接关系。

仍然以图3所示的业务流程拓扑为例。首先由业务流程拓扑确定,要实现新增公司客户需要执行六个步骤,包括公司客户建档判断、本机构公司客户判断、公司客户重要信息核对、新增客户档案、建立客户关系以及显示处理结果,下面以公司客户重要信息核对和建立客户关系两个步骤来说明如何建立不同业务组件之间的连接关系。

假设步骤公司客户重要信息核对对应的业务组件为A1,那么A1的输入接口应该接收到待核对的公司信息,然后A1的业务逻辑单元将收到的待核对信息和A1的业务数据存储单元中存储的业务数据进行核对,如果发现待核对的公司信息是公司客户,那么就将核对的结果通过A1的业务组件输出接口输出给下一步骤对应的业务组件,即建立客户关系对应的业务组件A2,A2通过自身的业务组件输入接口接收A1的结果。相应的,如果A1的业务逻辑单元通过核对发现待核对的公司信息不是公司客户,那么可以直接通过A1的业务组件输出接口将结果进行显示。

业务流程中的所需的业务组件可从预先建立的业务组件库中选取。

如果业务组件库没有现成的业务组件,可以直接根据业务要求建立临时业务组件,并对临时业务组件进行业务功能描述。经后续设计开发工作,完成组件开发以后,将临时组件转变为正式组件,加入到组件库中,以供后续应用软件设计时使用。

步骤203:根据所述连接关系组装业务组件以形成与所述待实现功能对应的应用软件。

如前所述,此时已经确定了待实现功能所需的业务组件和组件之间的连接关系,根据所述连接关系将各个组件进行组装即可以生成与待实现功能相对应的应用软件。

组装业务组件是指在业务流程拓扑所对应的业务组件确定完毕并且业务组件库中没有的业务组件也制作完成后,按照业务流程拓扑确定的各个业务组件之间的连接关系对各个业务组件进行技术要素的配置和定义,如:属性修改、输入输出值定义等,为完成应用程序生成做技术准备工作。

当完成业务组件组装后执行“生成代码”操作,可以根据系统代码生成的规则和要素,从业务组件代码自动生成编程语言与目标操作系统相对应的程序代码。

在本发明一实施例中,生成的代码可以根据地址配置信息,直接生成到指定的服务器的物理路径之下。

优选地,在本发明另一实施例中,生成的代码可以直接编译运行。

至此,生成了与待实现功能相对应的应用程序软件。

本发明实施例所提供的应用软件开发方法是基于业务组件进行的。业务组件具有业务含义,可以直接表达业务概念。对于某一个行业来说,许多功能的实现会用到共同的业务组件,所以提高了业务组件的重用性。

当随着实际应用的需要,某个应用软件的功能发生变化时,只需要将新功能的业务流程拓扑与原功能的业务流程拓扑进行比较,调整改变后的业务组件即可,能够满足用户多样化的业务需求。

本发明实施例以一个待实现功能为例对本发明实施例所提供的基于业务组件的应用软件的开发方法进行了说明,但是,当待实现的功能为多个时,可以通过对多个功能进行分解,对每个功能均可参照本发明实施例所提供的方法来开发对应的应用软件,本发明对此不再赘述。

与方法实施例相对应,本发明实施例还提供一种基于业务组件的应用软件开发系统,参见图4,该系统包括:

业务组件存储单元401,用于存储业务组件;

在实际应用中,所述业务组件存储单元可以由业务组件库来实现。

业务流程确定单元402,用于根据所获取的待实现的应用软件的功能确定业务流程拓扑;

业务组件确定单元403,用于根据所述业务流程拓扑确定当前业务流程所需的业务组件以及各个业务组件之间的连接关系;

业务组件获取单元404,用于从所述业务组件存储单元中获取当前业务流程所需的业务组件;

业务组件组装单元405,用于根据所述连接关系组装所述业务组件以形成与所述待实现功能对应的应用软件。

具体地,参见图5所述业务组件组装单元405包括:

设定子单元501,用于根据所述连接关系对各个业务组件进行技术要素的配置和定义;

组装子单元502,用于当所述技术要素的配置和定义完成后,按照所述连接关系将各个业务组件进行连接;

代码生成子单元503,用于当所述连接完成后,生成代码。

优选地,在本发明另一实施例中,所述代码生成子单元还可以包括一个地址配置模块,用于记录所述代码生成的地址;

所述代码生成子单元503,用于当所述连接完成后,将代码生成到所述代码生成地址指定的位置。

当某个功能涉及道的业务组件不包括在业务组件存储单元时,就需要构建新的业务组件,故在本发明另一实施例中,图4所示的系统还包括:

业务组件构造单元406,用于根据业务组件待实现功能构造业务组件;

所述业务组件存储单元401,还用于将所述业务组件构造单元构造的业务组件进行保存。

本发明实施例所提供的应用软件开发系统是基于业务组件进行的。业务组件具有业务含义,可以直接表达业务概念。对于某一个行业来说,许多功能的实现会用到共同的业务组件,所以提高了业务组件的重用性。

当随着实际应用的需要,某个应用软件的功能发生变化时,只需要将新功能的业务流程拓扑与原功能的业务流程拓扑进行比较,调整改变后的业务组件即可,能够满足用户多样化的业务需求。

本发明实施例所提供的系统以具有业务含义的业务组件为基础开发应用软件,克服了技术组件在应用软件开发过程中因为不具有技术含义而造成的开发周期长、软件适应性差、维护费用高的缺点。

本发明实施例以一个待实现功能为例对本发明实施例所提供的基于业务组件的应用软件的开发系统进行了说明,但是,当待实现的功能为多个时,可以通过对多个功能进行分解,对每个功能均可参照本发明实施例所提供的系统来开发对应的应用软件,本发明对此不再赘述。

本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号