CNI系统设备测试软件组件化设计方法技术方案

技术编号:24682953 阅读:30 留言:0更新日期:2020-06-27 07:51
本发明专利技术公开的CNI系统设备测试软件组件化设计方法,旨在提供一种具有高复用性、高内聚低耦合性的综合检测设备软件,此方法适用于航空通信导航识别系统CNI综合检测设备软件的设计过程。首先,定义组件与组件框架之间的接口通信规范,使得组件、组件框架能够独立并行开发,提升软件开发效率,其次,设计一个组件化框架,实现对组件的加载、运行、管理,并作为中介者为组件之间提供接口通信服务,最后,根据航空通信导航识别系统CNI综合检测设备系统组成结构,划分出多个相对独立的软件组件,各自实现CNI传感器子系统的功能与性能测试,通过上述组件化的软件设计方法,克服了现有技术功能众多而开发资源紧张的缺陷。

Component design method of test software for CNI system equipment

【技术实现步骤摘要】
CNI系统设备测试软件组件化设计方法
本专利技术涉及一种适用于航空电子系统设备测试软件的设计方法,尤其是航空通信导航识别系统CNI综合检测设备软件的组件化设计方法。
技术介绍
模块化,面向对象,软件组件,基于组件对象模型(COM)的技术集合,ActiveX控件;接口软件模块化及面向对象程序设计,随着以计算机技术为基础的虚拟设备器技术的发展,自动测试系统正朝着标准化、模块化的方向发展,出现了标准的测试总线,如VXI、PXI和PCI总线,这样在测试系统的组建时只需选择实现不同功能的标准模块。硬件的标准化、模块化给测试系统的集成和使用带来极大的方便。通过模块化所实现的软件是由被加工的对象及其在该对象上所实现的有关功能构成。从软件的发展历程来看,程序设计方法经历了多次变革,从最初的功能分解法到结构化程序设计方法,再到至今仍在广泛使用的面向对象程序设计方法。对于大型、复杂系统的软件设计,从软件模型的角度来考虑,有效的办法就是把一个庞大的应用软件分成多个模块,每个模块保持一定的功能独立性,在协同工作时,通过相互之间的接口完成实际的任务。由此提出了软件设计中模块化的思想。软件设计的模块化降低了设计开发的复杂度并使设计步骤清晰,也有利于提高软件健壮性、灵活性、可复用性等。所谓组件是软件的基本量子。它具有一定的功能,同时又是可维护的,具有标准化的、可重用的公开接口。以组件为发布单元的对象模型,可以使各软件组件用统一的方式进行交互。也就是说组件可以在二进制级别上进行集成和重用,能被独立地生产、获得和配置。组件可以是DLL文件形式,也可以是EXE文件形式。进行模块化软件设计时通常要综合考虑模块的可分解性、可结合性、可理解性、连续性及模块保护几方面的要求。模块的可分解性要求把一个大的、复杂的问题分解为一些小的、简单的问题,通过解决各个小问题来解决大问题;模块的可结合性要求不同时期、不同项目、不同环境下设计的模块应能自由地结合在一起构成新的系统。基于功能的软件开发方法中,其功能实现中考虑的“过程”和“操作”是多变和不稳定的,程序结构围绕事先确定好的功能,使得功能的扩充、删除及修改变得相当困难。面向对象的程序设计中考虑的“对象”和“数据结构”是相对稳定的。面向对象方法把属性和服务封装在对象中,当外部功能发生变化时,这种封装可以保持对象结构的相对稳定,使得改动仅局限在一个对象内部,减小了因改动引起的系统波动效应。面向对象设计方法是继面向过程的设计方法之后,广泛使用的软件设计方法。面向对象的系统模型对象封装了数据以及对数据的操作。对象之间通过相互调用协作来实现指定的业务流程。从系统构成的观点,面向对象的系统模型是无中心的,各个对象地位平等。对象之间是P2P(点对点)的联系,对于一个具有N个对象的系统,对象连接关系最多有N*(N-1)/2种,当对象数目较多时,对象连接关系的数量将以平方级数激增。CNI是航空电子系统的重要组成部分,在此基础上发展起来的综合化通信导航识别(IntegratedCNI,ICNI)设备以通用模块为基础,加强设备的冗余备份和资源重构以提高传感器功能、执行任务的冗余度和可靠性,但与此同时会使ICNI设备的测试及故障定位更加复杂,从而对所需测试系统的系统集成、故障检测和隔离能力提出了更高要求。ICNI系统组成包括天线接口、综合信道、核心处理等分机。在系统中,分机不能独立完成某项功能。当启动某一功能时,与此功能有关的硬件模块资源在天线开关、射频开关网络以及数字交换网络的支持下进行组合,构成一个完成该功能的硬件线程,同时中频信号处理资源通过控制和加载构成相应的软件线程,支持该功能的信号全程处理。ICNI可同时支持多个硬件线程和软件线程,即可同时完成多个功能。系统资源管理器还可通过控制系统的硬件线程和软件线程来实现系统资源重构。当前ICNI设备测试通常采用传统三代联合式CNI设备测试方法,即采用多种传感器激励设备,配置大量人力分别对ICNI设备进行测试,在ICNI设备发生故障时,通常依靠设计师经验或需要较多人员根据信号流向分段排故,这种系统集成、故障检测手段已不能满足项目数量的急剧增加。CNI综合检测设备涉及的检测功能繁多,总体上分为三类检测功能:功能对通测试、链路检查、性能测试。如果采用面向对象的设计方法,将不得不面对产生大量对象及管理对象复杂连接关系的事实。《电讯技术》2015年4月出版的第55卷第4期第419-423页公开了一种通用飞机综合航电测试系统,该系统将以Labview为平台的虚拟设备器技术、以GPIB设备器、VXI模块为基础的自动测试技术引入综合航电系统的测试平台,实现了对飞机综合航电系统的测试。缺点是该系统没有根据综合航电系统的功能结构设计出独立的功能测试软件模块,组件化程度不高。中国专利申请2012100067801公布了一种基于PXI总线、LabWindowsCvi的飞行器航电设备地面检测系统。该专利技术通过由PXI测试系统、适配器、I/O模块、机柜、测试台、测试电缆及电源组成的硬件部分和由基于LabWindowsCvi开发的应用软件部分,协同完成飞行器航电设备的地面检测工作。该专利技术以任务为导向,分别完成了时间驱动任务、事件驱动任务、后台运行任务的软件设计。该专利技术提供了一种飞行器航电设备地面检测系统的软硬件协同设计方法,使得飞行器航电设备地面检测系统模块化、集成化、小型化。缺点是该专利技术局限于过程化的软件设计方法,缺少软件模块的组件化设计,不能实现软件模块的复用,并且软件与硬件绑定,无法实现软件的通用。CNI综合检测设备需要实现的功能众多,随着CNI系统检测设备测试软件业务的壮大,模块越来越多,代码量超10万是很正常的,这个时候会遇到以下问题稍微改动一个模块的一点代码都要编译整个工程,耗时耗力公共资源、业务、模块混在一起耦合度太高不方便测试。由于传统的航空CNI系统设备测试软件普遍存在组件化程度低、复用性差等问题,这些问题一方面增加了软件开发周期,造成了系统集成联试困难,另一方面缺少软件的扩展设计,增加了后期软件维护升级的难度。为了合理解决目前的问题,有必要开发一种CNI系统设备测试软件组件化设计方法,使得CNI综合检测设备软件具有开发调试效率高、高复用性、可复用性、高内聚低耦合性、并行开发性的特点。
技术实现思路
本专利技术的目的是针对传统的航空CNI系统设备测试软件组件化程度低、不易复用的缺点,提出了一种具有高复用性、高内聚低耦合性和并行开发性的航空通信导航识别系统CNI系统设备测试软件组件化设计方法。本专利技术的目的可以通过以下措施来达到。一种CNI系统设备测试软件组件化设计方法,其特征在于包括如下步骤:在组件化程序设计中,基于面向对象,按照模块化把CNI系统设备的各个测试功能划分为对应独立的测试组件,同时设计一个实现对组件的加载、运行、管理的组件化框架,定义CNI综合检测设备测试软件组件与组件框架之间的接口通信规范,形成以组件框架为中心的星型结构,并作为组件通讯的媒介为组件之间提供接口通信服务;根据CNI综合检测设备系统功能,划分出总线组件、公共服务组件、性能测试组件、链路检查组件、功能对通测试组件及其各本文档来自技高网
...

【技术保护点】
1.一种CNI系统设备测试软件组件化设计方法,其特征在于包括如下步骤:在组件化程序设计中,基于面向对象,按照模块化把CNI系统设备的各个测试功能划分为对应独立的测试组件,同时设计一个实现对组件的加载、运行、管理的组件化框架,定义CNI综合检测设备测试软件组件与组件框架之间的接口通信规范,形成以组件框架为中心的星型结构,并作为组件通讯的媒介为组件之间提供接口通信服务;根据CNI综合检测设备系统功能,划分出总线组件、公共服务组件、性能测试组件、链路检查组件、功能对通测试组件及其各组件的对外提供的接口;组件框架动态加载和卸载组件,在组件的生命周期内管理组件,为各组件提供服务接口和服务注册接口,获取并运行组件的控制接口、调度组件运行,控制组件的生命周期;总线组件通过总线数据服务层提供总线服务接口,向业务层中的业务组件和公共服务组件提供总线数据收发服务;公共服务组件通过公共服务层,利用公共服务接口向业务层提供业务组件切换的服务和总线的状态查询服务;性能测试组件、链路检查组件、功能对通测试组件使用通信服务接口和公共服务接口组合,并结合自身的测试业务流程完成自身的测试业务功能。/n

【技术特征摘要】
1.一种CNI系统设备测试软件组件化设计方法,其特征在于包括如下步骤:在组件化程序设计中,基于面向对象,按照模块化把CNI系统设备的各个测试功能划分为对应独立的测试组件,同时设计一个实现对组件的加载、运行、管理的组件化框架,定义CNI综合检测设备测试软件组件与组件框架之间的接口通信规范,形成以组件框架为中心的星型结构,并作为组件通讯的媒介为组件之间提供接口通信服务;根据CNI综合检测设备系统功能,划分出总线组件、公共服务组件、性能测试组件、链路检查组件、功能对通测试组件及其各组件的对外提供的接口;组件框架动态加载和卸载组件,在组件的生命周期内管理组件,为各组件提供服务接口和服务注册接口,获取并运行组件的控制接口、调度组件运行,控制组件的生命周期;总线组件通过总线数据服务层提供总线服务接口,向业务层中的业务组件和公共服务组件提供总线数据收发服务;公共服务组件通过公共服务层,利用公共服务接口向业务层提供业务组件切换的服务和总线的状态查询服务;性能测试组件、链路检查组件、功能对通测试组件使用通信服务接口和公共服务接口组合,并结合自身的测试业务流程完成自身的测试业务功能。


2.按权利要求1所述的CNI系统设备测试软件组件化设计方法,其特征在于:CNI系统设备测试化软件架构分为业务层、公共服务层和总线层,业务层包括:实现软件主要逻辑功能的,对通测试组件、链路检查组件和性能测试组件;公共服务层提供公共服务,响应业务层的公共服务请求;总线层向公共服务层、业务层提供包括UDP通信服务、串口通信服务的数据通信服务。


3.按权利要求1或2所述的CNI系统设备测试软件组件化设计方法,其特征在于:软件的数据流分为发送数据流和接收数据流;业务层组件根据自身业务需求向组件框架请求公共服务接口、总线服务接口,经过业务流程处理后将产生的数据通过总线服务接口将数据流发送给总线组件;总线组件通过UDP或串口将数据分配给对应的总线处理发送,总线组件从总线上接收数据流,接收到数据后通过总线服务接口的回调函数接口,将数据发送给相关的业务层组件和公共服务组件。


4.按权利要求1所述的CNI系统设备测试软件组件化设计方法,其特征在于:组件与组件框架之间的接口通信规范包括:组件框架提供的组件服务注册接口、组件服务注销接口、组件服务释放接口和组件运行控制接口,其中,组件通过服务注册接口向组件框架注册服务;组件也通过组件服务注销接口向组件框架注销自身提供的服务;组件通过组件服务获取接口获取组件框架服务;组件服务释放接口:组件向组件框架释放已获取的其它组件服务;组件框架通过服务释放接口、组件运行控制接口,调度组件运行并控制组件的生命周期。


5.按权利要求1所述的CNI系统设备测试软件组件化设计方法,其特征在于:总线组件通过...

【专利技术属性】
技术研发人员:童大鹏卢阳王东韩奕昕陈雨杜增
申请(专利权)人:西南电子技术研究所中国电子科技集团公司第十研究所
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1