吴晶峰,陈义成,王 伟
(1.中国民用航空适航审定中心,北京 100102;2.中国民航大学天津市民用航空器适航与维修重点实验室,天津 300300)
航空发动机作为一类典型的复杂产品,与国家的工业基础密切相关,被誉为“工业上的明珠”,其研制周期、研制难度都是其他产品无法比拟的[1]。“需求管理”在航空发动机产品研制中十分关键,目的是研制出真正满足客户需要的航空发动机。航空发动机研制周期长,如何评估某个变更对整个发动机及其相关系统的影响尤为重要,虽然可以通过需求跟踪视图来帮助相关责任人评估需求变更的关联性及影响,控制并记录发动机每个需求的变更过程[2-3],但该方式同研制周期同步,因此,急需开展评估方法的仿真研究。
近年来,国外学者在需求变更实证方面开展了大量工作。Blessing 等[4]研究了设计人员在设计活动中识别、生成和应用需求的过程和方法。Bergsjö 等[5]描述了汽车行业在需求管理实践中出现的具体问题。Sudin等[6-7]调查了航空发动机设计更改和设计错误修改的发生阶段,并调研产品开发公司的案例,对实际中影响需求变更的决策和组织因素进行了定性研究。Pikosz[8]研究了汽车行业中嵌入式系统开发需求管理的使用问题。
目前,国内在航空需求管理流程和数据库方面开展了一些研究工作,如:季建琴[9]、郭博智等[10]、董亮等[11]、田彬[12]论述了基于系统工程V 模型的飞机需求管理过程、需求信息架构设计、需求层级及需求分解演变过程;王焕青[13]、王瑾等[14]、周璇等[15]论述了飞机需求变更管理技术;陈重阳等[16]讨论了海军装备发展作战需求生成流程和机制;郑占君等[17]提出了基于DOORS(dynamic object oriented requirment system)的飞机设计需求数据管理方案;董亮等[18]阐述了航空产品研制条目化需求管理的关键技术并介绍了几款需求管理工具的特点;罗婷婷[19]阐述了商用航空发动机需求管理及其系统构建方法;史妍妍等[20]提出了基于产品分解结构的航空发动机需求管理模型及其一般流程。
目前,从航空发动机设计的角度,以需求工程和管理为主的仿真实证和应用研究还相对薄弱,为此,基于系统工程需求变更过程的主要内容,对比分析基于活动的模型和基于Agent 的模型,探索一种适合航空发动机研制的需求变更模型,并以Excel 为工具初步建立适于航空发动机组织结构的需求变更Agent 模型,展示该模型用于需求变更影响下的设计质量、研发风险等方面研究。
在项目管理过程中难免会碰到需求变更的情况,会对项目范围、项目进度、项目质量、项目成本、开发人员的心理、用户满意度、代码与文档的吻合度等方面产生一定的影响,因此,对需求变更要有一定的管理策略。变更管理的规范主要包含以下几个步骤:
第1步识别变更;
第2步对变更进行详细的分析,分析变更的合理性和紧迫程度及其对项目产生的影响,如是否会影响项目进度、是否会加大项目投入等;
第3步提出正式的书面变更申请;
第4步审批,确定变更是否通过;
第5步如果审批通过,那么应当详细记录变更。
需求变更的可追溯性非常重要,可以监控变更执行情况,防止与用户之间的纠纷。要做到可追溯性,需求变更的记录就需要非常详细,应当记录变更缘由、变更日期、变更前后的需求内容等,这样才能使项目更可控。另外需求追溯记录内容不可过细,否则,一方面会使需求追溯耗费巨大的时间成本,另一方面也会让需求追溯数据量变大而难以维护。
此外,项目需求文档的格式和详细程度也对需求变更的管理和记录有一定影响。虽然可追溯性不是决定需求文档编制的主要因素,但是结构好的需求文档更容易支持需求变更的可追溯性。
结合通用需求变更流程,可将民用航空发动机需求变更分为需求变更申请(RCR,requirements change request)子流程和需求变更建议(RCP,requirements change proposal)子流程两个部分。RCR 子流程用于评估需求是否需要更改,并对更改进行评估;RCP 子流程用于对已经批准的RCR 进行更改,确认需求更改执行结果。
航空发动机需求按照分层、分级的原则进行条目化、结构化管理,因此,需求变更也据此分类管理。涉及顶层的需求变更需要得到客户的批准和确认,如果需求变更影响其他同层子系统需求更改,需要相应子系统负责人会签。
RCR 子流程如图1所示。首先,需求变更申请人提出需求变更申请;然后,批准人员对需求变更申请进行批准;一旦批准人员同意需求变更申请,构型管理办公室(CMO,Configuration Management Office)组织对需求变更进行评估,识别受需求变更影响的相关人,对需求变更进行需求变更影响分析,对需求变更申请进行确认;最后,构型管理委员会(CCB,Configuration Control Board)核准需求变更申请。
图1 需求变更申请子流程Fig.1 Sub-process of RCR
RCP 子流程如图2所示。由需求模块负责人基于需求变更申请创建相应的需求变更建议,校对人员、审核人员对需求变更的正确性、完整性进行检查,根据检查结果修改需求变更建议,批准人员批准后,完成需求变更。
图2 需求变更建议子流程Fig.2 Sub-process of RCP
由于需求变更伴随项目生命周期的全过程,需求变更模型应考虑航空发动机需求管理流程中的设计活动及其中的数据交换。
航空发动机的研制是一项复杂的系统工程。已有的分析结果表明,需求变更主要发生在航空发动机型号研制的初期阶段,其简化的初步设计流程如图3所示。
图3 航空发动机初步设计流程Fig.3 Preliminary design process of aero-engine
在此设计流程中:①客户经过市场调研、对比等确定航空发动机的性能指标要求,如推力、耗油率、重量等,并将此要求下达给设计团队或供应商;②设计团队或供应商先由系统团队进行热力学等分析,确定部件的设计指标,并进行需求分析和需求确认;③系统团队既要给部件团队下达设计要求,又要给客户反馈方案评估结果;④部件团队一般有多个,包括气动、结构等,相互协作开展工作,并需要与设计团队进行多轮反馈;⑤在一个具体型号研制初期,客户、设计团队要经过多轮迭代最终确定初步方案,设计团队要在客户的要求时限内完成多轮反复工作;⑥由于市场的波动,市场决定的客户需求参数常常会发生变更,从而导致需求变更,此时会更新下达给设计团队设计指标,导致设计方案需进一步修改,会带来时间、成本等方面的改变。
在基于活动的需求变更建模中,可将航空发动机初步设计阶段的具体活动作为信息处理的需求单元,如图4所示。
图4 典型需求管理流程Fig.4 Typical demand management processes
基于活动的模型优缺点如表1所示。
表1 基于活动的模型优缺点总结Tab.1 Summary of the advantages and disadvantages of the activity-based model
考虑基于活动的模型难以捕捉早期循环,难以考虑各部分协作,难以实现自适应,难以考虑并发性等问题,提出采用基于Agent 的模型建立航空发动机初步设计流程并考虑需求变更影响。
文献中已经开展的一些Agent 模型多基于已有的平台建立,如Fernandes 提出的Agent 模型AMPERE(agent model for planning and research of early design),是基于Gregori 在2006年开发的SPADE(smart Phython multi-agent development environment)平台开展的。SPADE 是已经发展多年的项目管理平台,主要包括Agent 类、ACL 信息交换类、行为类等主要组成部分。AMPERE 即是在此平台上修改,同时考虑不确定性、迭代、各部分协作及自适应等问题。
由于无法获得相关平台,以Excel 为工具,借鉴图5所示的定义和动作进行复现:①客户先期开展市场调研确定设计需求,同时考虑市场波动,及时变更需求;②客户Agent 模型负责确定需求,提出预期设计质量,确定单轮方案返回时间,定期接收设计团队返回结果并加以确认;③设计团队有项目主管、初步设计和详细设计3 层Agent 结构组成,初步设计又包括一个气动初步设计人员Agent 模型和一个结构初步设计人员Agent 模型,同时与一个详细设计人员Agent 模型相互协调工作,共同返回设计方案给项目主管。具体内容如表2所示。
图5 Agent 模型定义和动作Fig.5 Definition and actions of Agent model
表2 初步Agent 模型Tab.2 A preliminary Agent model
资深和具体设计人员开展具体设计工作时,可用量化的设计质量参数表征设计方案与预期方案的符合程度。在遇到初始需求变更时,初始设计质量可能突然变差,但经多轮需求变更迭代后设计方案则可达到符合预期的设计质量。设计质量的第i次迭代过程可表示为
式中:α是相关系数;Qi-1是第i-1 次迭代设计质量;Qs是预期设计质量,一般为1.0。
同样,第i次迭代过程对最终任务完成时间影响可表示为
式中:β是设计任务预定模拟时间的相对三角概率分布,一般为0.8、1.2、1.0;Di-1是第i-1 次迭代设计持续时间;Ds是预期设计迭代持续时间。
最终方案是由各部门和团队协作完成,因此,应该考虑各部门和团队之间的合作效率和能力来分析对最终设计质量影响。最终设计质量可表示为
式中:M是各部门和团队总数;Wj是j部门对最终设计质量的贡献权重;Qj是j部门的设计质量。
结合项目主管Agent 模型,风险评估的概率和影响可表示为
式中:Rrisk是风险因子;Pprob是风险概率;Iimpact是风险影响;c1、c2是常数系数;m是权重系数;t是模拟过程中Agent 反馈状态的时间;Qgap是实际与预期设计质量的差值;Tdeadline是截止时间;QTol是质量阈值。
3.2.1 参数设定
通过设定一个具体需求变更场景,分析需求变更对设计质量影响的定量变化过程,从而研究需求变更触发后的具体设计活动对设计质量的动态影响程度,为优化需求变更设计活动提供基础。由于市场环境波动,导致某客户一个需求对某一个供应商产生变更,该场景下其初始参数可按照如下方式进行设定。
市场环境波动随机产生,在10 ~20 d 内周期性变化。客户Agent 模型要求设计团队每4 周迭代更新设计方案。设计团队Agent 模型希望经过几轮迭代后所提方案达到客户要求,其内部每周迭代更新设计方案。设计团队由项目主管、气动和结构初步设计人员、详细设计人员组成,对应形成Agent 模型各一个,具体输入参数如表3所示。
表3 输入参数Tab.3 The input parameters
3.2.2 不同层级模型设计质量评估
图6 给出了Agent 模型估计的、能够满足客户设计质量要求的进度情况。由图6 可知,在当前研制需求和输入参数条件下,若要满足期望设计质量,至少需要15 周的时间,根据客户提出的4 周一个设计方案时间估算,需进行4 轮主要的迭代,而设计团队内部每周进行迭代次数更多。
图6 不同阶段设计质量随周数变化分析Fig.6 Analysis of design quality based on number of weeks
对于市场波动引起的需求变更,设计质量的变化程度如图7所示。方案设计初步确定后第20 周遭遇需要变更场景,此时,已有方案设计质量偏离新需求设计质量要求约0.2,触发重新迭代设计,结果总设计周期近40 周,约为原设计周期的2 倍。由此可知,需求变更幅度虽小,最终方案设计周期则可能翻倍。
图7 市场波动的需求变更对设计质量影响Fig.7 Effect of demand change analysis on design quality
3.2.3 风险评估
结合式(4)~(6)风险评估方法,对项目主管在与客户沟通迭代方案期间的风险进行评估,如图8所示。在方案设计的初期,由于各种不确定因素,风险较高;随着多轮迭代,风险逐渐减小,达到稳定状态。当产生了需求变更后,设计方案风险增加,需要更多轮设计迭代以消除相关风险。
图8 有无需求变更对风险评估影响Fig.8 Impact of demand changes on risk assessment
(1)结合航空发动机组织结构,借助需求变更定量表征,通过Agent 模型可以刻画需求变更对设计质量、设计周期、设计风险的动态影响。
(2)市场波动引起的需求变更对设计周期影响很大,在需求管理中应予以重点关注。
(3)该Agent 模型中设计质量相关系数和设计周期系数等参数简化设置为常数,后期应考虑项目主管、气动初步设计人员、结构初步设计人员、详细设计人员的具体设计活动刻画,将该参数作为变量,可更准确地反映需求变更的影响。