CN112068843A - 一种应用软件中业务数据的建模方法 - Google Patents
一种应用软件中业务数据的建模方法 Download PDFInfo
- Publication number
- CN112068843A CN112068843A CN202010978340.7A CN202010978340A CN112068843A CN 112068843 A CN112068843 A CN 112068843A CN 202010978340 A CN202010978340 A CN 202010978340A CN 112068843 A CN112068843 A CN 112068843A
- Authority
- CN
- China
- Prior art keywords
- data model
- data
- model
- platform
- application software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000013499 data model Methods 0.000 claims abstract description 85
- 230000008569 process Effects 0.000 claims abstract description 26
- 238000004891 communication Methods 0.000 claims abstract description 18
- 238000013507 mapping Methods 0.000 claims abstract description 16
- 238000005192 partition Methods 0.000 claims abstract description 13
- 238000005259 measurement Methods 0.000 claims abstract description 8
- 238000007670 refining Methods 0.000 claims abstract description 4
- 239000000284 extract Substances 0.000 abstract 1
- 238000007726 management method Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000001520 comb Anatomy 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用软件中业务数据的建模方法,对应用软件的业务数据进行提炼、抽象获得业务数据的概念数据模型;通过对需求的分析,在不同的测量系下对概念数据模型元素进行测量量化,将概念数据模型精化为逻辑数据模型;通过将逻辑数据模型元素与具体平台进行映射,将逻辑数据模型精化为平台数据模型;选取平台数据模型中的平台元素进行投映形成平台视图,通过将平台视图和主进程元素纳入到组件容器中以形成可移植组件模型;通过将可移植组件模型纳入到分区容器中,并将可移植组件模型中的消息与分区中的通信端口进行映射形成最终的业务数据模型。本发明采用数据模型为可移植组件之间的数据共享提供一种规范化方法。
Description
技术领域
本发明属于计算机通讯领域,特别涉及到一种应用软件中业务数据的建模方法,实现航空电子系统中的应用软件之间跨平台的数据互联、互操作。
背景技术
随着综合模块化航空电子(Integrated Modular Avionics――IMA)在A380、A400M和B787等飞机上的成功应用,航空电子系统综合化的程度不断增强,分区操作系统逐渐成为IMA系统中使用的首选操作系统。分区操作系统通过提供时、空隔离的机制极大提高了航电系统软件的安全性及确定性。为了摆脱对底层传输机制的依赖,分区操作系统为应用软件提供了标准端口通信机制以实现分区应用之间的数据互联、互通。FACE(未来机载能力环境)标准是美国海军最早提出的一种开放式软件架构标准。它主要的目的是通过提高应用软件组件跨平台、可移植的能力来提高软件组件的可复用性,从而降低航空电子系统开发的成本。FACE架构正逐渐的成为机载应用软件设计参考的主要架构标准,越来越多的型号项目正在使用FACE标准开展软件架构的设计。FACE架构标准中的数据传输服务段(TSS)规范了可移植组件之间的数据通信的接口形式以及传输载荷的格式,但并不限定标准接口API之下的具体实现方式,分区操作系统提供的基于端口的通信方式就是在IMA系统设计中TSS最主要的实现方式之一。
传统的航空电子系统设计过程中,应用软件之间的业务数据是通过ICD文件(接口控制定义文件)来描述的。ICD对业务数据元素的定义往往会受到底层物理传输介质特性(如通信带宽、最大传输单位等)的影响,应用软件从总线上接收ICD数据并直接处理成为了传统航电应用软件开发的主要方式。这种方式所带来最大的问题就是导致了应用软件和ICD的紧耦合。当底层传输总线发生变化或者系统升级的时候,ICD对业务数据元素的定义也会发生变化,由于应用软件与ICD的紧耦合关系,应用软件对业务数据的处理方式势必也会变化,从而导致了应用软件跨平台可移植的能力不足。另一方面,数据通信的双方对数据元素的理解往往是依据ICD文件中相关内容的描述,不清晰的描述很可能会导致通信双方对同一数据的理解产生歧义,比如ICD中可能疏忽了对某一距离单位的描述,发送方认为是“公里”,而接收方却认为是“米”。或者发送方认为某一角度单位是“度”,而接收方却当“弧度”来处理。这些歧义通常会导致数据处理的错误,在航空装备这种要求高安全性的设备中,数据处理的错误很可能会导致灾难性的后果。
综上分析,对于综合化模块航空电子系统软件设计过程中,迫切需要一种针对业务数据的建模方法。它不是传统的基于“类”的建模,而是一种基于“语义”的建模。通过建模,通信双方对数据的“语义”信息更加清晰,避免了由于对数据理解的歧义而导致的错误处理。同时,这种业务数据的建模主要是针对应用组件的业务数据开展的,而非直接面向总线ICD的。业务数据来源于ICD但不等同于ICD。业务数据是与应用组件的业务逻辑相关,与具体数据的来源、传输介质是无关的。业务数据是从ICD中提炼而来,但是这部分工作交给平台相关的其他软件负责,与应用组件是无关的,这也解除了应用组件对ICD的依赖,提高了应用组件跨平台、可移植的能力。
发明内容
针对传统航空电子系统中数据传输的接口紧耦合以及对所传输数据的理解难以共享这两方面,本发明的发明目的在于提供了一种应用软件中业务数据的建模方法,采用数据模型为可移植组件之间的数据共享提供一种规范化方法。数据建模的目的是为了定义可移植组件中的数据并确保可移植组件之间的数据互用。鉴于航电数据模型的复杂性,本发明为综合模块化航空电子(IMA)系统软件的研制提供一种基于“语义”的数据建模方法。通过数据建模,通信双方对数据的“语义”信息更加清晰,避免了由于对数据理解的歧义而导致的错误处理。
本发明的发明目的通过以下技术方案实现:
一种应用软件中业务数据的建模方法,其中,业务数据模型建模过程包含以下步骤:
首先,对应用软件的业务数据进行提炼、抽象获得业务数据的“概念数据模型”;
然后,通过对需求的分析,在不同的测量系下对概念数据模型元素进行测量量化,将“概念数据模型”精化为“逻辑数据模型”;
再通过将逻辑数据模型元素与具体平台进行映射,将“逻辑数据模型”精化为“平台数据模型”;
接着,选取“平台数据模型”中的平台元素进行投映形成“平台视图”,通过将“平台视图”和主进程元素纳入到组件容器中以形成“可移植组件模型”;
最后,通过将“可移植组件模型”纳入到分区容器中,并将“可移植组件模型”中的“消息”与分区中的通信端口进行映射形成最终的“业务数据模型”。
进一步,还包含代码自动生成过程;第一步是从业务数据模型到IDL文件的映射,其中IDL文件要满足OMG规范;第二部是从IDL文件到编程语言的映射。
进一步,将构建好的业务数据模型进行标准符合性检查后存储到共享数据模型中供后续项目复用。
本发明的有益效果在于:
本发明为综合模块化航空电子(IMA)系统软件的研制提供了一种数据建模方法。这种建模方法最主要的初衷是为了解决数据传输的接口紧耦合以及对所传输数据的理解难以共享这两方面问题。本方法为可移植组件之间的数据共享提供一种规范化方法,定义可移植组件中的数据并确保可移植组件之间的数据互用。同时,这种数据建模方法是一种基于“语义”的建模方法。通过数据建模,通信双方对数据的“语义”信息更加清晰,避免了由于对数据理解的歧义而导致的错误处理。本建模方法所输出的数据模型是满足OMG组织的IDL(接口定义语言)规范的,该数据模型IDL文件可以被映射到多种编程语言(如C++、C等),并通过编译自动生成符合FACE架构规范的TS(传输服务)接口代码框架,显著的提升基于FACE架构应用软件的开发效率,降低IMA系统中驻留的FACE组件开发的难度。生成的数据模型经过标准符合性认证后,最终会被纳入到SDM(共享数据模型库)进行统一管理,为后续项目的模型复用做储备。
附图说明
图1是业务数据模型的分层构建过程图;
图2是业务代码框架的自动生成图;
图3是共享数据模型的管理流程图;
图4是共享数据模型的复用过程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。
本实施例所示的一种应用软件中业务数据的建模方法是一种基于“语义”的建模方法,主要是为了定义可移植组件中的数据并确保可移植组件之间的数据互用,具体包含:应用软件业务数据建模过程、通信代码框架的自动生成过程以及共享数据模型管理的过程。
(一)应用软件中业务数据建模过程
应用软件业务数据建模过程主要是将一个应用软件的功能进行抽象,将应用软件的功能与特定平台相关的功能(如传输总线、操作系统、设备驱动等)进行分离,梳理出与该应用逻辑相关的业务数据。这些业务数据是与应用软件的业务逻辑密切相关的,并不随着特定平台的变化而变化,但是这些业务数据大多来源于外部的设备或者其它软件,如雷达、光电、惯导等传感器设备,也可能是其它航电功能软件处理后的数据,对业务数据进行建模实际就是对航电设备之间通信的业务数据进行建模,改变传统航电设备之间的接口控制文件(ICD)的定义形式,传统航电设备接口ICD文件中数据定义是以设备为单位的,将这个设备上所有需要的数据信号统一打包,并不考虑设备上驻留应用软件的业务数据的组织形式,导致了应用软件数据处理逻辑与ICD中的数据组织形式紧密耦合,当ICD随着特定平台或者传输总线协议发生变化时,应用软件的数据处理逻辑也需要随之更改。对应用软件的业务数据进行建模,主要目的就是为了提高应用软件跨平台可移植的能力。
应用软件的业务数据建模过程的主要原则是尽量复用已有的业务数据模型,首先是从SDM(共享数据模型库)中选取前期已经构建好的模型元素进行复用。如果SDM中不存在可用的模型元素,用户则需要新建业务数据模型。参见图1所示,鉴于航空电子系统的复杂性,本实施例采用多级分层模型来分离特定的关注,分别从概念上、逻辑上和平台细节上对可移植组件之间的数据交换进行建模,具体如下:
首先,对应用软件的业务数据进行提炼、抽象获得业务数据的“概念数据模型”。概念数据模型(CDM,Conceptual Data Model)的要素包括实体、可观测量以及用于定义实体、可观测量之间概念和语义上下文的关联。实体或可观测量表示CDM中的领域概念。可观测量是指客观世界里可观测到但是还没有进一步量化的事物,比如“位置”,“姿态”,“角度”等都属于可观测量。实体可以认为是一个概念单元,它是由一系列可观测量组成的。
然后,通过对需求的分析,在不同的测量系(包括坐标系、坐标轴、单位、值类型等测量元素)下对概念数据模型元素进行测量量化,将“概念数据模型”精化为“逻辑数据模型”。逻辑数据模型(LDM,Logical Data Model)是对CDM的精化,在LDM中添加的度量细节包括单位、坐标系、值域(例如,实数、自然数)、约束和度量精度等。LDM中的实体根据CDM的相关实体来明确建模,它是CDM实体的一个实现。
再通过将可测量的逻辑数据模型元素与具体平台进行映射,将逻辑数据模型元素转化为计算机可以识别的数据类型表达形式(IDL类型),将“逻辑数据模型”精化为“平台数据模型”。平台数据模型(PDM,Platform Data Model)是对LDM的精化,LDM的基础元素在PDM中实现为物理数据类型。PDM支持的物理数据类型可直接对应到IDL数据类型。从PDM到每种支持的编程语言存在标准化的语言映射。PDM实体是LDM实体的一个实现。
接着,选取“平台数据模型”中的平台元素进行投映形成“平台视图”(即在平台数据模型中选取合适的元素组成应用的输入输出的“消息”),通过将“平台视图”(即消息)和主进程(MainProcess)元素纳入到组件容器中以形成“可移植组件模型”。从PDM到以UoP形式交付的软件还需要若干附加信息,可移植单元模型(UoP Model)通过为UoP提供形式化的消息接口规约来满足这一需求。消息接口规约为一个UoP上的多个端口,其中每个端口都引用PDM中的一个视图以说明它的消息类型。在PDM中描述的视图被UoPs引用为通过FACE架构的TSS(传输服务段)API传输的消息。
最后,为了将业务数据模型应用到航电系统中,需要将业务数据模型与航空电子系统中广泛使用的分区操作系统进行有效的融合。通过将“Uop模型”纳入到Arinc653分区容器中,并将“Uop模型”中的“消息”与分区中的通信端口进行映射形成最终的“业务数据模型”。
本发明所构建的所有业务数据模型由一个EMOF元模型和若干OCL(对象约束语言)约束所定义。一个有效的数据模型需要通过元模型和约束条件的验证。对于符合标准的数据模型则纳入到SDM共享库中进行统一管理,以备后续项目的复用。由于数据模型采用EMOF元模型进行定义,因而,可以通过计算机程序自动的进行平台代码和配置信息的生成,实现不同数据视图的变换。
(二)通信代码框架的自动生成过程,
通信代码框架的自动生成过程是将业务数据模型转换为目标代码的过程。通过对目标代码的自动生成可以大大降低FACE软件开发人员的技术难度及工作量。为了提升对多语言的支持,参见图2所示,本方案中提出了两步映射的机制,第一步是从业务数据模型到IDL文件的映射,其中IDL文件要满足OMG规范的,第二部是从IDL文件到编程语言的映射,支持的编程语言包含C、C++等。这二部分结合在一起就形成了业务数据模型语言绑定。这些绑定定义了如何选取一个PDM视图及业务数据模型的元素,创建代码中的消息类型以及Uop组件的框架代码,同时,根据组件之间的端口消息可以自动生成满足FACE标准TSS规范的通信框架代码,降低了FACE组件开发的难度。
(三)共享数据模型管理与复用过程,
共享数据模型管理与复用过程主要是实现业务数据模型的存储、管理及复用。业务数据建模过程本身是一项繁琐的工作,提高数据建模效率最好的方法就是尽量复用共享数据模型库中已经构建好的业务数据模型,这有助于提高软件产品的质量及开发效率。用户将新建的业务数据模型纳入共享库中进行存储管理的前提是对业务数据模型进行标准符合性检查,以确保业务新建模型是满足EMOF元模型规则的且可以被后续项目复用。
图3和图4都展示了共享数据模型的管理及复用的过程,
共享数据模型(SDM,Shared Data Model)是供应商和系统集成商之间交互的要点。SDM提供了构建可移植单元的基础模型元素集合。SDM共享库是一种数据元素仓库,可以被软件供应商开发可移植组件时所使用或扩展。SDM管理方案定义了管理SDM的策略,CCB(变更控制委员会)是管理SDM的机构,负责对纳入SDM共享库中的模型元素进行标准符合性检查及认证。SDM管理计划是对共享模型库的扩展进行管理,确保新数据模型项的标准符合性。
组件提供者和系统集成者是数据建模时最重要的两个角色。作为UoP开发工作的一部分,组件提供者不仅要提供组件,还要提供描述该组件所要求的输入和所提供的输出的业务数据模型。系统集成者使用该模型信息和其他组件的类似信息,来构建和集成大规模复杂应用软件系统。系统集成者可以从库中选择现有UoP来实现特定的系统功能。系统集成者的职责就是连接合适的输入和输出,确认和提供所有必要的数据转换,以使UoP之间的信息流保持正确。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (3)
1.一种应用软件中业务数据的建模方法,其特征在于:业务数据模型建模过程包含以下步骤:
首先,对应用软件的业务数据进行提炼、抽象获得业务数据的“概念数据模型”;
然后,通过对需求的分析,在不同的测量系下对概念数据模型元素进行测量量化,将“概念数据模型”精化为“逻辑数据模型”;
再通过将逻辑数据模型元素与具体平台进行映射,将“逻辑数据模型”精化为“平台数据模型”;
接着,选取“平台数据模型”中的平台元素进行投映形成“平台视图”,通过将“平台视图”和主进程元素纳入到组件容器中以形成“可移植组件模型”;
最后,通过将“可移植组件模型”纳入到分区容器中,并将“可移植组件模型”中的“消息”与分区中的通信端口进行映射形成最终的“业务数据模型”。
2.根据权利要求1所述的一种应用软件中业务数据的建模方法,其特征在于还包含代码自动生成过程;第一步是从业务数据模型到IDL文件的映射,其中IDL文件要满足OMG规范;第二部是从IDL文件到编程语言的映射。
3.根据权利要求1所述的一种应用软件中业务数据的建模方法,其特征在于将构建好的业务数据模型进行标准符合性检查后存储到共享数据模型中供后续项目复用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010978340.7A CN112068843A (zh) | 2020-09-17 | 2020-09-17 | 一种应用软件中业务数据的建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010978340.7A CN112068843A (zh) | 2020-09-17 | 2020-09-17 | 一种应用软件中业务数据的建模方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112068843A true CN112068843A (zh) | 2020-12-11 |
Family
ID=73680621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010978340.7A Pending CN112068843A (zh) | 2020-09-17 | 2020-09-17 | 一种应用软件中业务数据的建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068843A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282276A (zh) * | 2021-05-11 | 2021-08-20 | 北京航空航天大学 | 一种模型的映射方法和装置 |
CN114296809A (zh) * | 2021-12-24 | 2022-04-08 | 深圳航天科技创新研究院 | 一种基于操作系统的对象模型构建方法及其系统调用接口 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804818A (zh) * | 2018-06-09 | 2018-11-13 | 西北工业大学 | 一种基于face架构的软件系统建模方法 |
-
2020
- 2020-09-17 CN CN202010978340.7A patent/CN112068843A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804818A (zh) * | 2018-06-09 | 2018-11-13 | 西北工业大学 | 一种基于face架构的软件系统建模方法 |
Non-Patent Citations (2)
Title |
---|
张金;王长峰;李霞;: "业务模型向软构件模型的语义变换", 计算机系统应用, no. 02, pages 1 - 4 * |
洪沛;蔡潇;王羽;: "基于FACE思想的软件通用运行环境设计", 航空电子技术, no. 04, pages 1 - 5 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282276A (zh) * | 2021-05-11 | 2021-08-20 | 北京航空航天大学 | 一种模型的映射方法和装置 |
CN113282276B (zh) * | 2021-05-11 | 2023-02-17 | 北京航空航天大学 | 一种模型的映射方法和装置 |
CN114296809A (zh) * | 2021-12-24 | 2022-04-08 | 深圳航天科技创新研究院 | 一种基于操作系统的对象模型构建方法及其系统调用接口 |
CN114296809B (zh) * | 2021-12-24 | 2023-05-05 | 深圳航天科技创新研究院 | 一种基于操作系统的对象模型构建方法及其系统调用接口 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rademacher et al. | Challenges of domain-driven microservice design: A model-driven perspective | |
Watkins | Integrated modular avionics: managing the allocation of shared intersystem resources | |
US8943470B2 (en) | Requirements framework | |
CN109471624B (zh) | 基于gosaa的共享数据模型控制系统及数据架构生成方法 | |
CN112068808B (zh) | 一种航电系统多总线数据转换通用处理系统 | |
CN112068843A (zh) | 一种应用软件中业务数据的建模方法 | |
CN112166429A (zh) | 暴露的信息模型与应用的集成中具有降低复杂度的系统和方法 | |
CN110717268B (zh) | 一种基于face架构的可移植组件单元封装方法 | |
Staron et al. | Autosar standard | |
Bucaioni et al. | Technology-preserving transition from single-core to multi-core in modelling vehicular systems | |
CN113238739A (zh) | 一种插件开发和数据获取方法、装置、电子设备及介质 | |
Pohlmann et al. | Model-driven allocation engineering (T) | |
Tapp | Automating system-level data-interchange software through a system interface description language | |
CN109597611A (zh) | 前端数据流控制组件开发系统、方法、设备及存储介质 | |
US20070124156A1 (en) | Representing business transactions | |
CN112784434A (zh) | 一种基于模型的航电设计方法 | |
US7756691B2 (en) | Establishing relationships between components in simulation systems | |
Herzner et al. | Model-based development of distributed embedded real-time systems with the decos tool-chain | |
Xiao et al. | Transformation from System model to FACE data model based on metadata mapping | |
US11630935B1 (en) | Data traffic injection for simulation of circuit designs | |
Khalyeyev et al. | Towards a reference component model of edge-cloud continuum | |
US20230267253A1 (en) | Automated synthesis of virtual system-on-chip environments | |
Nema et al. | ERAS: Enabling the Integration of Real-World Intellectual Properties (IPs) in Architectural Simulators | |
Baak et al. | A Formal Metamodel for Software Architectures with Composite Components | |
Dragomir et al. | Well-formedness and typing rules for UML Composite Structures |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |