分享

美国防部快速应用新的软件采办路径

 小飞侠cawdbof0 2022-10-31 发布于北京


来源:空天防务观察

作者:李亮


“美国防部的能力现代化迫在眉睫,软件是大多数塑造未来战争新兴技术的核心。自主、人工智能、网络和太空等新兴技术都是软件密集型的。软件在实现成本降低和运营时间减少的同时,正在推动系统性能和任务作用的指数级增长。”

——美国2018年《国防战略》

图片

图片

一、美国新的软件采办路径的提出和应用


  图片   


从2018财年美国国防授权法(NDAA)要求美国防部长责成国防创新委员会“对简化软件开发和采办法规进行研究”开始,一直到2021财年要求美国总审计长提交关于实施软件采办改革的报告,美国每年的国防授权法中都明确提出了软件现代化采办的相关要求。按照这些要求,2020年,美国防部调整了其采办指示5000.02,确立了新的适应性采办框架(ADAPTIVE ACQUISITION FRAMEWORK),以实现灵活和适应性采办。并将采办路径和职责的选择权分配给采办官员。

新的适应性采办框架建立了六种采办途径:(1)应急能力采办(2)中层采办(3)重大能力采办(4)软件采办(5)国防业务系统采办(6)服务采办。之后在2020年10月又发布题为“软件采办路径操作”的指示5000.87,旨在集成现代软件开发实践,如敏捷和DevSecOps,目的提供安全软件的高效和有效获取、开发、集成和及时交付。2022年,美国防部又发布了《美国防部软件现代化战略》,提出了软件现代化的长期目标和思路。

图片

适应性采办框架构成图,这一新的采办框架由六种采办途径组成,最右一列为每个采办子路径的指示文件和发布时间(美国防部图片)

据统计,新的采办路径发布后,从2020年底5000.87指示发布到2022年9月,美军实施新软件采办路径的项目已经从9项增长到47项,其中,包括空军的全域通用平台(ADCP)、空中作战中心 (AOC)、基于云的指挥控制 (CBC2)等11个项目,海军的综合作战系统(ICS)、海上战术指挥与控制 (MTC2)、下一代海军综合战术环境系统(NITES-Next)等11个项目,陆军的陆军综合防空导弹防御系统(AIAMD)、 一个世界地形(OWT)、机器人战车(RCV)等8个项目,以及其他部门的17个项目。

图片

从2021年到2022年一季度,美军各军兵种采用新的软件采办路径的项目变化情况

图片

二、新软件采办路径的整体情况


  图片   


美国国防采办系统的运行目标是实施国防战略,通过技术创新的基础发展更具杀伤性的能力,通过塑造绩效文化形成决定性的持续的军事优势。因为这一目标,并结合当前发展和需求,美国防部发布和制定了由多种采办途径组成的适应性采办框架。

适应性采办框架中的软件采办路径专为软件密集型系统设计,其目标是实现向用户快速和迭代地交付软件功能。在新的软件采办路径中已经考虑和集成了现代软件开发实践,例如敏捷软件开发,开发、安全和运维一体化(DevSecOps)和精益实践。新的路径要求组织用户积极参并集成国防部的企业服务,以实现快速迭代地交付软件,以满足用户的最高优先级需求。以任务为中心紧密整合政府和行业软件团队,利用自动化工具进行开发、集成、测试和认证,实现软件功能在作战环境中的迭代部署。

图片

美国防部5000.87指令中的软件采办路径概念图,包括计划阶段和执行阶段。从图中可以看出,新的软件采办路径,强调了敏捷方法、迭代开发、最小可行产品、最小可行能力发布等概念,并明确了软件永不完成的持续开发理念(美国防部图片)

图片

三、新软件采办路径的几个重要特点


  图片   


1、整体采办路径分为计划和执行2个阶段

其中,计划阶段的目标是深入了解用户需求,制定软件功能交付计划,以满足用户需求。执行阶段的目标是快速和迭代地设计、开发、集成、测试、交付和运行软件,确保软件满足用户需求优先清单,并实现弹性和可靠的软件功能。软件采办项目需要在计划阶段完成初步需求分析、用户参与承诺、分析采办策略等工作,并制定能力需求声明(CNS)、用户协议、采办策略、测试策略、成本分析需求及初始成本评估等一系列文档,经授权机构验证之后,才能够从计划阶段过渡到执行阶段。在执行阶段进行软件架构设计、研发、测试、发布、用户反馈、运行及维护等具体工作。采用新的采办路径的一个典型特点是没有单独的运行维护阶段,运行维护工作是执行阶段工作的一部分,这符合军用软件持续改进的需求和软件永不完成(Software is never done)的思路。

2、积极的用户参与和用户协议

敏捷软件方法需要用户承诺并积极参与项目工作,因为有效的软件采办需要研发团队与用户接触,了解用户的工作概念、操作环境、已有能力、所需能力,以及必须与之交互的外部系统、互操作性要求等等。而且可能需要额外的任务或者资金支持,以确保用户有必要的资源来履行相关承诺。与代表关键用户群体的最终用户积极合作,可以确保软件交付满足用户的优先需求,定期评估软件性能和软件风险,最大限度地支持作战和工作效能。因此,在采办路径中对用户协议提出了明确要求。

用户协议在计划阶段完成,是项目发起机构和项目经理之前的协议,主要约定软件开发和交付中用户持续参与计划和各方决策权分配,一般还会约定对开发和运维期间的用户活动提供相应资源进行支持。

图片

敏捷软件方法中用户参与软件采办过程的示意图,用户根据作战任务提出需求,项目经理和用户一起制定用户需求声明(CNS),具体需求考虑任务、适用、性能、威胁、优先级、技术等因素,并结合用户反馈、环境、开发情况周期性调整需求优先级,形成研发任务清单(Backlogs),从推动软件周期性版本开发和交付(美国防部图片)

3、重要角色和组织关系

新的软件采办支持敏捷开发等现代软件方法,现代的敏捷开发模式,需要积极的用户参与,就意味着重新组织管理、开发、用户、运维等活动,重新定义相关职责、关系、组织、活动甚至文化等管理要素。新的采办路径致力于与用户团体密切合作,而用户团体又将委托用户代表根据需要参与适当的采办和计划过程。为了提供满足用户优先需求并形成所需的装备和能力,让用户积极参与整个开发过程,包括与运营、需求、采办、安全和测试团队紧密合作,以应用 DevSecOps 最佳实践至关重要。产品负责人和项目经理有明确的职责划分,这将使他们能够为项目的利益有效地合作。因此,其组织关系和传统软件采办或者瀑布式软件方法中有很大不同,一些主要角色如下表所示。

表1 新软件采办模式下主要角色及其职责说明

图片

4、基于开发、安全和运维一体化(DevSecOps)的企业级服务

企业级服务是在一定应用范围内的后端服务,可以被多个软件项目利用,可以在企业级计算、网络和数据的业务流程自动化方面发挥较好的作用,一般就是IT领域经常提到的PaaS、SaaS、IaaS等。在新的软件采办路径中,明确了使用企业级服务的要求,并将应用敏捷软件方法适用的框架也作为企业级服务的要求,这些服务包括美国防部、下属机构、指定供应商提供的后端服务,具体内容包括云基础设施、软件开发管道平台、通用容器、虚拟机、监控工具和测试自动化工具等技术服务。采办路径里进一步明确提出,在理想情况下DevSecOps 平台应作为具有定制选项的企业级服务提供,而不是让每个项目独立开发 DevSecOps 框架的单独实例。企业级服务是一种支持能力,可以被多个软件程序利用。根据美国防部的文件,认定“云一号”(Cloud One)和“平台一号”(Platform One)为国防部级的企业级服务,分别提供基于云的支持和DevSecOps 平台框架。

5、信息安全左移

根据信息安全考虑,网络安全和项目保护需要在项目的整个寿命周期内从一开始开始就进行考虑并解决。基于风险的管理方法成为项目采办战略、流程、设计、基础设施、开发、测试、集成、交付和运维的一个组成部分。软件保障、网络安全、测试和评估是该方法的组成部分,用于持续评估网络安全的考虑和响应能力,识别和解决风险并采取风险缓解措施。软件安全涵盖三个部分,开发安全:包括安全编码实践、测试和验证、供应链安全、工具链配置和授权管理;功能安全:包括身份管理/身份验证、安全软件修补/更新、加密、授权/访问控制、日志记录和错误/异常处理;寿命周期安全:包括漏洞管理、配置、漏洞通知/修补和生命周期结束相关事项等。

6、最小可行产品与最小可行能力发布

最小可行产品(MVP)与最小可行能力发布(MVCR)是美国防部落地现代软件采办路径的核心概念,在新的适应性采办框架、软件采办路径、国防创新委员会和国防科学委员会的相关文件中,都能看到这两个概念重复出现。项目进入执行阶段的首要任务,就是完成最小可行产品。

最小可行产品是软件的最早的版本,其目的不是直接提供应用能力,而是用于向用户交付或提供基本功能,以对其进行评估和提供反馈。类似于传统软件项目中的原型系统,但具有明确的要求,必须满足基本的最小功能。项目经理使用评估和反馈结果来重新平衡和重新确定软件能力组合的优先级。

最小可行能力发布是适合部署到作战环境或工作环境中的初始功能软件,可在短时间内为作战人员或最终用户提供使用,类似于商业软件中的最低适销发布 (MMR)。最小可行能力发布与最小可行产品最大的不同是要能够提供实际的作战或工作能力,可视为实现初始作战能力(IOC)。

图片

采用软件采办路径的软件开发节奏示意图,每一轮迭代都包括计划、编码、构建、测试、集成等工作,首先发布最小可行产品,用于用户反馈,之后形成最小可行能力发布,并完成部署,此后持续迭代,不断更新和交付新功能,“永不完成”(美国防部图片)

7、周期性管理和软件永不完成

新的软件采办路径采用现代软件方法,其中主要是敏捷开发模式和相关的思想。如上图所示,软件必须迭代的开发,增量的升级交付。新的采办路径对相关周期提出了要求。

按要求,使用软件采办路径的项目需要在新软件能力资金首次到位之日起1年部署完成软件的最小可行能力发布,证明其作战使用或工作使用的可行性和有效性。最小可行产品用于前期用户反馈沟通,需要按照最小可行能力发布的计划日期倒推。此后,需要以不低于每年1次的频率不断更新和交付新功能,以迭代地满足需求,在可行的情况下鼓励更频繁的更新和交付。对于嵌入式软件项目,在嵌入式软件的集成系统完成初始作战验收前,增量更新交付至代表性模拟运行环境,完成初始作战验收后,交付至实际集成系统和硬件环境,并且应与相关系统的时间表保持一致。

其次,美国防部部长办公室要求所有采用软件采办路径的项目每半年向办公室提交一份项目进展日期、资金、数据相关的报告。

此外,采办路径还要求项目软件投入使用后,至少每年进行一次价值评估,以确定交付软件所实现的任务改进或效能提升情况,以及从最终用户的角度来看是否有价值进行当前和未来的投资。

最后,美国防部认为“软件永不完成”,即使处于较低开发水平,大多数国防部软件程序都将持续开发。具体工作包括解决缺陷、网络漏洞,升级对底层平台和服务的支持和集成,以及增加功能。因此在采办路径中不设置软件交付后的“维护阶段”。

图片

四、软件采办路径的优化


  图片   


虽然2020年就发布了“软件采办路径操作”的指示5000.87,但其应用方式一直在进行探索和优化。

1、多类采办路径的组合使用

美国防部发布适应性采办框架的一个重要原则就是在实际项目中“裁剪采办路径”(Tailor Acquisition Approaches),即可以在一个项目中运用多条采办路径的组合,使采办项目管理更加符合实际情况,更加落地。因此,软件采办路径可以在所有包含定制软件的项目中应用,包括已经实现初始作战能力项目的后续软硬件研发、在研采办项目中使用传统采办路径的软件研发,都鼓励调整或过渡到新的软件采办路径上。对于新的采办项目,更可以和重大能力采办路径、应急能力采办路径、中间层采办路径进行组合,形成组合采办策略。

2、软件采办路径的应用范围

在5000.87指示文件中,明确说明了软件采办路径适用于2类项目,即部署在商用硬件和云平台上运行的软件项目,以及用于武器系统中的嵌入式软件项目。但在美国2021财年国防授权法案中又明确提出“确保软件采办路径对国防业务系统(原适应性采办框架中的第5类采办对象)的适用性” 。主要是因为认识到用于国防业务系统解决方案的商用现货 (COTS) 产品大都是软件密集型的,可以受益于使用敏捷和 DevSecOps 方法迭代交付的能力。应用软件采办路径,国防业务系统可以定制关键业务能力获取周期流程,选择性的获得持续交付能力。







    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多