公务员期刊网 论文中心 正文

航天器软件工程化管理方法研究

航天器软件工程化管理方法研究

摘要:航天器中的嵌入式软件承担着计算、控制、通信等重要功能。软件产品的质量对于航天器飞行任务的圆满完成至关重要,这就要求在航天器软件工程化过程中实施风险管理,确保软件产品质量受控。回顾交会对接任务阶段载人航天器系统将风险管理与软件工程化进行系统融合的有益实践,总结目前载人航天器软件系统研制工作的风险点以及控制情况;针对识别出的软件全生命周期的风险点或薄弱环节,提出切合实际和有效的控制措施与方法,以及后续需要进一步持续改进的思路。该方法将风险管理与软件工程化和产品保证进行融合,可为航天器软件项目风险管理、切实提升各环节风险管控的实际效果提供参考。

关键词:航天器;风险分析与控制;软件

1载人航天器软件项目风险管理实践回顾

不论是执行我国首次交会对接任务的“天宫一号”目标飞行器和“神舟八号”载人飞船,还是未来能够开展近地空间组装建造和运营、支持长期载人飞行、具备在轨开展空间技术试验的空间站,载人航天器软件都具有技术难度大、研制周期长等特点。针对以上特点,在交会对接任务阶段,载人航天器系统注重切合工程实际,运用风险分析与控制方法,致力于软件工程化的精细度和实际效果的提升,进而更有效地规避或降低软件(含FPGA等可编程器件代码,下同)研制中的技术、质量和进度风险,保证产品质量满足要求。载人航天器软件研制的风险管理依据《风险管理原则与实施指南》(GB/T24353—2009)和《装备研制风险分析》(GJB5852—2006)等标准和上级要求,与型号系统风险管理工作同步开展。风险分析与控制对策制定的风险控制关键节点包括:初样阶段初期、初样转正样、执行飞行任务前。

1.1初样阶段初期风险分析与控制对策

初样阶段初期,软件工程化研制并行于型号研制,基于航天器飞行任务要求、软件产品成熟度以及现有的软件工程化技术和管理能力,航天器系统应针对软件全生命周期中内部和外部两个方面进行全面的风险识别与分析。

1.2初样转正样风险分析与控制对策

应在型号正样阶段进行风险再识别、再分析,此时的风险分析工作应在初样阶段软件验收和软件系统研制总结的基础上,对正样研制阶段系统和分系统迭代设计过程带来的新增或完善性软件需求进行综合分析,总结初样阶段软件工程化实施过程的不足和研制短线,制定风险控制措施。

1.3飞行任务前风险分析与控制对策

飞行任务前的风险分析工作应综合正样阶段型号软件产品的需求验证和确认情况、系统级的综合测试(或者专项测试)情况、第三方软件评测情况、系统级软件验收和软件落焊情况进行分析,着重对技术难度高、飞行环境作用复杂和地面验证有局限性等可能带来的风险进行识别。

2型号项目风险管理基本原则

将风险管理与软件工程化和产品保证相融合,在软件系统的全生命周期中进行全面风险分析,及时识别出不同研制阶段的风险点或薄弱环节,给出针对性的控制措施与方法,并进一步细化软件工程化和产品保证要求,切实提升各环节的工作效果。风险管理工作应遵循的基本原则是:(1)以确保软件产品功能、性能符合任务需求,安全、可靠地完成飞行任务为最终目标。软件研制风险管理要协调地融入整个型号研制过程中,确保型号研制阶段工程技术、质量趋势、研制计划安排的实现与型号研制任务的既定目标和要求相一致。(2)强化风险控制过程的系统性、完整性和有效性。即针对软件研制过程中的各种内外部作用因素识别、分析风险,提出可操作性强的应对措施,将之明确在工程化或产品保证要求中,并对措施执行情况的符合性进行检查和确认,最终完成风险控制的闭环管理。(3)关注各种软件产品质量信息(问题归零、技术状态更改、待办事项落实情况等)的收集、获取和综合分析,以及参与者之间的充分技术交底工作,注重风险管理工作的持续改进。(4)在技术风险分析中,尽可能运用系统方法(FTA、FMEA、风险评价指数法等),以产生一致、可对比和可靠的结果,提升控制效率。

3软件风险管理控制措施

3.1精细化软件研制技术流程和产品保证要求

风险管理所获成果应充分体现在软件工程化实施细则中,以统一所有研制人员的思想和步调,精细化编制系统级软件研制技术流程和产品保证要求,关键是要与型号系统工作密切关联且协调地安排工作项目和流程节点;要充分体现分级、分类和分层的管理理念,涵盖全面,突出重点。实践表明,其有效的措施有:(1)分阶段对软件需求成熟度进行“瀑布式”和“非瀑布式”详细流程及工作项目的分类规定。(2)越是短线环节,越应在流程中分解体现;越是工程化或产品保证薄弱环节,越应细化至具体的、可操作的要求。(3)通过设置针对性的软件产品保证细化要求或者关键质量控制点的方式,降低概率较大风险发生的可能性。

3.2需求完整性和正确性保证

软件需求的完整性和正确性是决定软件产品质量的关键之一。如何及时确定完整、正确的软件需求,避免不必要的反复,也是复杂航天器工程中的难点之一。针对此,本文提出以下措施:(1)坚持运用自顶向下逐级细化分解-自下向上逐级综合完善的分析与设计方法,适时组织开展系统与分系统、分系统与单机、分系统与分系统间协同-联合设计,并有计划地在详细设计阶段安排多次迭代逼近过程。(2)应力求系统、分系统和单机各级功能设计与可靠性、安全性分析与设计的协调与同步。(3)应通过软硬件联合设计,实现资源配置和功能分配合理,软硬件接口设计匹配、可靠。(4)在单机级测试阶段,尽可能地模拟与软件运行场景相对应的软件测试环境(如数字或半物理仿真),有效验证软件需求并加速其迭代获取过程的逐步收敛。如果经过分析,在单机阶段不能完全模拟软件真实运行场景,可以通过系统及或者专项试验进行验证。

3.3可靠性、安全性保证

可靠性、安全性保证是复杂航天器系统工程中的重点,软件产品除自身的健壮性和安全性保证外,还要实现上级的可靠性、安全性需求,以下要点有助于期望目标的达成:(1)各级FTA、FMEA、危险分析以及应急救生和故障处置对策等可靠性、安全性设计应坚持逐级细化分解、逐级综合完善和有计划迭代逼近的方法,以保证软件系统和产品的安全关键或任务关键分析有据可依,并及时将相应的保证需求细化。(2)软件产品自身的健壮性和安全性保证应充分落实软件可靠性和安全性设计准则的规定或采纳指南中的建议,并及时通过常见多发案例的举一反三及时进行自省、纠正。(3)应对可能滞后的软件需求实现,在软件设计阶段特别是概要设计阶段就应重视运用专业技术方法,以保证良好的可扩展性和易维护性。(4)运用中断冲突分析、时域-空域资源分析等方法,有助于有效发现嵌入式软件产品的深层次缺陷,提高健壮性。

3.4测试/试验验证保证

强化航天器软件系统在各级、不同场合的测试和试验验证以及第三方评测是保证软件产品质量满足要求的主要手段。要进一步提升其效果,应注重以下要点:(1)高度重视需求分析的全面性以及功能、性能分解的细化;高度重视需求规格说明的完整性和无歧义,并向测试者传递、沟通到位。(2)测试覆盖性分析决定着测试/试验验证规划和方案设计的全面性和合理性,决定着验证环境等保障条件建设是否能够及时到位。应力求与需求分析同步完成。(3)“飞什么,测什么”是保证验证覆盖性和有效性的首要原则。对于功能模式多、性能指标要求高的复杂产品,测试/试验验证规划十分重要,须将验证目标和项目精细分解,分配在各级和不同场合的测试/试验中;对地面无法或真实模拟测试/试验验证的项目,应及早探讨其他有效验证手段。

3.5适时开展针对性强的专项活动

针对具体问题,适时开展风险控制专项活动通常效果显著,可借鉴采纳,如共性案例分析与解决方案培训、组织专家审查把关技术难点项目、方案总体-技术总体-软件研制方联合走查、落焊过程控制、软件系统与飞行程序/飞控预案协调性复核等。

4结语

风险管理的根本目标是及早发现问题,防患于未然。载人航天器系统研制过程中实施软件项目风险管理的实践证明:风险分析与软件工程化的系统融合是推进精细软件工程化、提升软件产品保证能力的有效方法。因此,在型号项目全过程管理过程中,需要全面分析和识别风险源,提出切实有效的控制措施,并严格落实在各研制阶段,规避各种隐患。(1)关键技术或新产品的攻关进展滞后,是影响型号系统初样乃至正样研制进度和质量的主要风险因素之一。要有效规避或降低该类问题带来的风险,须在方案阶段做好风险分析和控制对策(特别是各级管理和保障方面的措施)制定工作,并切实落实到位。(2)软件工程化和产品保证实施过程中总结的有效、实用的方法仍需通过不断地总结工程经验与教训,并进行提炼、丰富,最终固化成为每一位参研者共享的财富。(3)要更有效地解决需求确定和全面验证等环节的相关问题,必须依赖技术手段,如建设并推广使用可支持单机级、分系统级乃至系统功能级方案比较、软硬件联合设计、软件系统更全面测试的快速仿真环境等。

作者:郭娟 韩冬 王阳 赵攀 单位:北京空间技术研制试验中心

相关热门标签