■ 汪腾 王寿菊 李金刚 张彪/中国航发研究院
方法工具的信息化实现是将研发过程中使用的各种方法工具进行抽象、封装与集成,提供统一的、可灵活调用且简单易用的工具模板、文档模板和集成软件。
在航空发动机研制过程中,各单位积累了大量的研发方法工具,但都具有个性化强、非标准化、孤立程度高以及专业程度高等特点,主要表现在:方法工具信息化建设和应用缺乏体系化的软件开发原则、使用要求、封装规范与指引;不同的方法工具存在数据孤立程度高、数据格式不统一、数据不贯通;商业软件使用门槛高、使用人员培养困难、软件应用不便捷。因此亟需开展方法工具要素的信息化实现技术研究,对已积累的方法工具进行封装,形成研发工具模板,加强研发工具的统一。
图1 方法工具要素信息化实现技术架构
方法工具信息化实现的运行逻辑是基于集成工作环境中的组件库和图形化的流程定制工具,进行研发工具的封装。首先,结合方法工具信息化业务需求与现有的方法工具的功能和特点,在遵循模型、视图和控制器(MVC)软件设计模式和软件使用要求的同时,制定方法工具信息化开发应遵循的程序开发要求和图形用户界面(GUI)设计规范,使集成后的方法工具能满足在国产化软硬件环境中规范化、定制化和易迁移的组件模块化高效部署需求;其次,通过组件技术、脚本技术和动态链接库(DLL)等信息化技术,根据具体研发活动所涉及的方法工具功能和特点,选择相适应的信息化技术进行封装;最后,将实际业务需求与选取的信息化技术结合,进一步完善包括商业软件封装和自研程序在内的方法工具的封装,完成面向发动机总体、压气机、燃烧室、涡轮、传动系统和控制系统等不同专业领域工具模板、文档模板的封装和研发软件的集成。
方法工具集成工作环境包括组件库和图形化的流程定制工具。
工程设计过程中往往包含一系列的基础性、普遍性操作,这些操作构成了各种设计、分析工作的最小单元,即组件。以数据处理组件为例,对流程中数据相关的内容进行集成封装,支持从定义好的Word、Excel等文件中抽取结构化的数据或将平台数据写入定义好的Word、Excel文件中。
图形化的流程定制工具涉及控制流、数据流等内容。控制流是指按一定的顺序排列研发过程的方法工具,以此控制方法工具的执行的顺序,如图2所示。数据流是指在定义了研发活动流程的节点上,方法工具之间的数据传递关系,如图3所示。
图2 控制流
图3 数据流
航空发动机研发过程涉及大量的研发方法和工具,其封装主要包括方法工具封装规范、方法工具封装技术和方法工具封装设计。
为了保证方法工具有效地集成到工作环境中,其编写、封装和开发需要满足一定的规范和要求。常用的规范和要求为MVC设计模式,即把软件系统分为模型(M)、视图(V)和控制器(C)3个基本部分,如图4所示。MVC模式的目的是实现一种动态的研发方法工具设计,简化后续对研发方法工具的修改和扩展,使研发方法工具程序某一部分的重复利用成为可能。
图4 软件MVC设计模式
一些方法工具专业软件在研发过程中,使用商业软件或在商业软件基础上进行二次开发时,应遵循以下要求:当采用商业软件支持专业软件开发时,须进行商业软件的使用说明;所选择的商业软件的运行不能影响研发平台和其他专业软件的运行。
方法工具封装技术涵盖了航空发动机研制过程中使用的方法、工具和程序的封装,其使用的技术包括组件技术、脚本技术和动态链接库等。
组件是对方法、工具和数据的简单封装。组件技术是指将复杂的应用软件拆分成一系列软件单元,即组件,这些组件具有通用性强、易于开发、理解和调整等特征,应用程序则由可重用的组件来构造。
脚本是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,用来控制软件应用程序,脚本通常是以文本保存,只在被调用时进行解释或者编译。在开发工具模板的过程中,有时候会遇到用集成开发环境难以实现的功能,如动态解析、生成文件等,此时需要通过脚本文件来帮助实现。此外,在进行脚本文件编写过程中需遵循脚本文件编写规范。
动态链接库是实现共享函数库概念的一种方式。Windows系统中,DLL多数情况下是带有“.dll”扩展名的文件,但也可能是“.ocx”或其他扩展名;Linux系统中常常是“.so”的文件。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
航空发动机研发过程中的方法、工具、程序和软件等通过有效的封装和集成,可形成一系列标准化的、可重用的方法工具模板。通过组件技术对计算机辅助设计(CAD)功能进行封装,可实现建模、替换、编辑、加载、装配等功能。自研程序的封装包括但不限于封装基于Windows、DOS、Linux、Unix等系统环境的自研程序,同时还需支持国产化软件工具,形成工程设计模板。
基于以上方法工具信息化实现架构的研究,结合产品研发信息化平台建设情况,以航空发动机研发过程中涉及的工具模板、文档模板的封装和研发软件的集成进行方法工具封装与集成的应用验证。
通过系统提供的配置功能,可以方便地把设计分析模板、设计分析流程配置成专业软件包的功能模块,以及配置专业软件包的界面、菜单等,实现个性化的定制和面向专业的集成应用环境。
研发工具模板是按照航空发动机的类别管理发动机研发的工具模板,可以实现版本与权限管理,研发工具模板也可直接在任务中进行应用和实例化,可以将研制过程中的方法、工具、经验封装到工具模板中。研发工具模板库可用于创建包括但不限于封装总体、压气机、燃烧室、涡轮、传动系统、控制系统等航空发动机各主要部件的研发工具模板。典型的基于UG组件的发动机设计如图5所示。
图5 基于UG组件的发动机设计
以航空发动机的系统设计为例,各专业所封装的工具模板及对应的工具软件与模板类型清单见表1。
表1 按专业分类的工具模板封装部分示例
方法工具信息化实现技术为航空发动机研发过程的信息化平台建设提供了可行的、有效的支持,在一定程度上解决了不同方法工具所产生数据格式不统一、数据交互不畅的问题,降低了软件使用难度,提高了研发人员的工作效率。