知识管理和大数据分析的企业方法将提供更强大和可靠的测试数据存储、更高的测试数据可发现性和可访问性,以及显著提高对这些测试数据进行大规模数据分析的能力。这将改进美国国防部武器系统的测试和评估,从而为作战人员提供更好的武器系统。有效的企业方法需要精心设计的、灵活的、可持续的和可负担的实施方案。所有测试范围都将受益于测试资源管理中心(TRMC)数据分析架构实施的指导和评估工具。
本文目的是为测试与评估大数据分析和知识管理(T&E BDA-KM)软件解决方案提供高级实施指导,这些解决方案基于测试资源管理中心(TRMC)的知识管理和大数据分析架构(BDAA)框架,如 TRMC 的知识管理和大数据分析架构框架所记录。为便于参考,本文件将上述出版物称为 "TRMC BDAA"。
需要说明的是,本实施指南仅针对基于 TRMC BDAA 的 T&E BDA-KM 软件解决方案。此外,本实施指南仅确定了这些软件解决方案的高层次关键特征,更具体地说是五大关键特征。
只查看前五个关键特征的理由是为候选的 T&E BDA-KM 解决方案提供快速方向检查,而不是提供深入分析。
本实施指南的组织结构如下。
a. 查看已发布的与可行的 T&E BDA-KM 软件实施相关的美国国防部指南。
b. 根据美国国防部指南,确定可行的 T&E BDA-KM 软件实施的五大关键特征。
c. 根据可行的 T&E BDA-KM 软件实施的五大关键特征,提供实施记分卡。
该实施指南由范围指挥官委员会数据科学小组制定,是 TRMC 大数据分析架构评估的后续。
本节回顾了与可行的 T&E BDAKM 软件实施相关的美国国防部出版指南。由于可行的 T&E BDA-KM 软件实施必须适用于所有军种,因此本次审查仅限于美国国防部一级的出版物。虽然所审查的出版物并不全面,但具有一定的代表性。
《美国国防部云战略》规定如下。
美国国防部(Department of Defense,DoD)已进入现代战争时代,战场既存在于数字世界,也存在于物理世界。数据和我们随时处理数据的能力是确保任务成功的关键因素。云计算是全球基础设施的基本组成部分,它将赋予作战人员数据能力,对保持我军的技术优势至关重要。(美国国防部云战略)。
美国国防部必须使决策者能够以相关的速度使用人工智能和机器学习(ML)等现代数据分析技术,在战场上迅速做出时间紧迫的决策,以支持杀伤力和提高作战效率。(美国国防部云战略》,第 5 页)
美国国防部云战略确定了实施 "从本土到全球战术边缘的可扩展、安全的云环境,以及快速获取计算和存储容量的能力,以相关速度应对作战挑战 "的指导原则(国防部云战略第 7 页)。与可行的 T&E BDA-KM 实施特别相关的原则如下:
利用商业行业最佳实践: 最大限度地扩大竞争,确保美国国防部获得最佳技术和价值;利用行业开放标准和最佳实践,避免锁定,并为未来的云计算进步提供最大的灵活性。(美国国防部云战略》,第 8 页)
联合企业防御合同是美国国防部云战略的重要组成部分,虽然该合同已被取消,取而代之的是联合作战云能力,但美国国防部云战略的指导原则仍然具有现实意义。
《2018年国防部人工智能战略摘要》指出以下几点。
AI [人工智能]正在迅速改变广泛的企业和行业。它还将改变未来战场的特征和我们必须面对的威胁的速度。我们将利用人工智能的潜力,积极转变国防部的所有职能,从而支持和保护美国军人,保护美国公民,保卫盟友和合作伙伴,并提高我们行动的经济性、有效性和速度。美国武装部队中的男女官兵仍然是我们持久的力量源泉;我们将利用人工智能化的信息、工具和系统来增强而不是取代服役人员的能力。(2018年摘要,第4页)
与可行的 T&E BDA-KM 实施特别相关的重点领域如下。
与开源社区合作。开源社区是一个充满活力的全球孵化器,汇聚了才华横溢的个人和变革性的想法。我们将向该社区贡献我们的数据、挑战、研究和技术,并参与开源生态系统,将其作为吸引人才、识别和推进可改变国防的新人工智能技术以及扩大我们可获得的技术基础的载体"。(2018年摘要,第12页)
《美国国防部数字化现代化战略》指出:
美国国防部的大数据平台(BDP)是一个安全、可扩展、可升级、灵活和开放的基础设施平台,旨在提供分布式计算解决方案。BDP 基于 DISA 开发的开源技术,能够摄取、存储和可视化多 PB 数据。它作为一个通用平台,可为美国国防部的各种赛博空间任务和组织提供支持。BDP 能够对来自支持 NIPRNET 和 SIPRNET 环境的各种系统和传感器的结构化和非结构化数据进行汇总、关联、历史趋势分析和取证分析。DODIN 行动和 DCO 任务需要一种能力,能够将企业规模的数据转化为简单、动态的可视化信息,描述事件关系并满足领导者的信息需求。(第 42 页)
美国国防部的大数据分析方法基于大数据平台 (BDP),这是一个安全、可扩展、可伸缩、灵 活和开放的基础设施平台,旨在提供分布式计算解决方案。BDP 实例能够从各种来源(如移动设备、航空(远程)传感、软件日志、摄像头、麦克风、射频识别(RFID)阅读器和无线传感器网络)获取、存储和可视化多 PB 数据。(第 44 页)
大数据分析应用可对大量结构化数据以及其他形式的数据(半结构化和非结构化)进行分析,而传统的商业智能 (BI) 和分析程序往往无法利用这些数据。数据挖掘工具可以筛选数据集,寻找数据的模式和关系,从而对数据进行汇总、关联、历史趋势分析和取证分析。机器学习算法可以分析大型数据集,并执行深度学习,这是机器学习的更高级分支,可支持预测行为和其他未来发展的预测分析。(第 45 页)
《美国国防部数据战略》规定如下。
各级作战人员都需要经过测试、安全、无缝地访问网络、支持性基础设施和武器系统直至战术边缘的数据。美国国防部数字化现代化计划提供的先进能力取决于企业数据管理政策、标准和实践。所有领域的传感器和平台在设计、采购和使用时都必须将开放数据标准作为一项关键要求。在现代战场上的生存将取决于利用不同来源的数据并将其连接起来,利用分析工具实现卓越的态势感知,以及协调信息以达到分类精确的效果。(美国国防部数据战略》,第 1 页)
与可行的 T&E BDA-KM 实施特别相关的能力如下。
该战略强调数据访问以及随着技术和数据源的变化而调整需求的能力。由企业云和其他开放式架构能力支持的美国国防部架构必须能够以比对手更快的速度调整数据。快速、持续地开发和部署轻量级应用程序以支持用户需求的能力彻底改变了美国国防部使用数据的方式,并带来了战略优势。敏捷架构方法通过平衡突发设计和有意架构,实现了递增价值。这种敏捷方法允许数据和系统(即使是大型解决方案)的架构随着时间的推移而发展,同时支持当前用户的需求。(美国国防部数据战略》,第 5 页)
美国国防部采用了一系列标准,其中不仅包括公认的数据资产管理和利用方法,还包括经过验证的成功数据表示和共享方法。鉴于美国国防部系统的多样性,这些标准应在数据生命周期的最早实际应用点加以应用,并应在任何实际可行的地方使用开放数据架构的行业标准。标准本身并不是目的,而是在使数据和信息能够随时安全地使用和交换时提供价值。此外,数据交换规范的物理编码将允许在拥挤和有争议的环境中运行。此外,美国国防部 CDO 将与作战测试与评估(DOT&E)主任合作,确保对与数据相关的材料能力进行测试和评估,以便了解技术的有效性和适用性。(美国国防部数据战略》,第 5 页)
与可行的 T&E BDA-KM 实施特别相关的目标如下。
数据可访问性的目标使授权用户能够在需要时获取所需数据,包括将数据自动推送给感兴趣的授权用户。数据可访问性必须符合公法(P.L. 115-435),即《2018 年循证决策基础法案》。美国国防部正在向授权用户开放数据,包括作战、情报和业务数据。可访问性要求为经认证的用户建立保护机制(如安全控制),以确保根据法律、法规和政策允许访问。
当出现以下情况时,美国国防部就会知道自己在数据可访问性方面取得了进展:
目标 1:可通过记录在案的标准应用编程接口(API)访问数据。
目标 2:通用平台和服务可创建、检索、共享、利用和管理数据。
目标 3:通过可重复使用的 API 控制数据访问和共享。
美国国防部企业 DevSecOps 战略指南》阐述如下。
美国国防部首席信息官和负责采办和维护的国防部副部长办公室(OUSD A&S)认识到,迫切需要通过利用商业部门的新方法和最佳实践来重新思考我们的软件开发实践和文化。DevSecOps 就是这样一种最佳实践,因为它能够以相关的速度交付弹性软件能力,这也是整个美国国防部软件现代化的核心主题。DevSecOps 是一种行之有效的方法,被商业行业广泛采用,并在多个美国国防部探路者中成功实施。DevSecOps 是软件现代化、技术转型和推进组织的软件开发生态系统以提高其弹性的核心要素,同时确保网络安全和指标/反馈至关重要。(第 1 页)
与可行的 T&E BDA-KM 实施特别相关的原则如下。
在软件工厂结构中坚持不懈地追求敏捷原则和文化。敏捷宣言捕捉到了定义功能关系的核心能力,每个 DevSecOps 团队都应重视这些能力:
第一项核心能力强调了个人协同工作的价值和重要性,但不应将其理解为流程和工具无关紧要。其他核心能力也是如此;文档仍然需要,但不能以工作软件为代价;敏捷团队仍然要制定冲刺计划等(第 11-12 页)
采用云智能和数据智能架构主题。有一种乐观的观点认为,云能提供无穷无尽的计算能力、有保障的可用性和较低的运营成本。但现实情况是,架构不当的应用程序在云环境中仍会像在区域数据中心中一样脆弱。如果不重新架构,实际上可能更不可靠,运营成本更高。在向云计算转变的同时,必须采用新的架构设计模式,并优先考虑在现有企业服务的基础上进行构建,而不是重新创造重复的功能。此外,数据的生成、传输和消费没有任何减弱的迹象。软件架构必须有意识地认识到这一点,采用更智能的应用编程接口(API)设计、缓存策略和数据标记/标签。(第 13 页)
《美国国防部企业级 DevSecOps 指南》指出以下几点。
模块化开放系统方法(MOSA)是一种采购和设计策略,由采用开放标准的技术架构组成,支持模块化、松散耦合和高度内聚的系统结构。《美国法典》第 10 篇第 2446a 节和美国国防部指令 5000.02 要求采用 MOSA。容器是一个轻量级、独立、可执行的软件包,其中包括除操作系统外运行业务服务所需的一切;代码、运行时、系统工具、系统库和设置。
容器是一个轻量级、独立、可执行的软件包,包括除操作系统外运行业务服务所需的一切;代码、运行时、系统工具、系统库和设置。容器在相互隔离的进程中运行,因此多个容器可以在同一主机操作系统中运行,而不会相互冲突。所有容器都必须符合开放容器倡议。美国国防部 DevSecOps 战略要求使用 CNCF 认证的 Kubernetes 集群进行容器协调。
微服务架构是一种应用程序开发方法,它将离散的模块化业务服务捆绑在软件容器内。然后使用轻量级协议对这些业务服务进行松散耦合和快速组合。如果执行得当,这种方法的主要功能优势在于,每个服务都能独立于其他服务向前发展。此外,还有许多非功能性优势,包括在根据需求进行扩展时更加灵活、有多种不会影响用户群的升级选项、在每个服务级别进行更精确的网络加固,以及对故障和恢复的固有支持。(第 6 页)
《美国国防部企业级 DevSecOps 参考设计: CNCF Kubernetes》 规定如下。
本《美国国防部企业级 DevSecOps 参考设计》专门针对云原生计算基金会(CNCF)[13] 认证的 Kubernetes[14] 实现。这使得 DevSecOps 软件工厂可以在任何地方实现与云无关的弹性实例化: 云、预置、嵌入式系统、边缘计算。(第 1 页)。
Kubernetes 是一种容器编排器,可在多个节点上管理符合开放容器倡议(OCI)[15] 的容器的调度和执行......OCI 是一种开放式治理结构,用于围绕容器格式和运行时创建开放式行业标准。容器是本参考设计中的标准部署单元。在此参考设计中,容器可实现软件生产自动化,还可实现操作和安全流程协调。(第 6 页)
采用 Kubernetes 的好处与可行的 T&E BDAKM 实施特别相关,具体如下。
多模式环境: 受益于 K8s [Kubernetes] API 抽象,代码在多种计算环境中运行同样出色。
弹性: 自我修复不稳定或崩溃的容器。
适应性: 容器化的微服务可创建高度可组合的生态系统。可扩展性: 应用弹性,可适当扩展并满足服务需求。
采用 K8s [Kubernetes]和兼容 OCI 的容器是实现真正的微服务重用的具体步骤,为国防部提供了在一系列计划中追求更高水平代码重用的强大能力。(美国国防部......CNCF Kubernetes,第 7 页)
与可行的 T&E BDA-KM 实施特别相关的假设如下。
不要求特定的 Kubernetes 实施,但所选的 Kubernetes 实施必须已提交一致性测试结果,供 CNCF 审查和认证。
通过强制要求采用经过认证的 Kubernetes 实施,避免了厂商锁定;但公开承认产品锁定到 Kubernetes API 及其整体生态系统。
采用加固容器作为不可变基础设施的一种形式,可实现通用基础设施组件的标准化,从而实现一致和可预测的结果。(第 4 页)
《美国国防部软件开发和开源软件》指出:
该部必须遵循 "采用、购买、创建 "的软件方法,在购买专有产品之前,优先采用现有的政府或开放源码软件解决方案,只有在现成解决方案无法满足需要时,才创建新的非商业软件。
开放源码软件符合 "商业计算机软件 "的定义,因此,根据《美国法典》第 10 篇第 2377 节的规定,应与专有商业产品同等对待。
根据 FAR 13.104,仅以软件为开放源码而拒绝考虑所有开放源码软件可能有悖于法律法规对商业产品的偏好,并会不必要地限制竞争。开放源码软件应在最大程度上予以考虑。(第 3 页)
开放源码软件与可行的 T&E BDA-KM 实施特别相关的优势如下。
公开源代码可进行持续和广泛的同行评审,通过识别和消除核心开发团队可能无法发现的缺陷,支持软件的可靠性和安全性。
修改软件源代码的能力不受限制,使该部能够更迅速地应对不断变化的情况、任务和未来威胁。
使用开放源码软件可减少因专有限制而对特定软件开发商或供应商的依赖("锁定供应商"),因为开放源码软件可由多个供应商运营和维护,从而更容易随着技术和任务需求的变化更换和升级组件。尽管使用了开放源码软件,但在某种程度上,由于产品、结构或平台的限制,锁定的可能性还是存在的。
由于开放源码软件通常没有按座位计算的许可成本,因此在可能需要许多软件拷贝的情况下,开放源码软件可以提供成本优势,在可能无法事先知道用户总数的情况下,开放源码软件可以降低许可成本增长的风险。(第 3-4 页)
《美国国防部软件现代化战略》阐述如下。
软件现代化的愿景很简单--以切合实际的速度提供弹性软件能力。弹性意味着软件的质量高、安全性好,能够在具有挑战性的条件下承受和恢复。相关性速度意味着需要加快交付速度,以保持竞争优势。这种方法是切实可行的--统一整个美国国防部的努力,并与行业领先的软件机构合作,以产生一个由美国国防部流程支持的一流软件能力组合。(第 2 页)
与可行的 T&E BDA-KM 实施特别相关的目标如下。
加速美国国防部企业云环境。美国国防部企业云环境是软件现代化的基础。多云、多供应商方法仍然适用。从企业到战术边缘,所有分类领域对云的要求仍然有效。从分散的云工作过渡到结构化、集成化和具有成本效益的云组合仍然是该部的意图。随着国防部在技术上的发展,与商业云服务提供商合作仍然至关重要。美国国防部和商业云服务提供商必须共同努力,快速、安全地部署云服务,并确保网络安全活动的透明度,以保持对国防部数据的保护。(第 6 页)
建立整个部的软件工厂生态系统。如前所述,软件越来越多地定义了军事能力;因此,美国国防部必须扩大其快速生产安全、弹性软件的能力,以保持竞争优势。该战略认识到,实现这一目标所需的现代方法和工具以及技术人才并非没有成本。该部必须采取一种全企业范围的方法,建立一个软件工厂生态系统,利用各军种已进行的投资(如:空军 Platform One、海军 Overmarket)、 美国国防部必须为合理数量的经批准的企业供应商制定要求,以有效扩展软件工厂,最大限度地减少不必要的平台重复,并推进 DevSecOps。(第 7 页)
本节根据上一节确定的联邦指南,指出了可行的 T&E BDAKM 软件实施的五大高级关键特征。
只考察前五个关键特征的理由是为候选的 T&E BDA-KM 解决方案提供快速方向检查,而不是提供深入分析。
利用支持快速演进和独立替换特定服务和组件的 MOSA。更具体地说,利用松散耦合服务的微服务软件架构方法,这些服务相互独立,并通过开放接口标准进行交互。这样就能在多个平台上共享数据和分析结果。
尽可能使用自由和开源软件(FOSS)组件,FOSS 的定义是公开源代码和无限制许可。如果没有其他选择,则使用专有软件。这样既能最大限度地提高灵活性,又能最大限度地减轻维护和支持负担。
设计并实施可快速扩展的服务架构。使用分布式计算技术(如 Apache Hadoop、Apache Spark)实现 "扩展 "性能(即通过使用更多的 CPU 而不是更快的 CPU 来提高性能),使用大数据优化存储技术(如 Apache Parquet、Apache Cassandra)实现 "扩展 "存储容量。
设计和实施可在企业内部、企业外部或两者混合的情况下轻松部署的解决方案。这些解决方案应可部署在与供应商无关的硬件和商品硬件上,以最大限度地提高可负担性。优先使用符合 OCI 标准的容器和 CNCF 认证的 Kubernetes 来协调和管理容器。
除 DevSecOps 软件开发原则和方法外,设计和实施的解决方案还应遵循敏捷软件开发原则和方法。
本节根据可行的 T&E BDA-KM 软件实施的关键特征提供了一个实施记分卡。