一种元数据定制的应用系统软件构建系统、系统构建方法与流程

文档序号:12664304阅读:224来源:国知局
一种元数据定制的应用系统软件构建系统、系统构建方法与流程

本发明涉及应用系统开发技术领域,特别是涉及一种元数据定制的应用系统软件构建系统、系统构建方法。



背景技术:

随着互联网技术的飞速发展,应用软件系统的功能愈加复杂,其界面的展现形式和交互能力也愈加丰富,但与此同时,应用软件开发的技术实现的难度也随之提高。

传统的应用软件系统的开发方式,就系统交互式界面部分而言,一是通过基于各类前端标记和脚本语言,对HTML元素进行操作,从而形成满足特定展示和交互要求的人机界面,例如基于原生的HTML界面组件,利用Javascript对HTML文档结构模型进行调整,利用叠层样式表进行渲染;二是在此基础上,利用面向组件的界面开发模式,对Web界面进行组件化封装,从而形成具有丰富界面组件的前端开发第三方类库,比较有代表性的包括ExtJS、JQuery及其插件等。

但是,上述两种开发方式,面对类似的数据建模、数据展现、界面交互等问题,都需要进行大量的编码开发工作,难度高,工作量大,应用软件系统的开发效率往往难以满足用户需求。



技术实现要素:

本发明的目的,就是要提出一套利用元数据对业务数据模型进行描述定义,并在此基础上实现对业务数据的访问,进而针对业务数据实现通用的界面组件,并通过业务组件实例的布局定义,快速构建应用系统软件的技术方案。

为解决上述问题,本发明提供了一种元数据定制的应用系统软件构建系统,包括服务器、与服务器通信连接的各个客户端,所述服务器内设置有元数据模型库、业务数据模型库、界面组件库、界面组件容器、业务数据访问接口库、业务数据界面组件访问接口库、界面组件容器访问接口库,客户端设置有所述业务数据定义模块、界面组件定义模块、界面组件容器布局定义模块、业务数据访问方法定义模块。

所述业务数据模型库为描述业务领域数据实体及其关系的数据库。所有数据实体及其关系采用统一的元数据模型进行描述。

所述元数据模型库用于存储描述业务数据的元数据模型。

所述业务数据访问开发接口库用于访问业务数据,其内包括的接口包括新增业务数据实例和/或删除业务数据实例和/或修改业务数据实例和/或查询获得业务数据实例和/或根据查询条件获得业务数据实例数量和/或根据查询条件获得业务数据实例和/或根据查询条件和分页条件获得业务数据实例。

所述界面组件库用于存储界面组件源代码。

所述界面组件访问接口库用于访问界面组件,所述接口包括组件数据获取和/或组件数据修改和/或组件展示方式修改。

所述界面组件容器用于根据预先指定的布局方案,将各个界面组件在对应客户端进行展示。

所述界面组件容器访问接口(API)库用于访问界面组件容器,所述接口包括设置容器布局方案和/或增加界面组件和/或修改界面组件布局。

所述业务数据定义模块用于用户根据需求及元数据模型对业务数据进行可视化的建模、扩展元数据模型中的数据类型,并维护业务数据。

界面组件定义模块用于用户根据需求扩展定制界面组件类型、定义界面组件实例。

界面组件容器布局定义模块用于用户根据需求对界面组件的布局方案进行定义。

业务数据访问方法定义模块用于用户对业务数据访问接口进行扩展定制。

进一步的,业务数据定义模块对业务数据建模时利用元数据模型描述名称和/或说明和/或图标和/或属性。

进一步的,元数据模型的数据实体包括数据方案、数据类型、数据属性。其中数据方案用于描述对一个特定业务领域数据描述方案的基本信息。数据类型用于描述业务数据模型中的各实体的基本信息,继承关系。数据属性用于描述业务数据模型中各实体所具有的数据属性类型。

进一步的,业务数据的属性类型包括基本数据类型、枚举数据集、引用数据类型,其中,枚举数据集用于描述所有枚举型数据的取值范围定义,引用数据类型用于规定所引用的其他业务数据类型。

进一步的,服务器还设置有界面组件交互模块,用于定义各个界面组件的消息交互关系。

上述的元数据定制的应用系统软件构建系统的系统构建方法包括如下步骤:

步骤一:对业务数据模型进行建模,具体为:预先对业务数据模型采用元数据模型进行描述。如果元数据模型中给定数据类型未满足业务需求,则业务数据定义模块对元数据模型的数据类型扩展,获得需要的业务数据类型,再采用元数据模型进行描述。

步骤二:基于业务数据访问接口库扩展业务数据访问接口。

步骤三:建立界面组件实例,具体为:根据人机交互界面需求,选取界面组件库中已有的界面组件类型,建立界面组件实例,指定该组件实例所对应的业务数据模型类型及其属性,如已有界面组件类型不能满足人机交互界面需求,则扩展界面组件类型后再建立界面组件实例。

步骤四:组装人机交互界面,具体为:根据人机交互界面需求,将已定义的若干界面组件实例,根据一定的界面布局方式,组装成为完整的人机交互界面。

步骤五:发布应用软件。

进一步的,步骤一中对元数据模型的数据类型进行扩展的具体方法为:根据需要赋予某个已有数据类型特定的意义,同时选择一个或者多个已有类型数据组合形成扩展的数据类型。

进一步的,步骤三具体为:根据元数据模型中给定的数据类型,根据通用业务数据前端组件扩展标准,扩展定义新的界面组件类型,定义其名称、用途、数据类型要求等基本信息,并编写界面组件展示及人机交互响应代码,将上述定义信息及代码上传至服务器指定文件目录。

进一步的,步骤五具体为:将形成的业务数据模型的描述文件上传至服务器指定文件目录,如需对外发布数据访问接口服务,则指定对外发布的业务数据类型,启动数据接口服务。如需提供人机交互界面,将经界面组件实例的描述文件,以及前端界面布局的描述文件上传至服务器指定文件目录,启动人机交互界面服务。

进一步的,所述方法还包括定义各个界面组件的消息交互关系的步骤。

本发明的有益效果为:

利用本发明所述系统及方法,技术人员可通过对业务领域数据模型的设计和描述,以及对业务系统软件人机交互界面的可视化定制,快速搭建应用系统,在此过程中无需大量进行编码,进而显著降低应用系统软件开发的难度,提升开发效率,同时利用元数据模型的丰富灵活性以及界面组件技术实现规范的可扩展性,满足应用系统软件扩展性的需求。

附图说明

图1为元数据模型主要组成示意图。

图2为界面组件示例。

图3为本发明所述系统体系结构示意图。

具体实施方式

本发明的设计构思为:

第一:设计一套用以描述业务数据的元数据模型,元数据模型必须具有丰富全面的业务数据描述能力,并且必须具有足够的灵活性。

第二:定义一套针对业务数据的通用且抽象的访问方法,并在应用系统实现过程中根据系统要求加以具体实现。

第三:定义一套用以描述基于元数据的前端界面组件描述模型,以便基于业务数据模型定义界面组件,并实现组件的界面展示、人机交互、事件关联、界面布局等功能,并根据该技术规范,为应用系统开发提供常用的前端业务组件。

第四:设计一套业务数据建模及前端定制的可视化工具,利用该工具,可基于元数据模型对业务数据进行描述、加载业务数据访问方法的具体实现、定义应用系统所需的前端组件实例、对前端业务组件进行界面布局、对已定义的业务系统进行测试和发布。

第五:设计一套基于元数据配置的应用系统软件架构,所有采用本专利所述方法进行设计开发的应用软件均采用该架构,不同应用软件间的差异主要在于业务数据模型以及对其进行描述的元数据内容不同。

下面对本发明技术方案进行说明。

本发明所述元数据定制的应用系统软件构建系统包括服务器、与服务器通信连接的各个客户端,所述服务器内设置有元数据模型库、业务数据模型库、界面组件库、界面组件容器、业务数据访问接口(API)库、业务数据界面组件访问接口(API)库、界面组件容器访问接口(API)库,客户端设置有所述业务数据定义模块、界面组件定义模块、界面组件容器布局定义模块、业务数据访问方法定义模块。

下面分别予以介绍。

一:业务数据模型库

所述业务数据模型库为描述业务领域数据实体及其关系的数据库;所有数据实体及其关系采用统一的元数据模型进行描述。

业务数据的类型包括三类:基本数据类型(string、integer、float、date等)、引用类型(对其他业务数据的引用,包括多引用、单引用)、枚举类型(对枚举数据集中单个或多个取值的引用)。这种数据类型的描述方式基本满足了所有业务数据类型的描述要求。

二:元数据模型库

所述元数据模型库用于存储描述业务数据的元数据模型。元数据模型主要用以描述业务数据,因此要求元数据模型具有丰富全面的业务数据描述能力。如图1所示为元数据的主要组成。元数据模型的数据实体包括数据方案、数据类型、数据属性。其中数据方案用于描述对一个特定业务领域数据描述方案的基本信息(如:方案名称、创建人、创建时间、版本信息等)。数据类型用于描述业务数据模型中的各实体的基本信息,继承关系(如所属方案、父类模型、模型名称、模型描述、属性列表等);数据属性用于描述业务数据模型中各实体所具有的数据属性类型(如:所属模型、属性名称、取值类型、取值描述、属性描述等)。

元数据所描述的业务数据模型具有继承体系结构,即一个业务数据实体A继承了另一个实体B,意味着实体A中具有实体B的所有可继承的数据属性。这一设计有利于简化业务数据的描述难度,并且有利于对具有一定数据特征的不同类型业务数据,采用相同的形式进行应用。

三:业务数据访问开发接口库

所述业务数据访问开发接口库用于访问业务数据。本发明中,对不同领域的业务数据,规定了统一的通用访问方法,以便上层应用按照该方法进行数据访问。所述接口包括新增业务数据实例和/或删除业务数据实例和/或修改业务数据实例和/或查询获得业务数据实例和/或根据查询条件获得业务数据实例数量和/或根据查询条件获得业务数据实例和/或根据查询条件和分页条件获得业务数据实例。

应当理解,业务数据通用访问方法包括但不限于以上的列举。在具体的应用系统中,可对访问接口库实现方式进行具体实现,例如访问数据库方式的实现,Web Services服务调用方式实现,Rest服务调用实现等等,这样就保证了数据访问方式的可扩展性。

如果业务数据采用关系型数据库管理系统进行管理,则可采用SQL语言实现上述业务数据访问接口库。

四:界面组件库

所述界面组件库用于存储界面组件源代码。

界面组件是基于由元数据描述的业务数据模型,根据应用系统需求进行定制形成的前端界面组件。业务数据界面组件包括但不限于:数据表格、数据树视图、数据表单、数据统计图等。结合元数据模型设计,对这些界面组件进行定义的数据模型示例如图2所示。

优选的,服务器还设置有界面组件交互模块,用于定义各个界面组件的消息交互关系。设置本模块的原因在于:各个界面组件均继承于“组件”实体,该实体规范了各类组件交互时能发布的事件和能执行的动作,规范了组件发布和接收消息的主题、组件交互的参数类型。在应用软件界面定制过程中,就需要指明界面组件间“事件-消息”的“发布-订阅”关系,从而使得界面组件能够实现必要的联动。

五:界面组件访问接口库

所述界面组件访问接口(API)库用于访问界面组件,包括组件数据获取和/或组件数据修改和/或组件展示方式修改。

六:界面组件容器

所述界面组件容器用于根据预先指定的布局方案,将各个界面组件在对应客户端进行展示。优选的,可将若干界面组件容器通过递归式的组合布局,形成完整的应用软件前端界面,并进行预览、测试及系统发布。

七:界面组件容器访问接口库

所述界面组件容器访问接口(API)库用于访问界面组件容器,所述接口包括设置容器布局方案和/或增加界面组件和/或修改界面组件布局。

八:业务数据定义模块

所述业务数据定义模块用于用户根据需求及元数据模型对业务数据进行可视化的建模、扩展元数据模型中的数据类型,并维护业务数据。

本模块根据系统需求,对业务数据进行建模,即分别对“数据方案”、“数据类型”、“数据属性”以及“枚举数据集”提供可视化的建模能力,并为不同数据类型间继承、引用、枚举等关系提供可视化的分析展示视图。并为不同数据类型间继承、引用、枚举等关系提供可视化的分析展示视图。

九:界面组件定义模块

界面组件定义模块用于用户根据需求扩展定制界面组件类型、定义界面组件实例。

十:界面组件容器布局定义模块

界面组件容器布局定义模块用于用户根据需求对界面组件的布局方案进行定义。

十一:业务数据访问方法定义模块

业务数据访问方法定义模块用于用户对业务数据访问语言进行扩展定制。

十二:业务数据定义模块

业务数据定义模块对业务数据建模时利用元数据模型描述名称和/或说明和/或图标和/或业务数据属性。资源属性的数据类型需从元数据模型给定的数据类型进行选取,业务数据的属性类型包括:(1)基本数据类型(包括但不限于整数、浮点数、日期时间、字符串、布尔值),(2)领域数据类型(如金额、电话号码、电子邮箱地址时间段、经纬度、三维坐标值、IP地址、文件、图片、视频等),(3)枚举数据类型(含单选枚举和多选枚举),(4)引用数据类型(含单引用和多引用)。

图3是对上述系统体系结构的形象展示,其中的数据访问服务主要实现对元数据、业务数据、界面组件定义数据、界面组件容器定义数据等访问方法的服务化封装,实现事务过程的封装。前后端交互中间件是为客户端/浏览器提供远程调用数据访问服务的能力。

下面对上述系统的工作方法进行详细说明,包括如下步骤:

步骤一:对业务数据模型进行建模,具体为:预先对业务数据模型采用元数据模型进行描述;如果元数据模型中给定数据类型未满足业务需求,则业务数据定义模块对元数据模型的数据类型扩展,获得需要的业务数据类型,再采用元数据模型进行描述。

对元数据模型的数据类型进行扩展的具体方法为:根据需要赋予某个已有数据类型特定的意义,同时选择一个或者多个已有类型数据组合形成扩展的数据类型。例如:基于“字符串”类型,扩展“街道地址”类型。基于两个“字符串”类型,扩展形成“中文姓名”类型。

步骤二:基于业务数据访问接口库扩展业务数据访问接口。

步骤三:建立界面组件实例,具体为:根据人机交互界面需求,选取界面组件库中已有的界面组件类型,建立界面组件实例,指定该组件实例所对应的业务数据模型类型及其属性,如已有界面组件类型不能满足人机交互界面需求,则扩展界面组件类型后再建立界面组件实例。

举例:建立“资源数据列表”组件实例,指定该组件实例所对应的资源模型实例为“员工信息”,指定其对应的属性包括:“员工姓名”、“性别”、“工号”、“生日”、“学历”等。

本步骤中,还需要设置该组件实例必要的显示参数(例如设置“资源数据列表”组件实例的最大高度为500像素,宽度为自适应)。

扩展界面组件类型的具体方式为:根据元数据模型中给定的数据类型(含扩展数据类型),根据通用业务数据前端组件扩展标准,扩展定义新的前端界面组件类型,定义其名称、用途、数据类型要求等基本信息,并编写前端组件展示及人机交互响应代码,将上述定义信息及代码上传至平台服务器指定文件目录。

步骤四:组装人机交互界面,具体为:根据人机交互界面需求,将已定义的若干界面组件实例,根据一定的界面布局方式,组装成为完整的人机交互界面。

步骤五:发布应用软件。

具体为:将形成的业务数据模型的描述文件上传至服务器指定文件目录,如需对外发布数据访问接口服务,则指定对外发布的业务数据类型,启动数据接口服务;如需提供人机交互界面,将经界面组件实例的描述文件,以及前端界面布局的描述文件上传至服务器指定文件目录,启动人机交互界面服务。

优选的,所述方法还包括利用界面组件交互模块定义各个界面组件的消息交互关系的步骤。

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