第一章美国武装装备软件保障研究一、美国武装装备软件保障组织与实施方法研究作为现代武器系统的组成部分,软件在武器系统中发挥着极其重要的作用。随着美军软件密集型武器系统在现代战争中的作用日益凸显,其在美军武器系统中的软件质量及其保障能力日益成为衡量美军作战能力的最重要性能指标之一。武器系统。因此,要想提高美军武器装备的战斗力,就必须提高软件的可保障性。(一)美国软件保障组织研究 陆军武器装备 随着计算机技术的飞速发展和现代局部战争条件下信息化要求的不断提高,计算机系统将越来越多地应用于美军的武器装备系统中。软件密集型系统一个接一个出现。美军武器装备中的软件不仅大大提高了装备的原有功能美军装备试验与评估发展,而且使其获得了许多新的能力。许多关键任务的完成都依赖于软件,因此软件被誉为“力量倍增器”。在作战过程中,美军武器装备的性能表现甚至战争模式的变化,很大程度上是由于软件变化的灵活性和强度,和软件维护成本占武器系统生命周期成本的很大一部分。但根据目前的统计,美军武器装备的软件可靠性比硬件低一个数量级。一些系统故障统计表明,软件故障占系统故障的 60% 到 70%。对于许多武器系统来说,软件保障就是它们的用途。适应性的重要方面 软件几乎总是在首次交付给用户后进行修改,以提高系统性能并使软件与其他系统更改兼容。它保护对环境的影响。武器装备比硬件低一个数量级。一些系统故障统计表明,软件故障占系统故障的 60% 到 70%。对于许多武器系统来说,软件保障就是它们的用途。适应性的重要方面 软件几乎总是在首次交付给用户后进行修改,以提高系统性能并使软件与其他系统更改兼容。它保护对环境的影响。武器装备比硬件低一个数量级。一些系统故障统计表明,软件故障占系统故障的 60% 到 70%。对于许多武器系统来说,软件保障就是它们的用途。适应性的重要方面 软件几乎总是在首次交付给用户后进行修改,以提高系统性能并使软件与其他系统更改兼容。它保护对环境的影响。适应性的重要方面 软件几乎总是在首次交付给用户后进行修改,以提高系统性能并使软件与其他系统更改兼容。它保护对环境的影响。适应性的重要方面 软件几乎总是在首次交付给用户后进行修改,以提高系统性能并使软件与其他系统更改兼容。它保护对环境的影响。
这种工作量(称为软件保障)通常是系统生命周期成本和对不断变化的任务要求的响应能力的决定性因素。这种交互过程对传统的装备保障模式提出了新的挑战。随着美军软件和软件密集型系统的广泛使用,软件在美军现代军事斗争中发挥着越来越重要的作用,甚至改变了战争的形式和过程。同时,由于计算机软件本身的特点,对传统的设备支持提出了新的挑战。与硬件保障相比,软件保障在设备采购方式、保障模式、保障人员、保障工具、保障资金等方面存在很大差异。(二)美国的软件保障方法 军用武器装备是研究美军武器装备的软件保障方法,主要是对软件的维护和改进、升级或以其他方式改变的能力。软件保障及其软件的可维护性、适应性和可修改性还与软件生命周期过程、冗余计算能力、可维护性和计算机保障资源等有关。理想情况下,美军武器装备软件的可保障性评估可以直接衡量更改软件所需的工作量,这与系统有关 软件的可维护性可以在相同的测试和评估中进行评估。同时,软件保障可以进一步分解为软件保障各要素的有效性度量。(<
部署前软件保障正是在系统在现场初始部署之前发生的那些活动。它们包括:(1)计划 PDSS;(2)确定 PDSS 获取要求;(3)确保软件保证;(4)确认软件质量;(5)开发并执行转移计划。而部署后软件保障是在系统生命周期的部署阶段发生的那些软件保障活动,是软件保障的重点。(四)美国陆军武器软件保障原则美军在软件保障方面,经过长期理论研究与实践相结合,有很多地方值得我们借鉴,在其《软件保障手册》和MIL文件中,提出以下软件保障原则: 软件保障活动贯穿于系统获取的全过程 ·软件开发是一个不断改进软件的循环过程,从开发一个初始软件版本开始,然后是一个开发周期或多个后续软件版本。·只要软件的最基本要求或成本效益可以通过改变软件来实现,一旦实现,软件应该不断改进。应指定一个机构,如软件保障中心 (SSA),向项目主管提供 PDSS 要求,并在转移后执行具有成本效益的 PDSS 工作。政府指定的机构应执行关键任务任务关键计算机资源 (MCCR) 活动,以确保问责制,控制、连续性和一致性。关键活动包括:控制和确定软件基线;软件质量要求的定义和评估;系统级测试;和管理。· 用户和软件保障机构之间的直接通信链接对于帮助识别和隔离软件问题以及实现更快的保障和协作非常重要。
指代工开发后利用竞争进行商业维护。没有找到这种模式的代表。担保方式四:指代工开发完成后,代工和军工使用。联合维修,包括维修承包商的选举。这种模式在“国防支援计划”中采用。支持方式五:OEM开发完成后,OEM与军方共同维护。通常以OEM为主,成熟后维持军用。以人为本。在嵌入式软件中使用这种维护方法可能是因为嵌入式软件维护所需的详细知识很难从一个组织转移到另一个组织。担保方式六;是指开发完成后贴牌实施。商业维修(OEM也可以参与。) 担保方式七:与方式六不同的是,没有中间级别,没有OEM启动阶段。
没有发现使用此模式的案例。支援方式八:在军队为主力,有承包商支援的情况下进行支援。海军空军基地航空软件使用这种模式。支持方式九:仍以军方为主,前期由主机厂支持,未来由合同承包商提供。美军设想,每个软件维护中心应该有一个小的软件维护活动,其规模应该不低于每个软件维护中心的年成本1亿美元。对于单一武器平台中的嵌入式软件,长期的软件维护工作由主要组织 EM(原始设备制造商)执行,但应保留足够的基层维护工作,以保持精明买家的能力。对于非嵌入式关键任务软件,陆军通信电子司令部 (CECOM) 和空军航空航天系统维持小组 (SSSG) 采用的政府管理、承包商完成的集中维护模型继续进行。对于安全软件,由于软件工程知识比较容易转移,可以考虑100%的承包系统,降低成本。(六)提高美军武器装备软件保障能力的途径美国从1980年代中期开始研究软件保障能力,专门编制了《软件可维护性评估指南》,第三版发布1997 年发布。
美国空军软件技术保障中心自 1980 年代以来一直在编写《软件密集型系统的采购和管理指南》,到 1996 年,第三版已经发布。本指南详细调查美军现有软件系统失效的原因,搭建软件采购环境,提出软件采购工具和技术,强调软件工程在软件系统中的主导作用,大力倡导利用Ada进行军用软件开发,积极推进软件复用技术等。2)进行软件架构分析软件架构是软件最原始的产物,并且必然成为制约后续开发和整个软件系统质量的关键。在软件开发过程中,软件架构是软件相关各方联系的载体,代表着系统设计初期的一系列重要决策。成熟的软件架构可以为未来同类产品的开发提供参考。因此,在软件建设阶段,就开始对软件进行质量分析和风险控制,这是最具成本效益的。3)关注软件开发过程中知识的重用 软件开发过程的最终目标是生成满足项目要求的产品。该过程涉及开发人员,开发方法和相关工具。在开发过程中,开发方法是一个非常重要的方面。它包括项目估算、计划和管理、需求分析、设计、程序结构确定、算法设计、编码、测试和维护。工具为如何实现软件工程方法提供支持。例如,高级语言、设计工具、测试环境和设备、计算机辅助软件工程(CASE)、面向对象的软件工程工具。最佳实践是一组用于管理方法的程序。测试和维护。工具为如何实现软件工程方法提供支持。例如,高级语言、设计工具、测试环境和设备、计算机辅助软件工程(CASE)、面向对象的软件工程工具。最佳实践是一组用于管理方法的程序。测试和维护。工具为如何实现软件工程方法提供支持。例如,高级语言、设计工具、测试环境和设备、计算机辅助软件工程(CASE)、面向对象的软件工程工具。最佳实践是一组用于管理方法的程序。
为了达到生产出满足项目需求的产品的最终目标,并在相同条件下达到最佳保证,就需要实现这些方法、工具和最佳实践程序的最佳组合。这是一个寻求最专业组合的过程,而在这个过程中,我们必须注意知识的重用。例如,美军通过重用软件开发模型和并行工程,实现管理思想在软件开发中的重用,取得了很好的效果。二、美国陆军武器装备软件保障方案与计划研究;(一)美国陆军武器装备软件保障计划研究一、软件获取程序和方法美国 空军软件技术保障中心自 1980 年代软件密集型系统采购与管理指南第三版于 1996 年发布以来,一直在编制“软件技术保障中心”。该指南详细调查了现有软件系统失效的原因在美军中,构建软件采购环境,提出软件采购的工具和技术。强调软件工程在软件系统中的主导作用,大力提倡使用Ada进行军用软件开发,积极推广软件复用技术等。 2、软件可维护性评估技术 美国于1980年代中期开始软件可维护性。它的经典代表是“ 该指南详细说明了软件可维护性评估的程序和程序。这种方法对软件保障的发展具有重要意义。3.预测软件保障成本美国军方非常重视软件保障成本的预测,他们表示:“我们不关心软件保障成本的高额和每年的增长,但我们一定不知道软件保障成本会增加多少。”成本。该指南详细说明了软件可维护性评估的程序和程序。这种方法对软件保障的发展具有重要意义。3.预测软件保障成本美国军方非常重视软件保障成本的预测,他们表示:“我们不关心软件保障成本的高额和每年的增长,但我们一定不知道软件保障成本会增加多少。”成本。
”4。软件保障工具 软件保障工具包括软件工具和硬件工具。软件工具包括I-CASE、逆向工程、鉴证文档等;硬件配置主要用于软件的快速传输、分发、安装、培训等工具、设施及其软件。(二)美国陆军武器装备软件保障计划研究1)美国陆军武器装备软件计划典型保障模式由于计算机软件维护保障的特殊性,其保障模式不同于原有的硬件保障体系无法保持一致,事实上,由于各军种的体系不同,美军开发了多种软件保障模式,支持模式一:这意味着OEM完全由OEM开发和维护。只有一个案例(全球定位系统)采用了这种模式。模式。支持方式二:由OEM开发后,完全得到军方的支持。只有一个案例(WR空军后勤中心ATE)采用这种模式。支持方式三:即开发由主机厂完成,主机厂和主机厂采用。军队的联合维修,包括维修承包商的选举。支持方式四:支持以军队为主体,承包方支持。海军空军基地的航空软件采用这种模式。支持方式五:还是以军工为主,前期主要由主机厂支持,未来由合同承包商提供。美军设想确保每个软件维护中心都有小型软件维护活动,规模应以每个软件维护中心的年度成本为基础。不少于1亿美元。单一武器平台的嵌入式软件主要组织OEM(原始设备制造商)进行长期的软件维护工作,但应保留足够的基层维护工作,以保持精明买家的能力。不少于1亿美元。单一武器平台的嵌入式软件主要组织OEM(原始设备制造商)进行长期的软件维护工作,但应保留足够的基层维护工作,以保持精明买家的能力。不少于1亿美元。单一武器平台的嵌入式软件主要组织OEM(原始设备制造商)进行长期的软件维护工作,但应保留足够的基层维护工作,以保持精明买家的能力。
对于非嵌入式关键任务软件,陆军通信电子司令部 (CECOM) 和空军空间系统保障小组 (SSSG) 使用的政府管理、承包商完成的集中维护模型继续使用。对于安全软件,由于软件工程知识比较容易转化,所以可以考虑100%的承包系统来降低成本。2)美国陆军改进武器装备计划软件保障的方法 美国从 1980 年代中期开始研究软件保障。例如,美国空军司令部作战测试与评估中心专门编制了《软件可维护性评估指南》,1997年发布了第三版。本指南提供了软件可维护性评估的详细程序和方法,对软件保障的发展具有重要意义。(1)在软件采购中要注意安全。由于软件保障的特殊性,为了提高软件的可维护性,保证软件安全,要考虑软件的生命周期,要注意美国空军软件技术保障中心从 1980 年代开始编制((Software Intensive Systems Acquisition and Management Guide),到 1996 年已经发布了第三版。原因,构建软件采集环境,提出软件采集中的工具和技术,
例如,在沙漠风暴行动中,E-3机载预警机作为战场保障的综合部分,发挥了跟踪所有战场空中目标和指挥拦截的作用。E-3雷达中的许多软件都进行了修改。为此,专门派出软件保障小组直接进行软件维护,使E-3预警机的雷达软件在96小时内修正完毕,完成飞行检测并投入使用。2. 软件保障与硬件支持存在差异。随着软件和软件密集型系统的广泛使用,软件在现代军事斗争中发挥着越来越重要的作用,甚至改变了战争的形式和过程。同时,由于计算机软件本身的特点,传统的设备支持带来了新的挑战。主要区别在于设备采购方式;支持模式;支持人员;支持工具;和支持资金。
3. 软件保障费用呈上升趋势 软件保障费用日益增加。据美军1997年的统计,每年软件保障成本高达200亿美元以上,并呈逐年增长趋势。软件保障成本已成为软件系统生命周期成本的主要部分,占比过半。据美军预测,美军装备的软件中,将有30到40个软件随时处于维护状态。因此,美军从1980年代开始就非常重视软件保障的工程实践和理论研究。(二),美国陆军武器装备软件资源的维护与评估 1。军用软件的种类 根据软件支持的特点,军用软件可分为武器系统软件和管理信息系统软件两大类。其中,武器系统软件包括嵌入式软件、C3软件、智能软件以及其他严重影响武器系统任务或属于武器系统一部分的软件。管理信息系统软件包括信息系统资源(ISR)软件、自动信息系统(AIS)软件、信息资源管理(IRM)软件和其他非武器系统软件。2. 软件可维护性 软件可维护性是指软件产品被理解、修改和测试的难易程度。它与软件文档、源代码、实现等。软件可维护性对于软件而言是比硬件可维护性更重要的属性。硬件的可维护性只是对其可靠性的补充。在设计过程中,它可能经常与可靠性和性能等属性发生冲突。软件的可维护性与可靠性是一致的。可以说,一个具有良好可维护性的软件,必然具有良好的可靠性和保障。
3、软件评价理想的软件可维护性评价应直接针对软件修改效果的衡量,如记录修改时间和最终效果。但是,使用这些经典方法在软件可维护性评估中存在以下问题:(1)软件维护通常不是实时的,而是在基层进行的,基层设备和工具没有经过测试和测试)评估适用性。并非全部可用;(2)在适用性测试和评估之前或期间完成的软件维护通常不代表实际用例;(3)禁止在适用性测试期间提问和评估期 进行软件修改。目前,软件可维护性评价方法主要使用基于软件及其文档的问题,问题的设计基于软件可维护性因素。4. 软件保障 软件保障是指完成对软件的维护和改进、升级或其他变更。软件保障与软件的可维护性、适应性和可修改性有关,软件保障与软件生命周期过程、冗余计算能力、可维护性和计算机支持资源有关。(三)、美军武器装备软件资源保障的组织实施1.美军武器装备软件保障组织美国 军事武器装备软件保障组织是指为软件保障必须成立的组织,是软件保障实施的主体。它可以由软件开发单位或独立的保证单位来实施。开发人员进行软件维护保障的好处是:开发人员非常了解系统;无需细致的文档;不需要开发人员和维护人员,但是它的缺点是:如果只有维护任务,开发人员可以离开组织;如果主要开发人员离开,负责维护的人员无法得到适当的培训等。它可以由软件开发单位或独立的保证单位来实施。开发人员进行软件维护保障的好处是:开发人员非常了解系统;无需细致的文档;不需要开发人员和维护人员,但是它的缺点是:如果只有维护任务,开发人员可以离开组织;如果主要开发人员离开,负责维护的人员无法得到适当的培训等。它可以由软件开发单位或独立的保证单位来实施。开发人员进行软件维护保障的好处是:开发人员非常了解系统;无需细致的文档;不需要开发人员和维护人员,但是它的缺点是:如果只有维护任务,开发人员可以离开组织;如果主要开发人员离开,负责维护的人员无法得到适当的培训等。
由独立机构维护保证的优点是: 更好的文件;既定程序。缺点是:切换可能太慢;它需要大量的训练;担保机构的信誉较差。因此,对于大型组织(如军队、政府部门、大公司等),通常需要建立自己独立的软件维护组织。2.美军武器装备软件维护模型美军武器装备软件维护模型实际上就是软件维护过程。软件维护研究表明,一个成功的软件维护组织必须有一个反映其维护过程的软件维护模型。软件模型的分类,软件维护模型有两种,一种是面向过程的模型;另一种是维修组织或业务导向的模式。面向过程的模型主要关注:①要完成的活动;② 维护活动的顺序。它试图解决“谁做、做什么、在哪里做、何时做、如何做、为什么做”,有助于分享知识和经验,并鼓励人们更好地理解这个过程。面向组织或面向事务的维护模型研究相对较少。它不仅关注已完成的重要活动,更关注这些活动之间的信息流转美军装备试验与评估发展,即描述软件维护过程不同阶段所涉及的组织和人员,以及它们之间的关系。之间的沟通渠道。<
主要规定软件维护的程度、交付后流程的剪裁、维护人员或部门的承担、生命周期成本的估算等。软件维护计划应在软件开发的早期制定。软件维护的范围,也称为软件维护的程度,主要规定了维护组织将为用户提供多少维护。划分软件维护范围的方法有很多种。一般分为四个层次:第一层次是完全维护,第二层次是纠错维护,第三层次是有限的纠错维护,第四层次是有限的软件配置管理。至于使用哪种级别的维护,资金是限制软件维护程度的主要制约因素。2、美军武器装备软件维护计划完成后,应制定软件维护计划。软件维护计划主要用于解决这些问题。对于军用软件,软件维护计划是其CRLCMP(计算机资源生命周期管理计划)的一部分,对于其他维护组织,软件维护计划也是生命周期计划的一部分,或单独的软件维护计划。维护计划中考虑的主要因素通常是: 为什么要提供支持;谁将执行什么样的工作;每个成员将承担什么角色和职责;估计项目所需人员的规模;如何完成工作;有哪些可用资源;这些保障措施将在何时何地进行等。 2.2 美国陆军的软件可维护性评估 美国军方非常重视对软件可维护性水平的衡量和描述,指出其缺陷供订购者和开发人员使用。改进产品,并帮助软件保障机构 (SSA) 规范软件维护。所需资源。并帮助软件保障局 (SSA) 标准化软件维护。所需资源。并帮助软件保障局 (SSA) 标准化软件维护。所需资源。
有关软件可维护性评估的详细信息,请参阅美国空军作战测试与评估中心(AFOTEC)(1996)的《软件可维护性评估指南》。美军认为,理想的软件可维护性评估应该直接针对软件修改效果的衡量,比如记录修改时间和最终效果。但是,使用这些经典方法进行软件可维护性评估存在很多问题,例如:无法在现场实时实现软件维护,无法获得准确的修改时间和最终效果;软件维护在软件使用测试和评估(OT&E)期间或之前进行。软件维护不代表使用,并且收集的数据不能反映部署后的软件性能。因此,目前美军的软件可维护性评估主要是通过基于软件及其文档的问卷调查来进行的。即根据软件的各种可维护性因素设计问题,并在不同层次上进行评估,以发现可能的可维护性问题。这些级别包括:范围(例如,文档、源代码和实现)、属性(例如,模块化与稳健性)、组合(例如,计算机软件单元、模块等)。这些因素几乎包含在所有软件系统中,通常用于每个软件的可维护性评估。评估过程需要由软件测试经理(STM)、软件评估员(DSE)、仲裁员和评估员共同完成。