深圳市组创微电子有限公司
销售部:15338833908采购部:0755-8299 4126行政部:0755-8299 4126
咨询电话
0755-8299 4141

软件开发

软件分层管理方法


一种测控软件开发过程分层质量管理的方法

随着装备产品的不断提升和任务类型的不断增多,多学科、多任务、多个单位协作的复杂系统研制已成为目前装备发展的一个趋势,测控系统是复杂系统的统一调度中心,主要完成作战指挥、信息通信、武器控制、状态监测等多种重要功能。随着装备研制复杂度的增加,作为测控系统重要组成部分的测控软件所面向的服务对象和工作过程也变得越来越复杂,并已用于控制复杂的、时间关键的物理过程和硬件设备,基于此,测控软件已经成为复杂系统的关键核心。测控软件作为一种产品,也与其他产品一样存在着质量问题,质量管理对测控软件的成败有着直接的影响,一旦测控软件因质量问题出现错误或失效,就会造成系统危险或灾难性的后果。在2007年5月美国地基中段防御系统拦截导弹试验失败,其主要原因就是在地面试验时测控软件出现了“非常小”的故障。资料表明,在复杂装备系统故障中,测控软件故障占了较大的比例。因此,测控软件开发的质量管理正是减少软件缺陷,提升软件质量的根本保证。

一、复杂系统测控软件的特点

测控软件开发实施过程也是软件质量形成的过程,涉及测控软件产品的各个层面。复杂系统的测控软件既具有软件的共性,也有自身的特点。以研制的某复杂系统测控软件为例,特点如下:

1)任务功能复杂,软件配置项多。具有运行状态的实时监测、嵌入式实时发射控制、通信调度、目标引导、时统等功能。软件配置有9个,源程序代码近10万行。

2)存在基于不同开发环境的应用软件,生成基于实时操作系统的嵌入式软件和基于VC++的应用软件,控制过程复杂。需要采用不同的软件编码规范,代码逻辑判断过程复杂度高。

3)复杂系统的分系统较多,测控软件的内外接口多,形成分布式的软件控制,具有多通道、大容量、高速率的实时数据采集。

上述特点,决定了复杂系统的测控软件质量控制的复杂性和质量管理难度。测控软件项目的质量管理人员如何在复杂的软件开发过程中理清思路,实现软件开发过程有效的质量管理,控制和保证测控软件质量,探索提升软件开发质量的途径,已成为当前软件研究领域的一个热门课题。有效的质量管理主要是从人员的因素和方法因素来实现,因此,本文结合复杂系统测控软件特点,提出了一种分层质量管理的结构管理模式,通过基于技术分层模型的测控软件质量管理方法实现测控软件的质量管理和控制,并在实际系统中应用验证。

二、分层质量管理结构模式

现阶段,软件质量管理存在两种模式。第一种质量管理的结构见图1。在这种质量管理模式下,所质量管理部门对测控软件开发实施的质量管理主要是软件开发部门的设计人员按照制定的质量计划流程执行,通过提供证据的形式将各种流程执行后的数据反馈给所级质量管理部门。在理想情况下,质量管理部门与软件开发部门之间应形成的是一个PDCA的逆时针良性质量管理环,但实际上,这种管理模式存在两个问题:

图 1 第一种软件开发质量管理结构

第一:软件开发部门提供的度量数据能否真实地反映软件质量。显然,软件质量的好坏在目前的软件行业都无法找到一个确切的评价指标。在项目六性分析中,在考虑软件可靠性时,其任务可靠度都是按照1来假定的,因此通过数据和流程分析是不能完全评价软件质量的;第二:是否存在软件文档与设计不完全相符的情况。例如:某系统测控软件在仿真环境下完成了开发和测试后集成在测控车上试验,并根据试验的要求按照更改流程进行了软件的修改,但是,是否同时对测控软件的文档(需求说明、详细设计等)进行了相应的更改存在不确定性。因此,提出第二种质量管理模式,是一种分层管理结构,也是目前测控软件采用的质量管理模式。见图2。

图 2 第二种软件开发质量管理的结构示意图

在这种质量管理结构下,实现分层管理,所级质量部门定位在按照体系管理,增加软件项目质量管理层,该层人员来自于软件开发部门,与软件开发部门存在交集,是熟悉软件设计和管理流程的软件技术人员。软件项目的质量管理人员具有承上启下的作用,一方面帮助所级的质量管理部门了解软件的真实状况,接受所级质量管理部门的质量体系和执行体系流程建议;另一方面,帮助开发部门理解质量问题的根源和寻求技术解决方案。在测控软件开发上应实行“设计(软件开发)、评测(项目质量管理)、监管(所质量管理)”分层负责的原则。显然,这种分层质量管理的结构模式更适应当前复杂系统测控软件开发过程。

三、基于技术层次模型的质量管理

通常,软件研发前期的质量保证主要依靠软件需求分析、软件设计(概要设计与详细设计)、软件研发(软件单元设计、软件编码、分系统联调、软件系统集成等),后期的质量保证则主要依靠软件测试、故障归零、第三方评测等过程。由于复杂系统测控软件涉及过程多且复杂,如果按照过程进行质量管理,可能会存在重复管理或管理内容的缺项。通过建立基于技术层次模型软件质量管理过程,可以解决上述问题。软件质量管理技术层次主要是对数据、编程、文档的质量管理。

四、测控软件开发分层质量管理中的难点问题解决

通过对几个复杂系统测控软件开发采用分层质量管理实践中发现难点问题主要有2个:版本的控制问题和文档与实际设计不相符的问题。这两个问题在其他软件开发管理中也较为普遍。针对测控系统由于其接口较多,评测后需要根据试验要求更改的内容必然也较多,如果软件开发人员多次更改软件版本,但并未清晰标识,时间一长,会出现软件开发人员自己也不清楚哪个版本才是用于试验的;修改了设计代码,又不同时修改文档,文实不符现象将严重影响测试人员和使用方。因此这2个难点问题在分层质量管理中也更为突出。为了解决上述难点问题,采用了软件配置管理工具和相应的技术措施。

软件配置管理工具是测控软件开发分层质量管理的关键工具。目前我们使用的是TestBed进行配置管理。测控软件的项目质量管理人员采用软件配置管理实现了对软件版本升级管理,并且对于每一个软件配置对象都建立一个演变图,用演变图来记录对象变更的历史。

配置管理工具由测控软件的项目质量管理人员集中管理,实现安全授权机制,具有加锁功能,软件集成测试通过之后,软件进入配置库管理,软件设计人员按照流程更改软件,必须由质量管理人员从配置库里提取源程序,由设计人员进行修改,修改完毕后填写更改代码记录,更换版本,修改文档,入库。质量管理人员通过技术手段实施质量检查记录:①确认更改记录与更改源代码的一致性。采用Beyond代码比对软件,比对更改前后的源代码与更改记录是否一致;②应用配置工具记录版本变更;③确认配置库中更改前后文档的一致性。确保文实相符。

同时,为了避免软件开发人员在试验现场随意更改软件,造成现场使用软件与入库软件不一致。采取的技术措施是:运行软件的计算机不允许安装软件开发环境,应用软件以可执行文件(.exe)的方式发布,并有软件管理人员记录发布日期,定期检查,从技术强制措施上避免了测控软件的随意更改,有效地解决了质量管理过程中的难点问题。

总结

实践表明:采用分层质量管理模式和基于技术层次模型的测控软件开发质量管理方法是可行的,试验中软件运行的稳定性,满足了试验需求。虽然上述方法是在测控软件开发质量管理过程中总结归纳的,但也具有共性,适用于其他软件的质量管理过程。同时,也需要注重其他两个层次管理:建立软件管理的体系标准,加强开发人员质量意识的培养,最终实现全面的软件开发质量管理,提升软件质量。

以上就是我们深圳市组创微电子有限公司为您介绍的一种测控软件开发过程分层质量管理的方法。如果您有智能电子产品的软硬件功能开发需求,可以放心交给我们,我们有丰富的电子产品定制开发经验,可以尽快评估开发周期与IC价格,也可以核算PCBA报价。我们是多家国内外芯片代理商:松翰、应广、杰理、安凯、全志、realtek,有MCU、语音IC、蓝牙IC与模块、wifi模块。我们的拥有硬件设计与软件开发能力。涵盖了电路设计、PCB设计、单片机开发、软件定制开发、APP定制开发、微信公众号开发、语音识别技术、蓝牙wifi开发等。还可以承接智能电子产品研发、家用电器方案设计、美容仪器开发、物联网应用开发、智能家居方案设计、TWS耳机开发、蓝牙耳机音箱开发、儿童玩具方案开发、电子教育产品研发。

注:部分图片内容来源于网络,如有侵权,请联系删除。

使用该技术的解决方案

  • 返回顶部