软件测试失效案例分析代码类缺陷纠正措施显而易见课件_第1页
软件测试失效案例分析代码类缺陷纠正措施显而易见课件_第2页
软件测试失效案例分析代码类缺陷纠正措施显而易见课件_第3页
软件测试失效案例分析代码类缺陷纠正措施显而易见课件_第4页
软件测试失效案例分析代码类缺陷纠正措施显而易见课件_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件测试失效案例分析中航一集团软件可靠性管理与测评中心王轶辰软件测试失效案例分析1 报告提纲 研究软件失效的目的 软件失效的产生机理 软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 报告提纲 研究软件失效的目的首届军工产品软研究软件失效的目的软件质量是软件的生命;软件失效是影响软件质量的关键;软件缺陷是导致软件失效的根本原因;软件缺陷是软件系统的根本属性之一;软件缺陷归根结底由人为因素造成。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的软件质量是软件的生命;首届军工产品软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心首届军工产品软件测试技术专题研讨会中航一集团软研究软件失效的目的目前的软件开发仍然是一种“个人行为”,一个人的经验、知识和能力总是有限的;软件的个体特征体现在两个方面:应用域的特殊性和编程者的特征;每一个具体软件所处理的应用域问题各不相同,软件表现个体特征。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的目前的软件开发仍然是一种“个人行为”,一个研究软件失效的目的缺陷分析需要总结各种各样的缺陷,找到一种对“群体行为”的分析;缺陷研究的结果应该“知识化”,并建立某种形式的缺陷知识库;将群体的知识固化下来,有利于指导个体的行为。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的缺陷分析需要总结各种各样的缺陷,找到一种对软件测试失效案例分析代码类缺陷纠正措施显而易见课件7

提纲 研究软件失效的目的 软件失效机理的探讨 软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 提纲 研究软件失效的目的首届军工产品软件测试软件失效机理的探讨缺陷产生的原因可以归结为软件生产者的的错误所致;缺陷的产生出现在软件生产过程中的各个环节,不同的生产者由于各自知识的有限而制造出来;软件的缺陷具有相对性和演化性。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件失效机理的探讨缺陷产生的原因可以归结为软件生产者的的错误软件测试失效案例分析代码类缺陷纠正措施显而易见课件10软件失效机理的探讨如图所示软件开发的不同阶段由于执行者对上层设计的认识不充分而导致本阶段的软件实现与上一层的设计意图不相符,即产生了缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件失效机理的探讨如图所示软件开发的不同阶段由于执行者对上层

提纲 研究软件失效的目的

软件失效机理的探讨

软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 提纲 研究软件失效的目的首届军工产品软件测软件测试典型失效从以下两个方面描述一个失效或缺陷:失效表现—软件动态运行中所表现出来的功能或性能方面的欠缺;缺陷分析—导致软件失效的原因所在;纠正措施—软件测试者提出的修改建议或开发方进行的改正方案。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件测试典型失效从以下两个方面描述一个失效或缺陷:首届军工产需求类缺陷(一)需求缺陷是在软件需求到软件设计的转换过程中由需求制定者产生于软件需求之中的隐患;软件的需求类缺陷主要产生于:软件应用领域的不确知性;设计者对软件应用领域认识不充分;设计者考虑不周导致的需求缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(一)需求缺陷是在软件需求到软件设计的转换过程中由需求类缺陷(二)失效表现在空间辐射环境中,计算机按照一个不确定的流程执行,导致程序执行逻辑混乱。缺陷分析在空间辐射环境中,一些能谱宽、分布广的高能级重粒子和太阳耀斑质子,对具有存储记忆功能的半导体器件会产生电离现象,引起晶体管的敏感区沉积足够多的电荷,造成CPU寄存器或存储器RAM单元发生二进制逻辑位翻转。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(三)纠正措施增强器件的抗单粒子翻转能力;对重要和关键的程序段,增加程序复执和指令复执等容错设计;对主要的控制参数和状态标志等,采用先三取二多数表决后使用,并增加截取有效位数、数据平滑滤波、域值分析、微量修正和数据冗余等容错设计。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(四)失效表现飞行过程中,设备出现掉电情况,在飞行结束后,发现存储在非易失存储器中的故障信息丢失了。缺陷分析需求中制定非易失存储器的自检测机制中,没有考虑对非易失特性的测试。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(五)纠正措施需求中规定,在NVRAM中专门设置一个检测区,并预先规定了两个写入值,在每次断电前写入一个值,在每次开机检测时,检查该值是否与上一次断电前的值相同。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(六)失效表现飞机飞越东西经180度线时,计算错误,导致飞机沿相反方向飞行。缺陷分析需求中设计的地理坐标系到大地坐标系转换的公式中,没有考虑到东西经180度(正负180度)是同一条经线的特殊情况。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(七)纠正措施软件人员将需求中飞机经纬度转换为平面坐标的公式进行了修改,加入了对经度等于和大于180度以及小于等于-180度情况的特殊处理,修改了缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(七)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(八)失效表现某飞行控制软件在同时遇到多个交联设备出现不同故障的情况下,软件对故障的处理与预期不一致。失效分析需求中未对可能出现的故障进行等级划分,且每种故障的处理也不尽相同,于是在故障组合发生的情况下,软件没有按照预期的故障处理情况进行处理。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(八)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(九)纠正措施需求制定者根据实际使用情况,对软件需要处理的各种故障按照优先级进行了排序,并且重新规定了各级故障的处理方式,使得多个故障同时发生的情况下优先处理高级别故障。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(九)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(一)设计缺陷是在软件需求到软件设计的转换过程中由设计者产生于软件设计之中的隐患。软件的设计类缺陷主要产生于:设计者对需求的理解不充分;设计者对程序语言的理解不充分;设计者疏忽导致的设计纰漏。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(一)设计缺陷是在软件需求到软件设计的转换过程中由设计类缺陷(二)失效表现飞行前自检测过程中出现A/D接口故障,导致软件死机,不再响应外部命令。缺陷分析软件设计中使用无限循环结构作为等待接口信号的机制,一旦A/D接口出现故障无法发出信号,软件陷入死循环。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(三)纠正措施在设计的循环结构中加入了延时退出的判断条件,使得出现A/D接口故障后,延时一段时间,循环自动退出,并且进入错误处理程序。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(四)失效表现多个航路点位置重叠时,飞机直线飞行,失去控制。缺陷分析设计中缺少对这种情况的考虑,且代码中没有对除零情况进行保护。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(五)纠正措施设计人员对上述问题进行了双重保护:首先,在航路点输入、修改、删除等操作流程中增加了对相同航路点情况的判断,避免此种情况的出现;其次,在程序设计的待飞距计算公式中,增加了对分母为零情况的判断和相应处理。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(六)失效表现设备掉电重启后,飞机不再按照掉电前的飞行状态进行飞行。缺陷分析软件设计中没有将飞机的重要飞行状态信息保存在非易失存储器中。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(七)纠正措施设计人员根据需求重新对程序变量进行了分析,找出了其中影响飞行姿态和航迹的关键变量,在每个程序运行周期内都将这些变量往NVRAM中存储一次,有效地防止了掉电重启对重要数据的损坏情况。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(七)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(八)失效表现任务机软件为导弹提供任务数据,由于数据不够精确,导致导弹的命中率很低。缺陷分析在任务机软件的设计中,任务数据的计算按照地理平面坐标进行,与实际的地球坐标相差较大。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(八)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(九)纠正措施重新设计了软件中的任务数据计算方式,将平面坐标改为使用球面坐标,事实证明极大的提高了任务数据的精确性,导弹的打靶准确度得到改善。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(九)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(一)代码缺陷是在软件设计到软件代码的转换过程中由编程者产生于代码中的隐患。软件的代码类缺陷主要产生于:编程人员的疏漏;对软件设计理解的不充分;对程序运行环境的了解不充分。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(一)代码缺陷是在软件设计到软件代码的转换过程中由代码类缺陷(二)失效表现1962年7月22日,携带着飞向金星的无人驾驶飞船水手1号的火箭在升空290秒之后毁掉了。缺陷分析地面计算机的程序:Ifnot雷达能够与火箭联系then不要纠正火箭的飞行路线

但由于错误,语句中的not被丢掉了。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会代码类缺陷(三)纠正措施显而易见,当然是直接修改了代码。NASA对这个缺陷的调查表明:代码检查和程序测试都是不完全的,它们都是基于检查者和测试者的想象力和洞察力;程序测试能说明程序错误的存在,但却不能说明它们不存在!首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(四)失效表现删除航点时,多拷贝了一个航点。若航线的长度为150时,会出现数组越界。缺陷分析航线中的航点保存在一个长度为150的数组中,删除航点的操作是每次删除一个点,并且将后面的元素往前移一个,缺陷产生于对数组中最后一个航点的删除操作中。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会代码类缺陷(五)纠正措施在删除航点的代码中,增加了对是否为数组中最后一个航点的判断,如果为最后一个航点则不再将后面的数据向前移动,同时删除其他航点时,后面的航点也仅限于数组内的数据向前移。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(六)失效表现计算机采用8086+8087方式,计算采用短实数格式,偶尔发生计算失败。缺陷分析由于输入量中有接近零的情况,因此计算的个别中间结果有可能小于短实数格式的最小值,另外由于8087是80位二进制运算,但对它设置为短实数格式,并且在计算过程中有小于短实数格式的最小值的数字量出现时,8087就发生下溢,因为程序没有对8087下益的处理,所以8087向8086送回一个未规格化的结果。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会代码类缺陷(七)纠正措施这个问题的解决有两种方法:当8087产生下溢时引发一个8086中断,在中断程序中进行下溢处理,这种方法在没有下溢出现时,并不增加时间开销,但要改变硬件连接;对计算的中间结果进行判别,当小于10-8时,就以机器零代替。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(七)纠正措施首届军工产品软件测试技术专题研讨会

提纲 研究软件失效的目的

软件失效机理的探讨 软件测试典型失效

有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 提纲 研究软件失效的目的首届军工产品软件测试技有效的软件测试每种测试技术(方法)都针对某一类(或几类)缺陷具有超出其他方法的优势;从实践来看,每一种测试技术(方法)都不可能发现一个软件中的所有缺陷;在软件生命周期的不同阶段,需要使用不同的测试技术(方法)找出不同类型的缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心有效的软件测试每种测试技术(方法)都针对某一类(或几类)缺陷代码审查技术一种静态测试方法;通过试验统计数据,被某些机构认为是最有效的一种测试方法;从实践经验来看,代码审查是一种对测试者水平要求很高的一种方法;从对软件缺陷的分类来看,代码审查适合测试出代码类缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码审查技术一种静态测试方法;首届军工产品软件测试技术专题研代码审查技术发现代码类缺陷对测试者的要求:充分了解被测代码的编程语言特性;充分了解被测代码所运行环境的特性;充分了解软件设计的思想;发现设计类和需求类缺陷的要求:理解被测软件的需求;掌握被测软件的应用域知识;首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码审查技术发现代码类缺陷对测试者的要求:首届军工产品软件测系统测试技术一种动态测试方法;关心软件的动态行为(性能和功能),不关心软件的实现结构;系统测试的依据主要为软件的需求和用户手册以及任务书等;系统测试是一种较为综合的方法,三类缺陷均可发现。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心系统测试技术一种动态测试方法;首届军工产品软件测试技术专题研系统测试技术系统测试的充分性很大程度受限于依据文档的质量和测试者的专业知识。测试者应具备的素质包括:充分了解被测软件所支持的设备的基本原理与功能;充分了解被测软件所处理的应用领域中的相关知识。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心系统测试技术系统测试的充分性很大程度受限于依据文档的质量和测总结研究软件的失效可以让开发者的“盾”更坚,让测试者的“矛”更锋。软件缺陷的产生归根结底由人为因素导致。知己知彼,方能百战百胜,典型缺陷的分析有助于认识软件的本质。认识缺陷,可以让软件测试有的放矢,提高测试质量。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心总结研究软件的失效可以让开发者的“盾”更坚,让测试者的“谢谢!中航一集团软件可靠性管理与测评中心

谢谢!中航一集团软件可靠性管理与测评中心46软件测试失效案例分析中航一集团软件可靠性管理与测评中心王轶辰软件测试失效案例分析47 报告提纲 研究软件失效的目的 软件失效的产生机理 软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 报告提纲 研究软件失效的目的首届军工产品软研究软件失效的目的软件质量是软件的生命;软件失效是影响软件质量的关键;软件缺陷是导致软件失效的根本原因;软件缺陷是软件系统的根本属性之一;软件缺陷归根结底由人为因素造成。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的软件质量是软件的生命;首届军工产品软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心首届军工产品软件测试技术专题研讨会中航一集团软研究软件失效的目的目前的软件开发仍然是一种“个人行为”,一个人的经验、知识和能力总是有限的;软件的个体特征体现在两个方面:应用域的特殊性和编程者的特征;每一个具体软件所处理的应用域问题各不相同,软件表现个体特征。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的目前的软件开发仍然是一种“个人行为”,一个研究软件失效的目的缺陷分析需要总结各种各样的缺陷,找到一种对“群体行为”的分析;缺陷研究的结果应该“知识化”,并建立某种形式的缺陷知识库;将群体的知识固化下来,有利于指导个体的行为。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心研究软件失效的目的缺陷分析需要总结各种各样的缺陷,找到一种对软件测试失效案例分析代码类缺陷纠正措施显而易见课件53

提纲 研究软件失效的目的 软件失效机理的探讨 软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 提纲 研究软件失效的目的首届军工产品软件测试软件失效机理的探讨缺陷产生的原因可以归结为软件生产者的的错误所致;缺陷的产生出现在软件生产过程中的各个环节,不同的生产者由于各自知识的有限而制造出来;软件的缺陷具有相对性和演化性。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件失效机理的探讨缺陷产生的原因可以归结为软件生产者的的错误软件测试失效案例分析代码类缺陷纠正措施显而易见课件56软件失效机理的探讨如图所示软件开发的不同阶段由于执行者对上层设计的认识不充分而导致本阶段的软件实现与上一层的设计意图不相符,即产生了缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件失效机理的探讨如图所示软件开发的不同阶段由于执行者对上层

提纲 研究软件失效的目的

软件失效机理的探讨

软件测试典型失效 有效的软件测试首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心 提纲 研究软件失效的目的首届军工产品软件测软件测试典型失效从以下两个方面描述一个失效或缺陷:失效表现—软件动态运行中所表现出来的功能或性能方面的欠缺;缺陷分析—导致软件失效的原因所在;纠正措施—软件测试者提出的修改建议或开发方进行的改正方案。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心软件测试典型失效从以下两个方面描述一个失效或缺陷:首届军工产需求类缺陷(一)需求缺陷是在软件需求到软件设计的转换过程中由需求制定者产生于软件需求之中的隐患;软件的需求类缺陷主要产生于:软件应用领域的不确知性;设计者对软件应用领域认识不充分;设计者考虑不周导致的需求缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(一)需求缺陷是在软件需求到软件设计的转换过程中由需求类缺陷(二)失效表现在空间辐射环境中,计算机按照一个不确定的流程执行,导致程序执行逻辑混乱。缺陷分析在空间辐射环境中,一些能谱宽、分布广的高能级重粒子和太阳耀斑质子,对具有存储记忆功能的半导体器件会产生电离现象,引起晶体管的敏感区沉积足够多的电荷,造成CPU寄存器或存储器RAM单元发生二进制逻辑位翻转。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(三)纠正措施增强器件的抗单粒子翻转能力;对重要和关键的程序段,增加程序复执和指令复执等容错设计;对主要的控制参数和状态标志等,采用先三取二多数表决后使用,并增加截取有效位数、数据平滑滤波、域值分析、微量修正和数据冗余等容错设计。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(四)失效表现飞行过程中,设备出现掉电情况,在飞行结束后,发现存储在非易失存储器中的故障信息丢失了。缺陷分析需求中制定非易失存储器的自检测机制中,没有考虑对非易失特性的测试。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(五)纠正措施需求中规定,在NVRAM中专门设置一个检测区,并预先规定了两个写入值,在每次断电前写入一个值,在每次开机检测时,检查该值是否与上一次断电前的值相同。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(六)失效表现飞机飞越东西经180度线时,计算错误,导致飞机沿相反方向飞行。缺陷分析需求中设计的地理坐标系到大地坐标系转换的公式中,没有考虑到东西经180度(正负180度)是同一条经线的特殊情况。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(七)纠正措施软件人员将需求中飞机经纬度转换为平面坐标的公式进行了修改,加入了对经度等于和大于180度以及小于等于-180度情况的特殊处理,修改了缺陷。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(七)纠正措施首届军工产品软件测试技术专题研讨会需求类缺陷(八)失效表现某飞行控制软件在同时遇到多个交联设备出现不同故障的情况下,软件对故障的处理与预期不一致。失效分析需求中未对可能出现的故障进行等级划分,且每种故障的处理也不尽相同,于是在故障组合发生的情况下,软件没有按照预期的故障处理情况进行处理。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(八)失效表现首届军工产品软件测试技术专题研讨会需求类缺陷(九)纠正措施需求制定者根据实际使用情况,对软件需要处理的各种故障按照优先级进行了排序,并且重新规定了各级故障的处理方式,使得多个故障同时发生的情况下优先处理高级别故障。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心需求类缺陷(九)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(一)设计缺陷是在软件需求到软件设计的转换过程中由设计者产生于软件设计之中的隐患。软件的设计类缺陷主要产生于:设计者对需求的理解不充分;设计者对程序语言的理解不充分;设计者疏忽导致的设计纰漏。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(一)设计缺陷是在软件需求到软件设计的转换过程中由设计类缺陷(二)失效表现飞行前自检测过程中出现A/D接口故障,导致软件死机,不再响应外部命令。缺陷分析软件设计中使用无限循环结构作为等待接口信号的机制,一旦A/D接口出现故障无法发出信号,软件陷入死循环。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(三)纠正措施在设计的循环结构中加入了延时退出的判断条件,使得出现A/D接口故障后,延时一段时间,循环自动退出,并且进入错误处理程序。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(四)失效表现多个航路点位置重叠时,飞机直线飞行,失去控制。缺陷分析设计中缺少对这种情况的考虑,且代码中没有对除零情况进行保护。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(五)纠正措施设计人员对上述问题进行了双重保护:首先,在航路点输入、修改、删除等操作流程中增加了对相同航路点情况的判断,避免此种情况的出现;其次,在程序设计的待飞距计算公式中,增加了对分母为零情况的判断和相应处理。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(六)失效表现设备掉电重启后,飞机不再按照掉电前的飞行状态进行飞行。缺陷分析软件设计中没有将飞机的重要飞行状态信息保存在非易失存储器中。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(七)纠正措施设计人员根据需求重新对程序变量进行了分析,找出了其中影响飞行姿态和航迹的关键变量,在每个程序运行周期内都将这些变量往NVRAM中存储一次,有效地防止了掉电重启对重要数据的损坏情况。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(七)纠正措施首届军工产品软件测试技术专题研讨会设计类缺陷(八)失效表现任务机软件为导弹提供任务数据,由于数据不够精确,导致导弹的命中率很低。缺陷分析在任务机软件的设计中,任务数据的计算按照地理平面坐标进行,与实际的地球坐标相差较大。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(八)失效表现首届军工产品软件测试技术专题研讨会设计类缺陷(九)纠正措施重新设计了软件中的任务数据计算方式,将平面坐标改为使用球面坐标,事实证明极大的提高了任务数据的精确性,导弹的打靶准确度得到改善。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心设计类缺陷(九)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(一)代码缺陷是在软件设计到软件代码的转换过程中由编程者产生于代码中的隐患。软件的代码类缺陷主要产生于:编程人员的疏漏;对软件设计理解的不充分;对程序运行环境的了解不充分。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(一)代码缺陷是在软件设计到软件代码的转换过程中由代码类缺陷(二)失效表现1962年7月22日,携带着飞向金星的无人驾驶飞船水手1号的火箭在升空290秒之后毁掉了。缺陷分析地面计算机的程序:Ifnot雷达能够与火箭联系then不要纠正火箭的飞行路线

但由于错误,语句中的not被丢掉了。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(二)失效表现首届军工产品软件测试技术专题研讨会代码类缺陷(三)纠正措施显而易见,当然是直接修改了代码。NASA对这个缺陷的调查表明:代码检查和程序测试都是不完全的,它们都是基于检查者和测试者的想象力和洞察力;程序测试能说明程序错误的存在,但却不能说明它们不存在!首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(三)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(四)失效表现删除航点时,多拷贝了一个航点。若航线的长度为150时,会出现数组越界。缺陷分析航线中的航点保存在一个长度为150的数组中,删除航点的操作是每次删除一个点,并且将后面的元素往前移一个,缺陷产生于对数组中最后一个航点的删除操作中。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(四)失效表现首届军工产品软件测试技术专题研讨会代码类缺陷(五)纠正措施在删除航点的代码中,增加了对是否为数组中最后一个航点的判断,如果为最后一个航点则不再将后面的数据向前移动,同时删除其他航点时,后面的航点也仅限于数组内的数据向前移。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(五)纠正措施首届军工产品软件测试技术专题研讨会代码类缺陷(六)失效表现计算机采用8086+8087方式,计算采用短实数格式,偶尔发生计算失败。缺陷分析由于输入量中有接近零的情况,因此计算的个别中间结果有可能小于短实数格式的最小值,另外由于8087是80位二进制运算,但对它设置为短实数格式,并且在计算过程中有小于短实数格式的最小值的数字量出现时,8087就发生下溢,因为程序没有对8087下益的处理,所以8087向8086送回一个未规格化的结果。首届军工产品软件测试技术专题研讨会中航一集团软件可靠性管理与测评中心代码类缺陷(六)失效表现首届军工产品软件测试技术专题研讨会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论