基于元模型驱动业务对象的方法和装置与流程

文档序号:11198988阅读:918来源:国知局
基于元模型驱动业务对象的方法和装置与流程

本发明涉及业务处理领域,具体而言,涉及一种基于元模型驱动业务对象的方法和装置。



背景技术:

在软件系统中存在多个业务对象,每个业务对象具有属性,能够表示业务对象在某个方面的特性,多个业务对象之间还可能会有业务关系。那么,由于一个软件系统可能提供给不同的企业,但是不同的企业有不同的需求,业务对象的属性与关系是不同的,为了变更业务对象的属性和关系等,需要修改对应的程序的所有代码,再重新编译,增加了工程的复杂度,现场实施困难,不便于维护代码。

针对相关技术中对软件系统的业务对象进行修改的方法复杂的技术问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种基于元模型驱动业务对象的方法和装置,以至少解决相关技术中对软件系统的业务对象进行修改的方法复杂的技术问题。

根据本发明实施例的一个方面,提供了一种基于元模型驱动业务对象的方法,该方法包括:通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系。

进一步地,在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之前,方法还包括:基于元模型的建模方法对业务数据库进行建模,得到业务元模型文件;在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,方法还包括:基于更新的业务数据库对业务元模型文件进行更新。

进一步地,在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,方法还包括:接收展示指令;基于元模型的结构展示业务数据库中存储的多个业务对象的类属性和/或类关系。

进一步地,驱动界面控件包括输入框和按钮,通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令包括:通过输入框接收业务对象的信息;通过按钮接收对业务对象的信息进行操作的操作指令。

根据本发明实施例的另一方面,还提供了一种基于元模型驱动业务对象的装置,该装置包括:获取单元,用于通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;更新单元,用于基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系。

进一步地,该装置还包括:建模单元,用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之前,基于元模型的建模装置对业务数据库进行建模,得到业务元模型文件;其中,更新单元还用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,基于更新的业务数据库对业务元模型文件进行更新。

进一步地,该装置还包括:接收单元,用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,接收展示指令;展示单元,用于基于元模型的结构展示业务数据库中存储的多个业务对象的类属性和/或类关系。

进一步地,驱动界面控件包括输入框和按钮,获取单元包括:第一接收模块,用于通过输入框接收业务对象的信息;第二接收模块,用于通过按钮接收对业务对象的信息进行操作的操作指令。

根据本发明实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明的基于元模型驱动业务对象的方法。

根据本发明实施例的另一方面,还提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行本发明的基于元模型驱动业务对象的方法。

在本发明实施例中,通过通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系,解决了相关技术中对软件系统的业务对象进行修改的方法复杂的技术问题,进而实现了降低修改软件系统中业务对象的方法的复杂度的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的基于元模型驱动业务对象的方法的流程图;

图2是根据本发明实施例的一种可选的元模型结构的示意图;

图3是根据本发明实施例的一种可选的基于元模型驱动业务对象的方法的示意图;

图4是根据本发明实施例的一种可选的基于元模型驱动业务对象的装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请提供了一种基于元模型驱动业务对象的方法的实施例。

图1是根据本发明实施例的一种可选的基于元模型驱动业务对象的方法的流程图,如图1所示,该方法包括如下步骤:

步骤s101,通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令:

需要说明的是,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系,类属性是业务对象的属性信息,业务对象可以包括不止一个属性,类关系用于描述业务对象与其它业务对象之间的关系,每个业务对象可以与其它业务对象没有关系,也可以与至少一个业务对象存在类关系,每个业务对象的类关系可以不止一个,每个类关系可以是用于表示与其它多个业务对象之间的关系。

元模型是一种建模的方式,可选的,元模型可以存储为json或xml格式的文本。例如,制造业需要管理设计物料清单(简称bom),其模型如图2所示,包括零部件类和零部件装配关系。这些xml或json格式文件,描述了业务类的属性、行为(新建、删除、修改),以及业务类之间直接的关系。

如图3所示,驱动界面控件可以接收输入的信息和指令,驱动界面控件中可以显示提示信息以提示输入的位置,例如,可以显示文本框并在文本框周围提示该文本框用于接收业务对象的属性信息,或者,可以显示按钮控件,按钮控件上指示该按钮用于执行“确认”的操作,等等。

如图3所示,通过驱动界面控件可以获取业务对象的信息以及用于对业务对象的信息进行操作的操作指令,例如,接收输入的业务对象的代号、名称,或者,接收对存储业务对象的数据库进行更新或对某个业务对象进行删除的操作。作为一种可选的实施方式,可以将业务对象的属性和关系通过驱动界面控件的属性展示控件动态的获取并根据获取的信息在数据库中创建业务对象、业务对象的属性或者业务对象的关系(与其它业务对象的关系),并且,可以通过驱动界面控件的操作按钮、操作菜单动态的创建行为,行为是指对关于业务对象的信息(类属性、类关系)的行为动作,例如,新建、删除、修改等,其中,对业务对象的类属性进行新建、修改或删除时可以直接操作,在对业务对象的类关系进行新建时,可以对具有关系的多个业务对象建立关系,在对业务对象的类关系进行修改时,可以先对需要解除关系的多个业务对象解耦,然后按照修改之后的类关系建立关系,删除业务对象的类关系时可以直接将需要删除的类关系的多个相关业务对象进行解耦。

步骤s102,基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新:

在通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令之后,基于获取到的业务对象的信息对业务数据库进行更新。如图3所示,业务数据库用于存储多个业务对象的类属性和类关系,业务数据库中包括多个业务对象,存储了每个业务对象的类属性和/或类关系。在获取到业务对象的信息之后,根据输入的操作指令的指示对业务数据库进行更新,例如,在业务数据库中新建一个业务对象,在业务数据库中修改某个业务对象的一个类关系,等等。

该实施例通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系,解决了相关技术中对软件系统的业务对象进行修改的方法复杂的技术问题,进而实现了降低修改软件系统中业务对象的方法的复杂度的技术效果。

作为上述实施例的一种可选实施方式,在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之前,还可以基于元模型的建模方法对业务数据库进行建模,得到业务元模型文件,业务元模型文件可以是xml或json格式文件,描述了业务类的属性、行为(新建、删除、修改),以及业务类直接的关系。业务元模型文件得到之后,如果业务数据库有更新,则可以基于更新的业务数据库对业务元模型文件进行更新。

文件代码与驱动界面控件和数据库(业务数据库)中内容的对应如图3所示,驱动界面中可以显示提示信息,例如,“零件基本属性”、“代号”、“名称”等,用于提示用户当前驱动界面控件的功能,对应于文件代码中的驱动界面代码,其中,驱动界面控件上还可以包括“保存”、“更新”、“删除”等按钮,对应文件代码中的行为驱动菜单、按钮代码,数据库可以根据驱动界面控件上接收的输入进行更新,驱动界面控件也可以根据数据库中的内容进行显示,数据库中的内容与文件代码中的驱动数据库代码相对应。

可选的,在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,还可以对业务数据库中的业务对象及各个业务对象的关系进行展示。展示指令是用于指示对业务数据库中存储的业务对象按照元模型的结构进行展示的指令,在接收到展示指令之后,基于元模型的结构展示业务数据库中存储的多个业务对象的类属性和/或类关系。具体的,展示的形式可以是以例如图2中所示的结构进行展示,显示每个业务对象的名称,业务对象的类属性可以是隐藏的,在选中业务对象的属性菜单之后可以查看到业务对象的类属性,业务对象的类关系可以是通过与其它业务对象之间的连接关系等展示出来,例如,通过树状结构、网状结构、拓扑结构等结构形式展示业务数据库中存储的需要显示的业务对象之间的类关系。

在驱动界面控件中可以包括输入框和按钮,在通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令时,通过输入框接收业务对象的信息,通过按钮接收对业务对象的信息进行操作的操作指令。驱动界面控件的展现可以是动态生成的,通过展现驱动界面控件进行对业务数据库的数据存取。

需要说明的是,在附图的流程图虽然示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请还提供了一种存储介质的实施例,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明实施例的基于元模型驱动业务对象的方法。

本申请还提供了一种处理器的实施例,该处理器用于运行程序,其中,程序运行时执行本发明实施例的基于元模型驱动业务对象的方法。

本申请还提供了一种基于元模型驱动业务对象的装置的实施例。

图4是根据本发明实施例的一种可选的基于元模型驱动业务对象的装置的示意图,如图4所示,该装置包括获取单元10和更新单元20,其中,获取单元,用于通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;更新单元,用于基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系。

该实施例通过获取单元,用于通过驱动界面控件获取业务对象的信息和用于对业务对象的信息进行操作的操作指令,其中,业务对象为基于元模型描述的对象,业务对象的信息包括业务对象的类属性和类关系;更新单元,用于基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新,其中,业务数据库用于存储多个业务对象的类属性和类关系,解决了相关技术中对软件系统的业务对象进行修改的方法复杂的技术问题,进而实现了降低修改软件系统中业务对象的方法的复杂度的技术效果。

进一步地,该装置还包括:建模单元,用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之前,基于元模型的建模装置对业务数据库进行建模,得到业务元模型文件;其中,更新单元还用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,基于更新的业务数据库对业务元模型文件进行更新。

进一步地,该装置还包括:接收单元,用于在基于获取的业务对象的信息和操作指令的指示对业务数据库进行更新之后,接收展示指令;展示单元,用于基于元模型的结构展示业务数据库中存储的多个业务对象的类属性和/或类关系。

进一步地,驱动界面控件包括输入框和按钮,获取单元包括:第一接收模块,用于通过输入框接收业务对象的信息;第二接收模块,用于通过按钮接收对业务对象的信息进行操作的操作指令。

上述的装置可以包括处理器和存储器,上述单元均可以作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

上述本申请实施例的顺序不代表实施例的优劣。

在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。

其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1