刘秀文,杨永华
(1.中国电子科技集团公司第五十四研究所,河北石家庄050081;2.总参五十四所,北京100191)
C4ISR是涉及到指挥控制、情报侦察、预警探测、通信导航、电子对抗、综合保障以及作战人员等多要素的复杂电子信息系统。由于系统组成复杂、设备异构、分布广域、系统间信息交互频繁等特点,对系统的实时性、互操作性、协同性和可靠性等提出了更高的要求,导致系统设计和开发成为一项艰巨的任务。
在C4ISR系统设计和开发过程中,体系结构起着重要作用,它是保障系统之间可集成和可互操作的关键,也是系统顶层设计与开发的有效方法和指导系统进行演化的有效途径。体系结构技术和方法已经成为美军作战概念研究、体系构建、系统分析、设计、验证、能力评估和采办决策等重要手段,有力支持了军队转型和信息化装备体系的建设[1]。
体系结构是系统各部件的结构、它们之间的关系以及制约它们设计和随时间演化的原则和指南。综合电子信息体系结构是一个抽象的概念,一个特定电子信息系统的体系结构需要通过它的体系结构描述才能表现出来并为人所知。
体系结构框架是综合电子信息系统体系结构描述的规范,为理解、比较和集成体系结构提供统一标准。美军从1996年开始相继制定了多个版本的C4ISR体系结构框架和美国国防部(Department of Defense,DOD)体系结构框架,推出了综合电子信息系统一体化技术体系结构,定义了综合电子信息系统技术参考模型和各层采用协议标准[2]。
大型综合电子信息系统研制是一项规模庞大的系统工程,具有以下特点:
① 接入的情报信源多,来自陆、海、空、天、电多种传感器,种类繁多、数据量大;
②情报处理差异性大,既有实时性的以雷达航迹为主的态势情报处理,也有以图像和文字情报为主的目标情报处理和情报整编处理;
③不同形式情报信息关联性强,态势情报、目标情报和动向情报虽然处理模型各异,但在情报内容上有关联性,需要信息共享和综合印证;
④需要充分兼容已有系统成果,导致系统在操作系统(Linux,Windows)、平台与程序语言方面(VC,Java,C 等)存在着多样性。
因此系统软件架构设计技术是系统研制首先要解决的关键技术,需要搭建一个兼容性、开放性的系统平台架构,以解决系统在需求变化适应性、异类信息处理耦合性、信息共享便捷性以及软件部署灵活性等技术难题,提高系统的可靠性和扩展性。
针对系统设计所面临的问题,采用分层与面向服务的体系结构(Service-Oriented Architecture,SOA)相结合的体系结构,以解决系统中在操作系统、平台与程序语言方面的跨平台调用等兼容性问题和系统集成问题;采用工作流中间件技术、持久化访问技术,以应对用户业务流程的可变性问题;采用持久化访问技术以及基于消息中间件的订制/推送技术,以解决不同形式情报信息的共享与异类信息处理之间的松耦合问题。
情报应用层处于模型的顶层,实现系统客户与系统交互,系统中大部分功能由情报应用层来体现。情报应用层存在2类构件:①用户业务处理界面,包括一些窗体,接收用户输入,并从业务服务子层提取信息,将信息以各种方式展现;②用于维护某些处理过程的用户信息的构件,以及工具类构件,如数据库管理、系统管理等。
服务层中的业务服务子层集中了系统各种业务服务逻辑,包括态势、情报整编应用和接收分发应用,处理系统中各类业务规则。系统中大部分对处理能力的要求及其他非功能性的要求均由该层实现。该层接收情报应用层发来的请求,按照确定的业务规则,由相应的服务构件进行处理,并将结果提交情报应用层;负责本系统与外系统的接口,完成与外部系统的交互。
服务层中的基础服务子层提供了对系统中基础服务的支持,包括地理信息系统服务、通信服务、文电服务和密码服务等。
服务层中的核心服务子层提供了工作流管理、公共订制推送和持久化对象访问服务。工作流管理中的工作流引擎用以维持整个系统级的业务流程运行;订制/公用信息推送中的信息发布服务/数据搜索为各业务分系统共享其他分系统业务数据及基础情报数据提供了实现机制;持久化对象访问服务为系统中各个应用(程序)访问系统的数据库数据及其他文件数据提供实现机制。
数据资源层包括系统的各种业务数据与工作数据,还隐含包括了数据库管理系统及其访问接口。
在对用户需求进行详细分析、试验验证的基础上,采用基于核心服务引擎的分层体系结构与SOA相结合的软件体系结构作为设计和实现系统的指导思想,如图1所示。开放的SOA架构一方面可以屏蔽不同开发商采用不同开发语言,实现业务服务和数据服务的统一调用和系统集成,另一方面能更好地将不同系统提供的业务服务进行管理。
图1 系统软件体系架构
系统选用IBM的 WebsphereND、InforBus/Q来构建系统的SOA架构,以实现态势、整编、目标各主要应用分系统之间数据共享模式的统一和业务服务的统一组织调度。
WebsphereND的负载均衡能力允许在同一时刻有多个实例运行,处理并发用户请求。系统开发之初就考虑了组件的重用,因此,无论Java、.Net或打包应用都可以通过web服务进行服务的组织和调度,实现了系统的协同工作,使其达到复用度高和扩充性好,并尽可能利用已有资源的目的。采用消息总线InforBus/Q实现内部的消息交换,实时态势订制推送服务负责消息推送方和订制方的注册、订单管理和在线离线管理。
设计了面向情报处理业务的工作流管理软件,主要目标是对侦察指控、情报加工、情报分发以及其组合的业务过程中各步骤(或称活动、环节)发生的先后次序及各步骤相关的相应人力或信息资源的调用等进行管理。可以根据用户的需求,随时通过修改流程模板来实现定制,无需修改业务软件,提高应用系统的灵活性和伸缩性,从而实现业务过程设计的自动化。工作流管理原理图如图2所示。首先根据业务需要进行可视化工作流程设计,将设计好的流程导入工作流引擎,应用程序通过调用工作流引擎进行相应的业务处理。业务流程管理软件作为独立的软件部署在各业务处理席位上,能够使业务过程按照流程模版自动执行[3]。
图2 工作流管理原理
为了解决数据库结构变化的适应性问题,采用数据持久化方法,将对数据表的操作映射为对业务对象的操作,消除了应用程序和数据库表结构的紧耦合。持久化访问客户端负责为其他业务应用程序组件提供对象访问接口,包括:存储、增加、删除、修改和查询获取,以中间件方式提供给各个业务分系统调用,接收各业务应用程序组件提出的对象请求,并通过软件总线提交持久化访问服务端。持久化访问服务是持久化访问子系统的核心,通过数据字典和对象映射规则库实现对象关系映射的持久机制,执行实际的关系数据库操作,实现对象的存储、删除、修改和查询获取功能,根据请求完成对象的访问操作,并将处理结果集通过软件总线递交给持久化访问客户端,由持久化访问客户端返回给提交请求的业务应用程序组件[4]。持久化对象访问构件体系结构如图3所示。
图3 持久化对象访问构件体系结构
在多用户并发访问时,若将持久化服务部署在单一服务节点上,当用户达到一定数量时,该服务节点成为系统的瓶颈,而且若该服务器宕机,系统就陷于瘫痪状态。为了减少单一服务器的负载,同时减少服务器宕机引起的损失,将持久化服务部署到多个服务器上,以提高系统的可靠性。同时引入集群负载均衡机制,使得各处理节点在处理任务的过程中均衡地负载,当负载较重时,可以随时增加节点,将用户的调用请求分发到其他节点上,提高系统的可靠性,缩短系统的响应时间。
针对系统的多平台、多语言、消息主题的种类多且信息交互复杂、系统部署可能动态调整等特性,设计了订制/推送软件,解决应用之间的消息通知与消息传递[5]。
订制/推送系统是要把推送者发布的消息正确地推送到对这个消息感兴趣的所有的客户端即订制这个消息的客户端。订制/推送软件通过订制服务端接收各个应用程序的信息订制要求,并按照要求将满足订制要求的数据库变化消息按照某种格式推送给订制客户端。通过订制/推送软件,减少了各应用程序之间的耦合,某一应用程序可以近实时获得其他应用程序产生的最新数据,以供关联分析;不需要定时去检查主题的更新,相关主题就可以推送到主题的订制方,其工作原理如图4所示。
由于系统软件使用的开发语言、运行平台各不相同,为了解决消息的异构传输以及传统点对点通信的复杂配置问题,采用消息总线技术。消息的发布方和消费者都注册于消息总线上,消息按需分发,提供java版和com版2类客户端开发包,以解决跨平台、跨语言调用问题。
图4 信息订制 /推送工作原理
通过系统运行,证明系统在软件体系架构上的设计是成功的,克服了传统C/S架构的种种缺点,是对大型复杂综合电子信息系统新体系架构的一种探索和验证。通过设计基于核心服务引擎的分层与SOA相结合的软件体系结构,搭建了兼容性、开放性的系统平台架构,可支持各种操作系统、平台与程序语言,实现了应用之间以及应用与数据之间的松耦合[6]。工作流管理能够支持各种业务流程自动化,且能够通过改变流程模板以灵活、方便地支持新的业务流程,实现了对用户业务流程变化的适应性。基于集群计算的异构情报数据持久化访问技术,将对数据库的操作转换为对持久化对象的操作,实现了业务应用与数据访问的松耦合。消息的订制 /推送机制,实现了各应用程序之间的信息按需订制与推送,以及不同情报处理业务之间的信息共享。消息的发布方和接收方可以随时增减,即插即用,系统部署的灵活性大大提高。
[1]伍江华,张仁茹.C4ISR系统体系结构及其关键技术[J].舰船科学技术,2011,33(6):34 - 37.
[2]陆 敏,黄湘鹏,施未来.军事信息系统体系结构框架研究进展[J].通信技术,2011,44(3):77-79.
[3]张敏辉.SOA架构的工作流管理系统的研究与应用[J].计算技术与自动化,2012,31(1):126 -128.
[4]李彦平.基于SOA的持久化对象访问技术研究[J].无线电工程,2009,39(7):26-28.
[5]范喜全,何明利,匡镜明[J].计算机工程与设计,2006,27(24):4 720 -4 723.
[6]曹星平.军事信息系统体系结构框架制定方法[J].火力与指挥控制,2011,36(1):29 -32.