技术交流 | 美国国防部软件现代化战略(上)

 

点击

“航天软件和数字化”

关注我们

 
摘要:为实现“以相应的速度提供弹性软件能力”的愿景,美国国防部发布了《国防部软件现代化战略》。本战略提出了软件现代化工作的统一原则和工作框架,并总结了三大长期目标:加快建设国防部的企业级云环境;打造面向整个国防部的软件工厂生态体系;以流程改革提升弹性和速度。在每项长期目标下都设置了若干个近期目标,这些近期目标将重点关注软件现代化框架下的技术基石和流程改革问题。

 

美国国防部(United States Department of Defense,DoD)内的创新派们早就希望通过改革传统的软件交付模式,以便更快地交付性能更好的软件。鉴于此,DoD 制定了软件现代化战略。本战略预计将取得两大成果:一是通过现代基础设施和云平台形成安全的软件交付模式。DoD已经意识到技术对改进软件交付模式的重要性,因此,既要注重通过云平台建立商业伙伴关系,还要力求建立服务于整个DoD的“软件工厂”。二是通过真正的流程改革和注重个人发展来实现上述成果。受制于 DoD 内的繁文缛节,当前的软件交付模式步调难以满足需要。DoD必须审查和修正各种需求、预算、采办事项和安全流程,以便利用新的方法和技术来形成快速、优质且防护得当的软件交付模式。然而,要实现这种改革,DoD 就必须注重个人的发展及其贡献。

软件现代化愿景
SOFTWARE

软件在美国随处可见,各种软件不但融入了美国人的工作和生活,还决定了美国人的健康、经济和军事能力。DoD正日益依赖软件所提供的自动分析、决策和执行能力,这些能力提升了效率、实现了创新,但也带来了新的弱点和风险。鉴于此,美国的敌对势力已开始把信息和数据作为武器和攻击目标,而软件正是其发动攻击的手段。

未来战争的成败与否,将取决于DoD是否具备擅于快速且安全地交付各种弹性软件的能力。这些能力必须能改善一线官兵和网络防御单位的战场感知水平,实现基于自动化和机器学习的“联合全域指挥与控制”(Joint All Domain Command and Control,JADC2),并通过数据的聚合和处理来帮助指挥官赢得决策优势。若想做到这一点,既不能依靠过时的平台和程序,也不能仅靠DoD单打独斗。

一言蔽之,DoD的软件现代化愿景就是“以相应的速度提供弹性软件能力”。其中,“弹性”意味着提供优质而安全的软件,这些软件能够经受住各种严苛环境并从故障中恢复过来;“相应的速度”是指交付速度要足以使美军保持竞争优势。实现这一愿景的可行之策,就是将DoD及其合作方的工作与软件业巨头的工作统一起来,在不违反DoD流程的前提下,形成一套最顶尖的软件能力。这些能力还必须与其他文职部门相契合,以吸纳零信任架构(Zero Trust Architecture,ZTA)、各种电磁频谱能力以及日益增多的联网式军事装备。

按照这一愿景,下文将确立统一相关工作的原则,为各项工作建立组织框架,并提出初步的行动目标。

统一原则
SOFTWARE

统一相关工作是DoD实施软件现代化工作的根本目的。为此所制定的统一原则已考虑到了DoD现有的战略以及多个领域的前沿水平,从而为本战略赋予了包括技术视角在内的全局观念。

1.将安全性、稳定性、质量和速度置于首位

DoD 必须优先保证弹性软件运行稳定、质量合格且能经受住恶劣的网络环境。为此,DoD可以积极地采取各种现代软件开发措施,以此将性能和安全有效融入整个软件开发周期,从而快速满足其要求。

2.智慧云 / 智慧数据

云服务和数据是软件现代化的基础。要想最终获得影响重大的能力,就必须让软件巧妙地采用云服务,并采纳数据领域的一些最佳做法。为此,DoD必须通过加快云应用步伐来实现软件现代化,并按照其发布的《国防部数据战略》主动管理数据。

3.优先考虑企业能力

DoD的预算资金有限,因此需要一套高效且合算的技术交付模式,而企业能力正是这种模式中的关键部分。协同管理企业能力有助于推动技术运用,并促使DoD下属部门将有限的资源发挥出最大价值。

4.全员参与

软件现代化工作必须既受到强有力的领导,又由技术人才推动,最终由技能娴熟的员工落实。因此实现软件现代化的关键因素在于发展、培训和招募DoD员工。

5.不止于代码

软件现代化并不仅限于开发代码,还包含许多力求将设想转化为现实的政策、流程和标准。这些政策、流程和标准既应有助于达成本战略的愿景,也不应忽视合同、知识产权以及“如何从开发过渡到实际部署”等因素。

软件现代化框架
SOFTWARE

获得软件的方式主要有3种:

(1)采用DoD下属部门出资开发的现有应用程序和云平台;

(2)通过传统的软件许可证制度购买软件或用于开发软件的组件,包括低代码 / 无代码平台或订阅的“云软件即服务”;

(3)定制软件(通常是为了赋予DoD某些独特能力),可能包括复杂的系统体系、简单的网页(Web)应用程序或嵌入式代码。

不论选用哪种方式,软件交付都不能一蹴而就,急功近利的软件交付工作只会适得其反。为了保证快速、安全且持续地交付软件,无论是采用外购软件还是自主研发,所有现代软件获取方法都已吸纳了模块化设计原则和自动化理念。

本战略建立了一套软件现代化框架,其中指明了实现软件交付现代化所必需的技术基石和技术流程。需要指出的是,该框架虽然规范了软件现代化工作中的常用词汇和组织架构,但其既谈不上包罗万象,也并非最终定论,其目的仅在于帮助有关部门把精力放到具体工作上。有关部门应根据各种因素来决定是否采用该框架,例如,任务规定的软件获取方式(比如是采用外购还是自主研发)、软件开发的复杂性(比如简单的网站还是系统体系),以及软件最终用户的情况(比如是一线官兵、医护人员还是招聘人员)等。

1.技术基石

为了以相应的速度提供弹性软件能力,DoD必须采用最新的技术和方法。上述软件现代化框架中的技术基石将遵循任务要求、实现互操作性并确保安全,但这些技术基石并非面面俱到,它们彼此间也存在着千丝万缕的联系。软件现代化框架以“同心圆”的形式来表现这些基石,这既是为了表明必须整合这些互补性基石(或者能力)才能实现最大价值,也是为了说明和软件交付模式一样,这些能力也会不断发生变化。

a国防部的企业级云环境

DoD 的企业级云环境是一套多云、多供应商的生态体系,旨在提供覆盖整个 DoD 的云服务,其中包括基础设施、平台和软件服务等。云环境始终是软件现代化的基础,它能以更快的速度获取全球的计算能力和行业创新成果。如果能通过结构化的方法来建立和维持这种云环境,便可提升服务质量的一致性,实现规模经济,并避免云滥用(Cloud Sprawl)带来的风险。

b设计模式

设计模式是指在软件设计中的可复用方案,这些方案旨在解决特定背景下的常见问题,而自动化的设计模式能安全地加快云运用步伐和软件开发进度。在初期,“设计模式”基石将侧重于那些构成虚拟环境所需的常见工作,例如安全合规性扫描和访问权管理等。有关部门可通过标准蓝图或模板来实现设计模式的自动化,这将有助于在整个软件开发过程中保持架构和配置的一致性,并在实现规模化、互操作性和安全性,以及缩短任务时长方面发挥关键作用。

c开发、安全及运行(DevSecOps)/ 工具化

DevSecOps是一种组织层面的软件工程文化和理念,旨在统一软件的开发、安全和运行。DevSecOps的主要特点是在软件全生命周期过程中(包括规划、开发、构建、测试、发布、交付、部署、运行和监控等)始终贯彻安全原则、监控安全水平和采用自动化安全措施。同时能带来的好处包括减少从开发到部署的时间、提升安全性以及加快获取能力的速度等。DevSecOps工具化拥有“能够持续整合和交付由软件工厂生产的安全软件”的一系列能力,其中,“软件工厂”是指负责软件开发和集成的“软件组装厂”,这种“工厂”拥有多条渠道,并配备了一系列工具、工作流、脚本和环境。凭借这些条件,“软件工厂”能在尽量避免人为干预的情况下生成一组软件型组件,从而在开发、构建、测试、发布和交付阶段自动开展各项工作。此外,“软件工厂”也允许采用多租户架构。要想最大限度地提高“软件工厂”的效益,就必须通过 DevSecOps等方式将技术(例如工具和平台)与流程改革(例如安全授权和安全测试)结合起来。

d企业服务

企业可提供现成的组合式功能(例如安全服务、身份管理、应用程序接口和数据分析)来支持 DoD 的软件现代化工作。由此一来,DoD 各下属部门便可迅速地运用各种安全能力来满足各自的任务需求,从而让有限的人才专注于开发独具特色的软件。此外,DoD 可将从企业购买的软件交给所有下属部门使用,以减轻其财务负担。

2.技术能力倍增器

新兴技术不断改变着数字化格局,因此,在按照《国防部科学与技术战略》采纳这些技术时,DoD必须考虑到它们对软件现代化的技术基石和流程有何影响。在重新评估这些技术基石和流程时,DoD不能仅局限于当前的软件开发理念,而是必须准备好在新的条件下跳出思维定式。

3.流程改革

在建立软件现代化框架时,DoD已经意识到必须改变流程才能用上新的技术。流程改革不仅要考虑步调和灵活性,还要对新举措予以激励,实行允许创新和试验的新版策略,并确保能从软件合规阶段转向运行就绪阶段。对整个DoD而言,流程改革应从小处着手,然后逐步扩大,最终推广到整个DoD。流程改革预计将取得 2 个成果:一是使采办时间表变得更加紧凑;二是通过经济激励来打破“孤岛式”的业务运作模式和服务管理模式,以及缩短网络安全合规工作的筹备时间等。

a业务运作

为推广共享软件开发平台和可复用软件,DoD必须改变其内部的经济制度,调整催生“孤岛式”业务运作和服务管理的因素,并通过资源激励来形成共享、复用和信任各类软件的氛围。具体而言,DoD必须将激励措施纳入需求和预算流程中,并通过优化内部管理业务的方式来简化共享服务交易。

b采办

软件需求千变万化,软件的更新速度也快过以往,然而,目前的采办和合同周期太慢,软件在交付时可能就已过时。因此,为适应当前的节奏和灵活性,DoD必须继续改革软件采办模式,同时也需要企业界的配合。

c网络生存能力

“遵守现行规定即可确保网络安全”的心态可能会带来错误的安全感,DoD应把“网络安全”视为一种动力,而“符合网络安全规范”则应是这种动力的结果,而不是相反。基于此,DoD必 须 把“ 反 映 一 时 之 需” 的 网 络 安 全 合规文化转变为网络安全从业者所遵从的文化,即把自动化及实时、持续的风险监控(包括供应链风险监控和快速的事件响应)视为应有之义,并将这些理念整合到软件开发渠道之中。DoD必须尽早确定符合系统安全工程理念的方式方法,利用新的技术和方法来简化软件的风险流程,为各类授权持续提供必要的信息,并落实防御性网络空间行动(Defensive Cyberspace Operations,DCO)。

d测试

软件将在武器平台和任务能力中扮演更加重要的角色,因此,DoD必须将可靠的软件测试环节整合进软件交付渠道,并在这些环节中留出“评测端到端任务线程”的余地。在软件测试阶段,DoD不能仅靠运行一遍脚本就对软件特性和功能作出评估,而是必须将运行场景纳入测试,以确保运行效果能够达到期望水平并满足最低要求。为提升网络生存能力,在软件开发过程中,DoD必须开展合作性和对抗性的渗透测试以及持续性的网络测试,并在部署软件后反复进行网络测试,以确保实现积极主动的网络防御。

e员工队伍

要想采取现代化的软件开发与交付模式,就得调整 DoD的员工队伍。具体而言,DoD需要采取6个方面的措施:一是要想调整战术边缘作战平台的算法,就得有软件人才;二是要想用低代码 / 无代码平台处理数据,就得有技能娴熟的分析师;三是要想推出软件定义型机器人技术,就得有一支掌握相应开发与工程知识的灵活团队;四是必须吸引和留住人才,将人才推上领导岗位,并设法培养竞争所需的技能。五是改变面向员工的各类流程及团队文化;六是为了实现“由软件定义的”未来,需要具备各个专业的人才,改善专家与用户之间的沟通,并建立一支精通技术的联合部队。这意味着各级领导者和管理者必须跳出窠臼,重新思考职业规划、人员合作以及整个DoD范围内的协调与配合问题。

4.成果

DoD通过奠定技术基石和推进流程改革来更快地提高一线官兵的作战能力。弹性软件将以更快的速度部署到任务中,利用高自动化能力提升各类业务的效率和效益,对网络威胁展开实时抵御,而各种软件将促成以数据为中心、由数据驱动的运行环境,从而增强美军的数据优势。

END

点击阅读原文,了解更多

浏览量:0
首页    学术交流    技术交流 | 美国国防部软件现代化战略(上)
创建时间:2022-08-23 13:35