-
0 引言
-
民用飞机系统研制是一项极其复杂的多维度工程[1]。在系统设计方面,需要实现多个子系统、设备、软件的设计、研制、协调和集成以及百万级零部件设计、制造、组装;在团队管理方面,对外需完成原始设备制造商(original equipment manufacturer,简称OEM)、系统供应商/一级供应商(Tier1)、次级供应商(包括子系统供应商Tier2、设备供应商Tier3、模块/软件供应商Tier4、元器件和材料供应商Tier5)的对接,对内需保障系统、设备、软件、集成测试验证、构型、质量、适航等多个团队的沟通协调[1];在工程进度控制方面,为保证输出产品(软件、设备、系统)的可靠性和安全性,在研制过程中软件、设备、系统开发需严格遵循相关的开发规范。以某公司为例,它通过规范将系统开发生命周期划分为策划和计划、需求分析、初步设计、详细设计、集成与测试、符合性验证和适航审定6个阶段,前一个阶段输出产物完备后才能进入下一个研制阶段[2]。
-
从某个维度来说,一个民用飞机系统的研制过程就是一个系统的设计数据库、团队管理数据库、各研制阶段输出数据库有序建立的过程,而一个数据的变更很有可能导致其上下游相关数据的联动变更。民用飞机研制过程中工程数据的大量级、高复杂性和强关联性为数据管理带来了极大的困难,为了提高数据管理效率、确保数据更改的贯彻执行、实现数据状态的有效跟踪,数据管理库已成为业内重要的数据管理手段。
-
本文重点针对民用飞机系统研制过程中典型数据库的管理问题,结合工程经验,开展管理方法研究。
-
1 三种常用管理库
-
1.1 SVN
-
版本控制系统(subversion,简称SVN),用于对随时间改变的文件数据进行管理[2]。SVN将文件放置在一个中央资料档案库中,研发人员需从服务器上获得一份项目的最新版本并复制到本机后,可在客户端进行独立的开发工作,期间研发人员可随时通过将客户端文件上传至服务器实现对服务器文件版本的更新,也可通过下载从服务器上获取最新版本。SVN会记录服务器上每一次文件的变动,并支持将当前文件版本恢复至任一历史版本。
-
SVN具有较高的开放性,它支持对程序源码等任何类型文件进行管理,并可保持所有开发者所使用版本的一致性,因此通常被用作民用飞机系统/设备/软件项目研制中使用的开发库。其中,部分SVN系统输出会面向客户,比如工程协调单(engineering coordination memo,简称ECM)、装箱清单、会议纪要、采购订单(purchase order,简称PO)等不纳入产品数据管理(product data management,简称PDM),但会影响PDM文件的文件。
-
1.2 PDM
-
PDM是一个用来管理所有与产品相关信息和过程的数据管理系统,具备数据管理、构型与配置管理、专业库管理、工作流和过程管理、对象/属性/版本管理等功能,可贯穿产品研制的全生命周期[4]。
-
PDM的本质是建立适应数字化技术应用的飞机产品数据管理与飞机研制过程。因此在PDM系统建立实施过程中,各研制单位需结合自身单位实际情况开展一系列工作[5],比如制定与PDM相关的企业标准、建立企业信息编码系统、建立标准件数据库、完善标准全文检索库、规定签署流程矩阵、制作各设计阶段的图表和文字内容技术文件模板等。
-
PDM系统具有单一数据源特点,因此在飞机系统/设备/软件研制过程中,PDM系统各个研制阶段的输出文件将作为研制单位的正式输出,PDM文件分为三类(提交给客户的文件、供客户或局方审查的文件、内部文件),是适航的证据链和追溯库,是真正意义上的产品开发库。
-
1.3 CQ
-
CQ(ClearQuest)是一种对缺陷和记录的变化进行跟踪管理的工具,具有跟踪灵活、流程自动化、报告和生命周期可跟踪等特点,可以有效保证产品质量,提高项目开发效率,对于各个开发团队之间的合作至关重要。
-
在民用飞机项目研制中,CQ本质上是一个问题库,主要用于研制过程中的问题全生命周期的管理,其输入输出可能会直接影响PDM、SVN状态,比如某些单位PDM工程更改建议(engineering change proposals,简称ECP)的触发需要CQ作为驱动,以避免PDM文件的无序更改。
-
2 SVN开发库使用过程的常见问题
-
SVN作为民用飞机项目研制中使用的常规开发库,主要服务于:
-
1)非系统、设备、软件开发计划中约束的输出产物的管理,比如某算法的仿真模型、ECM、会议纪要、PO等。
-
2)系统、设备、软件开发计划中约束的输出产物(设计文件、图纸、代码等)版本之间的中间态管理,比如某系统需求,版本从D升级到E正式发布前,存在长时间的中间态,需要相关负责人协同更新、确认(一般情况下,系统需求文件版本升级到E后,将纳入PDM,作为基线版本进行管理)。
-
3)协同开发。SVN库支持多个开发者针对同一文件、代码,进行增、删、查、改,可保持所有开发者所使用版本的一致性。
-
一般情况下,SVN开发库的权限将面向项目管理、系统/设备/软件研发、共性、质量/适航/构型等各类人员开放,权限分为无访问权限(No Access)、只读权限(Read Only)、读/写权限(Read/Write)。在读/写权限下,任何数据的上传、下载、修改、删除等操作无需质量、构型、适航、技术经理等人员审批,数据不受控,无法直接作为系统研制中的构型版本纳入基线管理。因此,SVN库通常作为PDM系统构型基线版本产生前的一个过程开发库。随着项目工作推进,SVN很容易出现一系列问题:
-
1)各类数据文件未与SVN路径建立统一归置规则,不同开发者可在不同路径归置同一文件,存在同文件多处重复存放问题。
-
2)SVN权限是针对人员、SVN路径进行分配,无法针对某一文件面向人员进行权限细化管理。通常情况下,某SVN路径下多个开发者均具有读/写权限,在研制过程中存在多个开发者频繁修改、升版的情况,很容易造成文件版本混乱。
-
3)对外缺少文件输出控制、记录,无法确定已向OEM、下级供应商发送了什么文件、已发送的文件版本是什么。
-
4)对内缺少文件输入控制、记录,针对OEM下发的各系列ECM、指导文件以及下级供应商提供的各类开发文件,无法确定目前适用版本。
-
5)缺少产品实物交付控制和记录,对内无法确定下级供应商交付产品状态,对外无法确定面向OEM已交付的实物状态。比如,部分蓝标件交付OEM后,随着时间推移和人员变更,项目团队无法确定已交付实物的状态。
-
3 SVN开发库建设方案建议
-
3.1 常见的PDM文件管理方案
-
PDM是典型的基于系统构型树构建的文件开发库[6],以系统A为例,构型树如图1所示。
-
图1 PDM系统中典型系统构型树
-
一个系统除了设备外,还存在系统软件,所以系统构型树中有单独的系统软件分支,其件号是直接面向客户的。
-
如图1所示,PDM基于A系统构型树,自顶向下按照系统、设备/系统软件、硬件/软件组件、物料等层级[7],基于该公司建立的系统、设备、软件开发规范,对每一个构型项进行了相关信息,包括零件信息、配置、文档、计算机辅助设计(computer aided design,简称CAD)文件、结构、权限信息等及过程(包括过程定义和管理)的全生命周期管理[8]。
-
3.2 SVN开发库建设方案
-
基于PDM数据管控的优点,并结合SVN开发库常见应用场景,提出一种基于输入输出和构型的SVN开发库建设方案,如图2所示。
-
1)主机单位输入/Tier1的输入与Tier1的输出支线,Tier2的输入与Tier2的输出支线,Tier3的输入与Tier3的输出支线,Tier4的输入与Tier4的输出支线分别为一组,在SVN库中管理方法基本一致。基于供应商数量,SVN库中可能存在多组Tier2、Tier3、Tier4支线。
-
图2 基于输入输出和构型的SVN建设方案
-
2)自顶向下,各层级供应商的输入、输出紧密关联,互相影响。以Tier2供应商为例,Tier1供应商的部分输出(①)将作为Tier2供应商的输入,Tier2的部分输出(⑥)将作为Tier1的输入,反馈至Tier1供应商,影响Tier1供应商的输出。
-
3)项目管理、RDV&V(RD:research and development,研发;V&V:verification and validation,检验与确认)支线独立于其他支线,用于保证其他支线工作顺利开展。
-
以图2中主机单位输入/Tier1的输入与Tier1的输出支线组为例,细化后的支线树如图3所示,其中蓝色支线为Tier2供应商的输入。
-
图3中主机单位输入/Tier1的输入与Tier1的输出支线的输入物、输出物关系如表1所示。
-
图3 主机单位输入/Tier1的输入支线图
-
注:1)上表中*标识输出为Tier2供应商的输入;#标识输出为Tier1供应商的输出的反馈。
-
2)GTS(General Technical Specification,通用技术规范),TRD(Technical Requirement Document,技术需求文件),SOW(Statement of Work,工作说明书)。
-
3.3 SVN开发库建设的几个要点
-
1)针对系统开发的输入、输出相关方分别建立管理支线,严格把控输入、输出。以A公司(Tier2供应商)为例,常见相关方如表2所示。
-
2)系统开发过程和研发(research and development,简称RD)、检验与确认(verification and validation,简称V&V)环境建设需分别建立支线,分开管控。
-
3)在系统开发过程管控[9]中,基于构型的设备和软件开发需分别建立支线,分开管控。若某软件功能归属某设备功能,则该软件和该设备可在同一支线进行合并管控。
-
3.4 SVN开发库管理的几个要点
-
1)SVN与PDM关联管理:
-
(1)所有进入PDM的文件需来自SVN。根据ARP4754要求,当SVN中文件状态阶段性固化时,将由文件负责人负责上传至PDM,纳入PDM由构型专员进行单独管控[10]。
-
(2)针对部分下级供应商交付文档,如有需要进入PDM时,需要转化成该公司的内部文档再进入PDM。
-
2)输出文件管理
-
(1)建立主机单位/上级系统单位输出文件记录表。所有输出文档需要在Excel中记录,记录信息至少包含输出文件的名称、版本、时间、输出原因、文件来源(PDM/SVN)及接收单位、接收人员。
-
(2)主机单位/上级系统单位输出文件记录表需要专人进行维护。
-
(3)输出给主机单位/上级系统单位的文件必须来自SVN和PDM,不能来自个人电脑。针对同时纳入PDM、SVN管控的文件,优先选择PDM文件输出;针对不纳入PDM管控的文件进行输出时,选择来自SVN管控的文件。
-
3)实物交付管理
-
(1)建立主机单位/上级系统单位实物交付记录表。所有交付实物需要在Excel中记录,记录信息至少包含交付实物的名称、状态(原理样机/蓝标件/红标件/黑标件[11]等)、时间、交付原因及接收单位、接收人员。
-
(2)每次交付实物时,实物图片、发出实物包装照片、验收测试计划(acceptance test plan,简称ATP)和验收测试报告(acceptance test report,简称ATR)等需归档至SVN,与主机单位/上级系统单位实物交付记录表建立对应关系。
-
4 结论
-
文章通过提炼总结PDM开发库在民用飞机系统管理中的优点,并结合民用飞机航电系统研发流程及项目管理工程经验,介绍了开发库在典型民用飞机航电系统全生命周期发挥的作用,进一步强调了SVN开发库建设和管理在民用飞机研制过程的重要性,提出了一套典型的SVN开发库建设和管理方法,对工程应用有一定的参考意义。
-
SVN库建设与管理过程中需要重点关注的要点如下:
-
1)SVN开发库需基于系统构型划分、研制单位输入输出情况进行建设;
-
2)SVN开发库需与PDM库建立文件管理强关联关系;
-
3)SVN开发库需针对对外交付的文件、实物等输出物的状态进行严格控制。
-
参考文献
-
[1] 赵书凯,刘艳超,马帅.民用飞机构型控制与更改管理研究[J].航空制造技术,2015(3):102-106.
-
[2] 刘冰.基于系统工程的民用飞机研制阶段数据管理研究[J].航空科学技术,2016,27(5):51-54.
-
[3] 高平,周磊.版本控制系统—Subversion技术及其在软件开发库的应用[J].航空电子技术,2013,44(1):24-28.
-
[4] 王文涛,陆际光.基于协同工作的PDM项目开发平台模型[J].计算机工程与应用,2001(15):123-125.
-
[5] 金兵.飞机研制PDM实施与研究[J].信息化建设,2016(3):405.
-
[6] 贺璐,许松林,杨道文.飞机构型管理中的产品结构分解研究[J].民用飞机设计与研究,2010(3):34-36;41.
-
[7] 童秉枢,李建明.产品数据管理(PDM)技术[M].德国:施普林格出版社,2000.
-
[8] 洪杰.飞机数字化制造方式研究与实践[C]//中国航空学会.2011年飞机数字化制造技术学术会议——大飞机工程与数字化制造.[S.l.:s.n.],2011:25-26.
-
[9] 徐敏,王鸿鑫,张建波,等.民用飞机构型管理及更改控制研究[J].项目管理技术,2016,14(2):99-103.
-
[10] 陈娟,蔡建丽,王咏梅.民用飞机供应商构型管理技术研究与应用[J].航空维修与工程,2014(3):85-88.
-
[11] 冯青霞,杨栓宝.民用飞机构型管理过程与SAE ARP 4754A的符合性技术研究[J].航空科学技术,2017,28(9):1-4.
-
摘要
SVN开发库是民用飞机研制全生命周期过程中用于数据、工作流、研制过程、对象/属性/版本等内容管理的常用手段,好的开发库建设与管理方案不仅可确保项目数据更改的贯彻执行、实现数据状态的有效跟踪,还可确保飞机系统设计数据库、团队管理数据库、各研制阶段输出数据库的有序建立和紧密关联,有效提高项目数据管理效率。通过分析民用飞机研制过程中原始设备制造商、系统供应商/一级供应商、次级供应商等各层级供应商的SVN库使用场景,提取SVN库在日常使用时常见的问题,并结合PDM、CQ等其他开发库的典型工作模式及管理方案,给出了一种基于项目输入输出情况和系统实际构型划分的民机系统典型SVN库建设、管理建议方案,并依托项目研制经验明确了SVN库建设与管理过程中需要重点关注的一些要点。
Abstract
The SVN development library is a common means for content management such as data, workflow, development process, objects/attributes/versions, etc. in the whole life cycle of civil aircraft development. A good development library construction and management scheme can not only ensure the implementation of data changes and the effective tracking of data status, but also realize the orderly establishment and close correlation of aircraft system design database, team management database and output database in each development stage, so as to effectively improve the efficiency of data management. By analyzing the use scenarios of SVN library of original equipment manufacturers, system suppliers/primary suppliers, sub suppliers and other suppliers at all levels in the process of civil aircraft development, extracting the common problems of SVN library in daily use, combined with the typical working modes and management scheme of other common development libraries, such as PDM and CQ, this paper gives a proposal for the construction and management of typical SVN library of civil aircraft system based on project input-output and actual system configuration division. Otherwise, this paper also defines some key points that need to be focused on during the process of SVN library construction and management.
关键词
版本控制系统(SVN) ; 开发库 ; 管理 ; 输入输出 ; 构型
Keywords
subversion(SVN) ; development library ; management ; input-output ; configuration