航空软件的质量监督管理

点赞:4434 浏览:14725 近期更新时间:2024-01-25 作者:网友分享原创网站原创

摘 要:随着我国军事化现代化水平的逐步提高,软件产品在现代武器装备中所占比例越来越高,功能越来越复杂,软件质量监督的任务也越来越重.本文结合国内军用软件的质量现状,对军用软件开发过程中的质量监督方法和策略进行了简要的阐述.

关 键 词:航空软件质量监督

1概述

目前,我国新一代战斗机的航电系统超过80%的功能需要由软件实现,但交付验收时发现的缺陷率较高.因此,根据我国航空软件的现状,要提升我国航空软件的质量必须按照软件工程化的要求开发软件,严格进行软件质量监督管理,加强软件可靠性设计、管理、测试和验证,不断改进软件工程过程.本文就航空软件的质量分析、航空软件开发的质量监督等,作进一步的研究和探讨[1].

2航空软件的质量分析

在目前的航空软件的研制中,软件开发单位根据国际标准制定出相应的开发规范,并从具体的操作流程中予以监督,以此来确保航空软件的质量.按照国军标建立健全了质量管理体系,通过了体系认证,进行了许多软件质量控制与管理方面的基础性和系统性工作,但在实际开发中,软件的质量风险依然存在,软件工程活动仍不健全,存在着一些问题.由于部分软件开发人员对标准和规范的理解不够到位或有一定偏差,有些软件项目人员对标准和规范的遵守更多倾向于被动应付.在软件相关文档的编写上,普遍存在描述偏于模糊简略,一致性较差,对软件的实现、测试和维护造成一定难度.软件工程化开发过程中的质量问题主要表现为以下几点[2].

2.1软件的需求定位不够准确

一般情况下,在软件开发前,开发单位会先分派特定人员进行需求调查,分析调查结果,再根据需求量的多少进行统一生产.然而实际情况是,开发人员由于对软件需求意愿分析不足,定位不准,就容易造成软件规格的偏差,无法保证软件系统的功能性能、数据、接口、信息流和质量等.


2.2软件设计不够规范

在软件设计过程中,软件设计文档的编制不规范,文档的编制水平和质量参差不齐.文档描述过于简略,对于定义各功能模块的接口、控制接口的描述不全面,设计限制未明确规定,对软件单元过程陈述,包括算法和内部数据结构在内的设计很薄弱.同类型装备之间的软件通用性和继承性比较差,软件模块的标准化系数不高,系统的维护费用非常高,软件正常的更改都必须付出很高的代价,不利于软件的功能扩充,造成经费和时间的浪费以及可靠性的降低.

2.3软件测试较为薄弱

在航空软件开发过程中,很多软件项目成员从思想上不够重视软件测试工作,认为软件只要经过了仿真或者在线调试的验证,就不会出现质量问题.有些测试人员本身对测试工作也缺乏足够认识,对测试理论缺乏深入研究,测试的手段相对落后.在实际的软件测试过程中,并没有严格地按照单元测试、部件测试、集成测试和系统联试的顺序进行,内部测试工作因缺乏规划与工具等难以顺利开展,这就导致很多测试只是例行检查,测试工作不够深入细致,很难发现潜在的设计问题,直到出现严重质量问题后才回头改进设计,造成工作重复,效率低下.

2.4软件工程化开发管理经验不足

首先表现在管理层对软件工程化开发管理在观念转变及近、远期利益权衡方面的认识不足,没有高层的强力支持,软件工程化活动的开展和深入推进举步维艰.软件开发人员往往多是应用领域的专家,缺少如何理解以及正确利用现代软件工程等方面的教育,在实际工作中对于实行软件工程化活动多有抵触,重编程轻文档,忽视软件文档对于软件实现、测试及维护的重要作用.承制单位缺乏统一有效的开发管理体系,难以保证软件开发人员在自顶向下的设计过程不断进行设计验证与优化,并将阶段设计成果在开发过程实现重用,最大限度地降低开发团队的重复性工作,提高软件开发的工作效率.

3航空软件开发的质量监督

能否保质高效地做好航空软件质量监督工作作为检验军代表工作称职与否的砝码,成为当前航空软件开发质量监督工作的重点.为了做好软件质量监督工作,提高软件质量监督水平,尤其是提高日常的软件质量监督水平,应该加强对软件开发质量监督管理的力度[3].

3.1基于需求管理的监督

在航空软件的开发过程中,关键要把握好软件项目的需求开发.软件项目需求是使用对象对软件功能的要求,它具有模糊性、不确定性和变化性的特点.需求变更是因为用户的需求发生了变化,需求变更在软件项目的生存周期内普遍存在.如果开发团队缺少明确的需求变更控制过程,就容易造成成本不足、进度拖延、资源紧缺等严重后果.因此,在监督时,必须以需求变更为重点,对项目需求管理进行控制.

首先要加强军方在需求定义阶段的主导作用.需求定义工作主要由软件开发人员承担,但其中必须要加强军方的有效参与,充分发挥军方在需求定义中的主导作用,这是军方从总体上把握软件质量的根本措施,对于提升软件需求的正确性、一致性和完整性大有帮助.军方可以在适当的条件下,运用多种表达方式参与到定义系统需求的相关工作中,从而最大限度地将自己的要求和想法反映给软件开发人员.

其次,软件的需求分析要严格把关.具体来说,要注意以下几点:①需求的准确性:每一条需求都必须准确反映软件系统的工作内容;②需求的明确性:每条需求的解释必须是唯一的,不能有歧义;③需求的完整和全面性:所有的需求必须要能完整全面地反映软件的功能类型,不能出现遗漏;④需求的重要等级:根据需求重要性的不同,将需求划分等级.一旦出现资金和技术性困难时,根据等级的高低决定先后次序,开展需求工程;⑤需求的可测试性:必须保证需求是可以进行检查和实验的;⑥需求可改性:每一条需求都能进行变更,且在变更之后,保留原有需求集的整体风格和结构;⑦需求可追踪性和可控性:每条需求都是可溯源的;⑧需求的理解性:使用者和技术开发人员都能完全理解和把握需求集的整体行为、功能意义及各需求的含义.需求的变更也是需要着重监督、严格控制的重要行为,需求发生变更的主要原因有:随着项目进展,发现原来的需求可能存在错误或不足,因此要变更需求;用户要求发生变化,原来的需求可能跟不上新的用户需求,因此需要变更需求.一旦需求发生变化,就需要相应的修改已有的设计,重写相关代码,变更测试计划等一系列变动.

因此,必须对需求的变更加强管理,严格控制,以防发生重大的设计偏差.军代表在需求变更的管理控制过程中需要做到积极主动地与设计人员进行沟通,做到供需双方对需求的认识严格一致;同时督促承制单位做好有效地需求管理机制,严格按照相关管理规定履行自己的监督责任.

3.2基于配置管理的监督

软件配置管理(SCM)是一种标识、组织和控制修改的技术,应用于整个软件工程过程,其目的是使错误率降为最小并最有效的提高生产效率.软件配置管理能够帮助软件开发人员管理和追踪软件开发环境中产生的变更,建立规范化的软件开发环境,是确保软件配置项完整性和正确性的重要手段.它关系到软件开发研制工作的有效性、软件产品的可用性和可信性.在整个软件生命周期内,软件配置管理要控制软件配置项的发布和更改,记录并报告配置的状态和更改要求,验证配置项的完整性和正确性,它贯穿于软件开发和使用的整个过程.军代表需监督软件承制单位对整个软件生存周期内的软件配置项进行软件配置管理.

①对软件承制单位的建立及其软件配置的管理进行有效监督.软件配置管理主要通过技术手段对开发流程和生命周期进行控制,以确保软件在生命周期的各个阶段都能得到精确的产品配置.在对软件配置管理进行检查时,要着重检查软件配置的标志、状态、评价以及发行等.检查软件配置流程是否完整和流畅.②对软件项目开发单位及实施“三库”进行有效监督.所谓“三库”是指开发库、受控库和产品库.在监督时,要着重检查“三库”,确保其完整、齐全、准确.另外软件的配置和文档要求的落实也是检查的重点.③对软件项目需求与变更管理进行有效监督.在航空软件开发过程中,难免会出现需求变更.而需求变化势必会对软件的开发投入造成影响.因此,控制软件需求变更,监督软件质量管理很有必要.军代表在监督时,要重点监督软件开发单位的项目变更管理和执行流程.

3.3基于GJB5000A推进过程的监督

我国在结合国外经验和本国实际的基础上,制定出了航空软件的标准.即2008年制定并颁布的GJB5000A《军用软件研制能力成熟度模型》标准.这一标准对我国国防军用软件标准进行了严格统一的限制,对保障我国军用武器装备质量和提高军队作战实力意义重大.该标准将软件能力的成熟程度划分为五个等级和22个关键过程域.模型等级越高,可以预计的软件开发风险越低,开发能力越高.为在装备软件研制单位推动软件工程化实施,满足GJB5000A的实施要求,在软件工程化推进过程中军代表应重点关注以下几个方面.

①选择合适的方法与技术.其中主要包括软件开发的一般原则、工作框架、开发策略和若干实用技术,如生存周期模型、自顶向下方法、结构化开发方法、面向对象的方法、需求工程和测试技术等.②提供必要的工具与环境.软件工程方法提供自动和半自动的软件支撑环境,在提高生产效率和保证质量方面收效明显.③严格管理制度.软件开发单位在开发研制过程中,一定要严格把关,建立完备的管理机制,划分责任区,制定责任人,明确工作内容.研制单位要根据实际需求成立相关的组织和管理部门,安排具体的软件工程小组.各技术工作人员要各司其职,严把质量关.

4结束语

开发航空软件是我国现代军事建设的重要方面,其中软件质量是开发的关键.因此,做好软件质量的监督与管理至关重要.航空软件的质量监督与管理工作是一项大工程,必须谨慎对待,只有做好了前期策划和后期执行工作,才能确保软件质量,提升现代军事装备的整体战斗力.