基于分类的软件缺陷严重性预测

Vol.44No.8

1532

计算机与数字工程

Computer&Digital Engineering总第322期

2016年第8期基于分类的软件缺陷严重性预测*

王婧宇1张欣2邹卫琴3

(1.南京市产品质量监督检验院南京210028)(2.大连理工大学软件学院大连116621)(3.江西理工大学南昌330000)

摘要在软件开发过程中,软件缺陷的修复是保证软件质量的重要环节。然而随着软件规模的快速增长、缺陷数目的急剧增加、人力物力资源的有限,报告的软件缺陷不能全部被修复。为了保证软件的质量,人们往往对软件缺陷进行优先级排序,将有限的资源集中在优先级高的软件缺陷修复上。软件缺陷严重性就是一种重要的优先级度量标准。近年来对软件缺陷严重性的预测已引起了人们的广泛研究。当前主流的预测方法是基于分类的技术,即将描述软件缺陷的报告当做文档,严重程度作为标签,利用现有的机器学习算法对其建模并进行预测。论文主要对基于分类的软件缺陷严重性预测工作做一个简要的介绍,包括已有的研究成果,基于分类的技术框架以及将来可能的发展方向。

关键词软件缺陷;缺陷严重性;分类

中图分类号T P311DOI:10.3969/j.issn.1672-9722.2016.08.028

SeverityPredictionofSoftwareDefectsBasedonClassification

WANGJingyu1ZHANGXin2ZOUWeiqin3

(1.Nanjing Institute of Product Quality Inspection,Nanjing210028)

(2.Software School,Dalin Univeristy of Technology,Dalian116621)

(3.Jiangxi University of Science and Technology,Nanchang330000)AbstractIn software development,the debugging of software defects is an important part to guarantee the software’s q uality.However,with the rapid increase of software scale,the more and more defects numbers and the limitation of human and material resources,reported software bugs cannot be all debugged.To guarantee the quality of software,software de-fects are prioritized,focusing the limited source on the debugging of software defects with high priority.The severity of soft-ware defects is an important standard for prioritization.In recent years,p redicts of the severity of software defects have been state-of-the-arts.The principal aspect of predicting is based on the classification,w hich means building a model and predic-ting based on current machine learning algorithms with the reports including defect description working as documents,severi-ty as tag.This article gives a brief introduction of on prediction the severity of software defects based on classification,inclu-ding the existing research results,the framework based on classification and future work.

KeyWordssoftware defects,severity,classification

ClassNumberT P311

1引言

软件维护是软件开发过程中必不可少的重要环节,对缺陷的修复是软件维护的重要活动之一。随着软件规模的快速增长,大量的软件缺陷单靠人力来维护已变得非常困难。由此,很多软件如

M ozilla、Eclipse等通常使用缺陷管理工具来跟踪和管理软件的缺陷。Bugzilla和Jira就是当前两种比较主流的跟踪维护软件缺陷的管理工具,又称

bug仓库。由于任何用户在使用软件的过程中发现了问题都可以向bug仓库中提交报告来描述缺陷,这通常导致bug仓库存储了大量的缺陷报告。例如,据统计,Eclipse的bug仓库中每天平均接收94个新的bug报告[1]。另一方面,由于软件开发

*收稿日期:2016年2月9日,修回日期:2016年3月28日

作者简介:王靖宇,女,硕士,工程师,研究方向:软件测试、标准化、信息系统检测。张欣,女,研究方向:软件测试、自动化测试。邹卫琴,女,硕士,研究方向:软件测试、软件挖掘。

基于大数据软件缺陷分析(6D)

PMI授权的项目管理综合培训机构 Global Registered Education Provider 课程:基于大数据的软件缺陷分析和预测 什么是大数据?数据挖掘?R语言在华尔街盛行? 大数据Big data、数据挖掘Data mining、R语言等在不同领域的应用越来越流行,比如:用于市场分析消费者消费习惯,以推出针对性广告;找出有问题的信用卡交易;用于股票或 者财务市场预测;用于地区犯罪率预测。 这些对软件和科技行业有什么作用? 在软件工程方面开始使用大数据帮助预测缺陷,更容易地提高软件质量。从2000年开始,学术界对缺陷的预测已经做了不小的研究,一直收集产品发布的不同历史,包括缺陷历 史、变更历史、代码本身。通过数据分析,可以找出在新版本里面容易出错的地方。 如果公司是对软件质量要求很高的相关行业,比如银行、财务、通信,因它们知道单是靠最终的系统测试无法把潜在的缺陷都找出来,以下系列课程可以帮公司,QA,或技术人 员开拓视野。 我们的课程为学员解释以上新技术的概念,教授如何准备对应的日常数据和利用新技术。 这一系列课程先从统计、度量开始,介绍如何利用常用工具,帮公司建立可以长期操作的度量系统,不断去搜集过去历史的产品开发经验,然后可以为日后做出一些公司的基线和 预测模型打好基础,帮助产品质量的提高。 我们一系列总共有3个课程,每个课程为2天,从最基础的统计、度量与分析开始,到最后利用一些大数据,Data mining的技巧,对一些实例做分析研究。 课程特点: 课程以实战为主理论为辅。提供足够的参考资料给学员在课前后研究。学员通过学习后也可以掌握一些立马可以在公司里推行的开源工具、程序和技巧。

软件源代码安全缺陷检测技术研究进展综述

软件源代码安全缺陷检测技术研究进展综述 摘要:软件安全缺陷检测已经成为软件行业非常重要的一项工作。安全关键软件设计使用的C/C++语言含有大量未定义行为,使用不当可能产生重大安全隐患。本文将根据八篇前沿论文,总结提出八种比较新的软件安全缺陷检测技术和算法。设计和实现了一个可扩展的源代码静态分析工具平台,并通过实验表明,相对于单个工具的检测结果而言,该平台明显降低了漏报率和误报率。 关键字:源代码;安全缺陷;静态检测工具;缺陷描述 Abstract:Software security detection has become a very important work in the software industry. Fatal security vulnerabilities are caused by undefined behaviors of C/C++ language used in Safety-Critical software. This paper will give out eight kinds of new technology about the software security detection based on eight cutting-edge papers. design. Key words: source code; safety defects; static test tools; statistical analysis; defectives description 1引言: 近年来,随着软件事业的发展,人们逐渐的认识到,想要开发出高质量的软件产品,必须对软件的开发过程进行改善。研究表明,相当数量的安全问题是由于软件自身的安全漏洞引起的。软件开发过程中引入的大量缺陷,是产生软件漏洞的重要原因之一。软件源代码安全性缺陷排除是软件过程改进的一项重要措施。当前,与源代码安全缺陷研究相关的组织有CWE、Nist、OWASP等。业界也出现了一批优秀的源代码安全检测工具,但是这些机构、组织或者公司对源代码发中缺表 1 CWE 中缺陷描述字段表 2 SAMATE 中评估实例描述方法陷的描述方法不一,业界没有统一的标准。在实际工作中,经过确认的缺陷需要提取,源代码需要用统一的方法描述。本文根据实际工作的需要,调研国内外相关资料,提出一种源代码缺陷描述方法。 通常意义上的网络安全的最大威胁是程序上的漏洞,程序漏洞检测主要分为运行时检测和静态分析方法。运行时检测方法需要运行被测程序,其检测依赖外部环境和测试用例,具有一定的不确定性。 开发人员在开发过程中会引入一些源代码缺陷,如SQL 注入、缓冲区溢出、跨站脚本攻击等。同时一些应用程序编程接口本身也可能存在安全缺陷。而这些安全缺陷轻则导致应用程序崩溃,重则导致计算机死机,造成的经济和财产损失是无法估量的。目前的防护手段无法解决源代码层面的安全问题。因而创建一套科学、完整的源代码安全缺陷评价体系成为目前亟待解决的问题。 目前与源代码安全缺陷研究相关的组织有CWE等,业界也出现了一批优秀的源代码安全检测工具,但是这些机构和组织对源代码中缺陷的描述方法不一,没有统一的标准。本文借鉴业界对源代码缺陷的描述,结合实际工作需要,提出了一种计算机源代码缺陷的描述方法。 随着社会信息化的不断加深,人们不得不开始面对日益突出的信息安全问题。研究表明,相当数量的安全问题是由于软件自身的安全漏洞引起的。软件开发过程中引入的大量缺陷,是产生软件漏洞的重要原因之一。不同的软件缺陷会产生不同的后果,必须区别对待各类缺陷,分析原因,研究其危害程度,预防方法等。建立一个比较完整的缺陷分类信息,对预防和修复软件安全缺陷具有指导作用。软件缺陷一般按性质分类,目前已有很多不同的软件缺陷分类法,但在当前实际审查使用中,这些缺陷分类存在以下弊端: (1)专门针对代码审查阶段发现缺陷的分类较少。现有的分类法一般包括动态测试发现的缺陷类型和文档缺陷等,

软件测试之缺陷分析

有完全实现但不影响使用。如提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等,打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等 D类—较小错误的软件缺陷(Minor),使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字、界面不规范(字体大小不统一,文字排列不整齐,可输入区域和只读区域没有明显的区分标志),辅助说明描述不清楚 E类- 建议问题的软件缺陷(Enhancemental):由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。 常用的软件缺陷的优先级表示方法可分为:立即解决P1、高优先级P2、正常排队P3、低优先级P4。立即解决是指缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;高优先级是指缺陷严重影响测试,需要优先考虑;正常排队是指缺陷需要正常排队等待修复;而低优先级是指缺陷可以在开发人员有时间的时候再被纠正。 正确评估和区分软件缺陷的严重性和优先级,是测试人员和开发人员以及全体项目组人员的一件大事。这既是确保测试顺利进行的要求,也是保证软件质量的重要环节,应该要引起足够的重视。这里介绍三种常用的技术工具供大家参考。 (1)20/80原则 管理学大师彼得杜拉克说过:做事情必须分清轻重缓急。最糟糕的是什么事都做,这必将一事无成。而意大利经济学家柏拉图则更明确提出:重要的少数与琐碎的多数或称20/80的定律。就是80%的有效工作往往是在20%的时间内完成的,而20%的工作是在80%的时间内完成的。因此,为了提高测试质量,必须清晰的认识到哪些软件缺陷是最重要的,哪些软件缺陷是最关键的。不要拣了芝麻,却丢了西瓜。所以,只有抓住了重要的关键缺陷,测试效果才能产生最大的效益,这也是第一个原则---分清轻重缓急,把测试活动用在最有生产力的事情上。 (2)ABC法则

缺陷预测方法介绍

缺陷预测方法介绍 一、背景介绍 研发项目在测试初期由于没有更多的数据支撑,所以不能进行缺陷总数预测。而当数据量达到一定程度后,我们就可以通过工具来进行缺陷总数预测,同时在不同的时间段内多次预测并不断修正预测的缺陷总数,已达到对质量评估和测试计划调整起到一个指导作用。 二、工具及使用介绍 I、Excel II、Gompertz增长模型 III、SPSS 平常测试中我们会发现,测试的初始阶段,由于对测试环境不够熟悉,日均发现的软件缺陷数量比较少,发现软件缺陷数的增长较为缓慢;随着逐渐进入状态并熟练掌握测试环境后,日均发现软件缺陷数增多,发现软件缺陷数的增长速度迅速加快。随着测试的继续进行,软件缺陷的隐藏加深,发现难度加大,需要执行较多的测试才能发现一个缺陷,尽管缺陷数还在增加,但增长速度会减缓,而软件中隐藏的缺陷是有限的,因次限制了发现缺陷数的无限增长。这种发现软件缺陷的变化趋势及增长速度是一种典型的‘S’曲线,根据这种规律我们可以使用增长模型来预测缺陷的总数。 1、Excel运用宏进行缺陷总数预测 1-1、首先先把数据列入Excel表中 1-2、加载宏 Office按钮 -> Excel选项(I) -> 加载项 -> 管理(选择“Excel 加载项”) -> 点击[转到(G)]按钮 -> 加载宏界面勾选“分析工具库”和“规划求解加载项” (确定后等待加载完成即可),图1

图1 1-3、在数据下的菜单里点击“数据分析”(在右边),将弹出数据分析对话框,图2 图2 1-4、在分析工具(A)选择框处选择“回归”后点击[确定]按钮,弹出回归设置对话框,如图3 图3 1-5、根据步骤4的设置,在新的sheet里查看结果,我们只需查看Upper 95%的值即可,如图4 图4 根据以上操作,我们可以预测该系统的缺陷总数约为448.4个。 2、运用Gompertz增长模型进行缺陷总数预测 模型表达式为Y=a*b^(c^T) 其中Y表示随时间T发现的软件缺陷总数,a是当T→∞时的可能发现的软件缺陷总数,即软件中所含的缺陷总数。a*b是当T→0时发现的软件缺陷数,c表示发现缺陷的增长速度。我们需要依据现有测试过程中发现的软件缺陷数量来估算出三个参数a,b,c的值,从而得到拟合曲线函数。

软件缺陷分类标准

审核/日期批准/日期

文档修改记录(Revision Chart) [This chart contains a h istory of this document’s revisions. The entries below are provided solely for purposes of illustration. Entries should be deleted until the revision they refer to has actually been created. The document itself should be stored in revision control, and a brief description of each version should be entered in the revision control system. That brief description can be repeated in this section. Revisions do not need to be described elsewhere in the document except inasmuch as they explain the development plan itself.]

目录 1引言 (1) 1.1 编写目的 (1) 1.2 定义与缩写 (1) 1.3 参考资料 (1) 2软件缺陷分类标准 (1) 2.1 缺陷属性 (1) 2.2 缺陷类型 (1) 2.3 缺陷严重程度 (3) 2.4 缺陷优先级 (4) 2.5 缺陷状态 (4) 2.6 缺陷来源 (4)

变电站设备缺陷分类标准

输变电设备缺陷分类参考标准--变电站设备缺陷分类标准 ?根据中国南方电网有限责任公司的有关输变电设备运行管理标准中设备缺陷的分类原则,设备缺陷按其严重程度分为紧急、重大、一般三类。本参考根据供电系统常用电气设备运行状况中的缺陷进行整理。各公司可以根据所管辖设备的特点引用此附件,发电厂可以结合所管辖设备的特点,参照制定相应的设备缺陷分类实施细则。 目次 1 变电站设备缺陷分类标准 3 1.1?变压器(消弧线圈、接地变、站用变、电抗器参照执行)3? 1.2?断路器?4 1.3?隔离开关5? 1.4?母线?6 1.5?防雷设备7? 1.6?电力电缆7 1.7 控制电缆8 1.8 继电器8 1.9 表计9 1.10?电力电容器10? 1.11?电压、电流互感器、耦合电容器、阻波器10? 1.12继电保护及自动装置11? 1.13 直流设备12 1.14?土建部分13 1.15变电其它设备14

2 通讯、计算机、远动、消防系统分类标准14 2.1?通讯1?4 2.2 计算机系统1?6 2.3远动部分16 2.4?消防系统173 电力线路设备缺陷分类标准18 3.1?导线及架空地线18 3.2?绝缘子及金具19? 3.3 杆塔20? 3.4?横担20 3.5 拉线2?1 3.6 柱上开关21 3.7?配电变压器及令克2?2 3.8 避雷器22 3.9 接地装置2?3 3.10?线路电力电缆23 ?1 变电站设备缺陷分类标准 1.1 变压器(消弧线圈、接地变、站用变、电抗器参照执行) 1.1.1紧急缺陷 1.1.1.1绝缘油不合格或呈酸性、水份严重超标、气相色谱分析重要指标超标或有明显

缺陷分类分级管理

缺陷分类分级管理-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

附录E: 缺陷分类分级管理 根据输变电设备运行管理标准中设备缺陷的分类原则,设备缺陷按其严重程度分为紧急、重大、一般。 1.一般缺陷:是指对近期安全运行影响不大的缺陷,可列入年、季检修计划或日常维护工作中去消除 2.重大缺陷:是指缺陷比较严重,但设备仍可短期继续安全运行,该缺陷应在短期内消除,消除前应加强监视 3.紧急缺陷; 是指严重程度以使设备不能继续安全运行,随时可能导致发生事故或危及人身安全的缺陷,必须尽快消除或采取必要的安全技术措施进行临时处理根据供电系统常用电气设备运行状况中的缺陷进行整理,对缺陷现状进行分类分级管理,并制定缺陷处理计划及措施,跟踪缺陷处理进度、完成情况,对已处理缺陷及时进行关闭,规范化管理设备缺陷,参照设备缺陷分类分级实施细则。

1 变电站设备缺陷分类标准 1.1 变压器(消弧线圈、接地变、站用变、电抗器参照执行)4 1.2 断路器5 1.3 隔离开关6 1.4 母线7 1.5 防雷设备8 1.6 电力电缆8 1.7 控制电缆9 1.8 继电器9 1.9 表计10 1.10 电力电容器11 1.11 电压、电流互感器、耦合电容器、阻波器11 1.12 继电保护及自动装置12 1.13 直流设备14 1.14 土建部分15 1.15 变电其它设备15 2 通讯、计算机、远动、消防系统分类标准16 2.1 通讯16 2.2 计算机系统17 2.3 远动部分18 2.4 消防系统18 3 电力线路设备缺陷分类标准19 3.1 导线及架空地线19 3.2 绝缘子及金具20 3.3 杆塔21 3.4 横担22 3.5 拉线22 3.6 柱上开关23 3.7 配电变压器及令克23 3.8 避雷器24 3.9 接地装置24 3.10 线路电力电缆25附件1:设备缺陷记录 25 附件2:线路缺陷记录26

基于贝叶斯网络技术的软件缺陷预测与故障诊断

Microcomputer Applications Vol. 25, No.11, 2009 技术交流 微型电脑应用 2009年第25卷第11期 ·31· 文章编号:1007-757X(2009)11-0031-03 基于贝叶斯网络技术的软件缺陷预测与故障诊断 王科欣,王胜利 摘 要:如何进一步地提高软件的可靠性和质量是我们十分关注的问题,而前期软件缺陷和后期软件故障的诊断都是控制质量的关键手段,由此我们提出了基于贝叶斯的神经网络。基于对贝叶斯网络和神经网络理论的分析,发现贝叶斯网络和神经网络各自的优点与不足,利用贝叶斯具有前向推理的优势进行故障诊断,利用神经网络学习算法能够处理更复杂网络结构的优势来积累专家知识,最后提出了贝叶斯网络与概率神经网络相结合的模型,该模型可以更好地兼顾软件缺陷与故障诊断两个方面。 关键词:贝叶斯;神经网络;测试;缺陷预测;故障诊断 中图分类号:TP311.5 文献标志码:A 0 引言 如何进一步提高软件的可靠性和质量是我们十分关注的问题,软件可能存在缺陷,我们在软件的整个生命周期中始终期望能及早发现重要错误,并及时诊断。这就告诉我们,在进行软件前期预测时,就应该重视和记录重要缺陷,以便在故障发生时能通过早期预测的记录表找到故障原因。这就说明软件缺陷预测和故障诊断不应该是两个独立的过程,而应该有所联系。本文就通过贝叶斯网络和模糊神经网络对两项工作进行了整合。通过贝叶斯的在推理规则上的优势,尤其是前向推理的特点进行故障诊断,利用神经网络学习和训练函数的复杂多样性,可以更好地拟合复杂情况。 1 软件缺陷预测与故障诊断 1.1 软件缺陷预测的两个方面 1.1.1 对于软件可靠性早期预测 对于开发者而言,在开发软件之前或者设计软件中,主要作用是进行风险控制,验证其设计可行性。由于贝叶斯网络可以在信息不完全的情形下进行不确定性和概率性事件的推理,所以对于复杂软件的早期预测具有先天的优势。软件缺陷数量属于动态度量元素,需要通过对软件产品进行完整的测试后才能获得。针对特定模块进行完整测试成本比较高,并且必须在软件开发完成之后才能进行集成测试,这样在前期很难控制软件产品缺陷数量。为了更好地提高软件质量,对软件模块中包含的缺陷进行预测是一个可行的方法。软件缺陷预测方法的前提假设是软件的复杂度和软件的缺陷数量有密切关联。复杂度高的软件模块产生的缺陷比复杂度低的模块产生的缺陷多。软件缺陷预测的思路是使用静态度量元素表征软件的复杂度,然后预测软件模块可能的缺陷数量或者发生缺陷的可能性。通过进行软件缺陷预测,能够以较低的成本在项目开发的早期预测产品的缺陷分布状况,可以更好的调整有限的资源,集中处理可能出现较多缺陷的高风险模块,从而从整体上提高软件产品的质量。 1.1.2 对于软件残留缺陷的预测 对于测试者而言,通过质量预测,可将软件的各个组成部分按预测的质量水平进行分类,明确测试的重点,避免在进行测试时同等对待,而是有所侧重,这对节约有限资源和缩短开发周期都有着十分重要的意义。软件的测试和修改是一个螺旋式上升的过程。由于资源和时间的有限投入,什么时候软件达到了要求的质量水平从而能够投入实际使用是一个十分关键的问题。对残留缺陷进行预测,目的就是为了确保代码中的缺陷数量维持在一个安全水平。对测试经理来说,估计目前软件的测试到了哪个阶段、还应该继续做到什么样水平,这都是尤其重要的。从软件经济学的观点上来看,它关系到产业界的投入产出比、测试过度,不能再检查出太 多错误,或者说检查耗费很长的时间和很多的人力,但最终是一个细微的错误,这是不经济的;但是如果残留缺陷还比较多,就停止测试工作,那么会使得这些缺陷在未排除的情 况下交付给用户,等到用户发现错误时,维护的成本就会更 高。因此,正确预测软件残留缺陷对于交付使用后的软件维护也具有重要意义。 1.2 软件故障诊断技术 软件故障诊断是根据软件的静态表现形式和动态信息查找故障源,并进行分析,给出相应的决策。其中静态形式包括程序、数据和文档,动态信息包括程序运行过程中的一系列状态,人在参与软件生存周期的各个阶段工作时,都有可能由于各种疏忽和不可预料的因素,出现各种各样的错误。因而,从广义上说,软件故障诊断的工作涉及到软件的整个生命周期——需求分析、设计、编码、测试、使用、维护等各阶段所造成的缺陷。 软件故障诊断,“诊”的主要工作是对状态检测,包括使用各种度量和分析方法;“断”的工作则更为具体,它需要确定:(1)软件故障特性;(2)软件故障模式;(3)软件故障发生的模块和部位;(4)说明软件故障产生的原因,并且提出相应的纠正措施和避免下一次再发生该类错误的措——————————— 作者简介:王科欣(1982-) ,男,湖南长沙人,暨南大学计算机科学系,硕士研究生,软件设计师,广东体育职业技术学院助教,主要研究方向为软件工程、数据库与知识工程,广东 广州,510632;王胜利(1984-),男,湖南衡阳人,暨南大学计算机科学系,硕士 研究生,研究方向为软件工程、数据挖掘,广东 广州,510632

软件的缺陷分析

软件的缺陷分析 一、缺陷分析的作用 软件缺陷不只是通常所说程序中存在的错误或疏忽,即俗称的Bug。其范围更大,除程序外还包括其相关产品:项目计划、需求规格说明、设计文档、测试用例、用户手册等等中存在的错误和问题。需要强调,在软件工程整个生命周期中任何背离需求、无法正确完成用户所要求的功能的问题,包括存在于组件、设备或系统软件中因异常条件不支持而导致系统的失败等都属于缺陷的范畴。 软件测试的任务就是发现软件系统的缺陷,保证软件的优良品质。但在软件中是不可能没有缺陷的。即便软件开发人员,包括测试人员尽了努力,也是无法完全发现和消除缺陷。 如何做到最大限度地发现软件系统的缺陷,人们首先想到提高开发人员的素质和责任心,科学地应用测试方法和制定优秀的测试方案。但这是不够的,我们还需要实施缺陷分析。缺陷分析是将软件开发、运行过程中产生的缺陷进行必要的收集,对缺陷的信息进行分类和汇总统计,计算分析指标,编写分析报告的活动。 通过缺陷分析,发现各种类型缺陷发生的概率,掌握缺陷集中的区域、明晰缺陷发展趋势、了解缺陷产生主要原因。以便有针对性地提出遏制缺陷发生的措施、降低缺陷数量。对于改进软件开发,提高软件质量有着十分重要的作用。 缺陷分析报告中的统计数据及分析指标既是对软件质量的权威评估,也是判定软件是否能发布或交付使用的重要依据。 二、管理软件的缺陷分析 不同于系统、工具、工控、游戏等软件,管理软件在实际运行时面临情况要复杂得多。首先是用户的需求更加不统一,而且随时间的推移需求发生变化快、变化大;其次运行环境更复杂,除受操作系统、数据库等影响外,用户在网络、甚至同一计算机安装运行不同性质和背景的应用软件,其影响很难预测;再者客户的操作习性不同,等等。因此管理软件的种种缺陷,不是在开发时通过测试都能预计的。预测并控制缺陷有效手段之一是缺陷分析。 在高级别的CMM 中就包含了缺陷分析活动。缺陷分析更是一种以发展方式进行软件过程改进的机制。 三、缺陷的信息收集 软件工程通常要求为开发项目建立缺陷管理库,也有人称为变更控制库。从发现缺陷开始创建变更,直到缺陷解决、经验证、关闭变更止。在缺陷管理的整个生命周期记录了大量相关资料,它们是缺陷分析所需要的宝贵信息。 由于变更库并不专为缺陷分析而设计,缺陷分析主要关心以下信息项:变更编号、变更主题、变更提交的日期、变更状态、变更性质、变更解决的日期、变更产生的根本原因、解决变更的工作量、验证变更的工作量、变更的严重性等级、变更所属软件产品及子系统、变更修改的模块、变更产生的阶段、变更来源、变更测试情况等。缺陷信息部分是在创建变更时输入的,部分是在变更解决中或解决后输入的。 为了实施统计,有些缺陷信息必需事先设定关键字。 变更控制库中有一信息项——变更原因,由修改缺陷程序的程序员详细记录缺陷产生的具体原因。这项信息显然无法直接用于分类和汇总。变更产生的根本原因信息项,则是基于变更原因的关键字字段,是专为处理缺陷分析中缺陷原因而设计的信息项。 软件发布前缺陷分析所用缺陷根本原因的关键字,可以有下几种实例: * 编程:原始编程出错,没有客观原因。 * 修改:由于修改缺陷而引发的新变更,并且引发的变更与原变更的错误是相关的。 * 培训:项目组新成员培训不充分,或使用新工具不熟练引起的变更。

电力设备缺陷的分类标准

电力设备缺陷的分类标 准 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

电力设备缺陷的分类标准1、紧急缺陷 变电部分 设备接头发热烧红、变色。 设备瓷件有明显裂缝。 设备内部有明显的放电声或异音。 设备的绝缘、温升等技术参数超过极限值。 主设备与地网没有可靠连接。 外绝缘有严重放电现象。 高、低压室、开关柜防小动物措施失效。 变压器 冷却装置故障严重,影响出力或威胁安全运行。 分接开关操作卡阻或跳档。 铁芯接地电流不合格,串接电阻后仍不能满足运行要求,并有发展的趋势。 本体漏油严重或大量喷油。 套管漏油,套管油位超过下限,密封失效。 主变油箱进水。 潜油泵损坏,金属物可能进入油箱。 电气及油试验结果严重超标。 高压断路器

操动机构有卡涩,运行中有拒合、拒分或误合、误分的现象,储能元件损坏, 液(气)压机构的压力超出闭锁限额,油开关严重漏油或大量喷油,不能保 证安全运行者; 开关短路开断电流不能满足运行要求,又无保证安全运行的措施,额定电流 小于负荷电流者。 SF6开关设备的SF6气体质量不合格,或有严重漏气,其压力低于制造厂规定的下限。 真空开关的真空泡有裂纹或严重漏气者。 真空开关的真空泡失去光泽、发红。 液(气)压机构油(气)泵频繁启动,打压间隔时间小于10分钟,连续5次及以 上者。 断路器辅助接点、液(气)压闭锁接点失灵。 断路器绝缘拉杆脱落。 刀闸、母线 瓷件有破裂,刀闸触头铸铝件部分有裂纹。 刀闸严重锈蚀,以致操作卡阻,不能正常停送电。 母线一串绝缘子串上零值或破损瓷瓶片数110kV 3片、220kV 4片、500kV 4片及以上者。

软件缺陷分类标准

软件缺陷分类标准 修订历史记录 目录 1. 引言................................................... 1.1编写目的 .......................................... 1.2定义与缩写 ........................................ 1.3参考资料 .......................................... 2.软件缺陷分类标准....................................... 2.1问题类型 .......................................... 2.2缺陷属性 .......................................... 2.3缺陷类型 .......................................... 2.4缺陷严重程度 ...................................... 2.5缺陷优先级 ........................................ 2.6缺陷状态 .......................................... 2.7缺陷来源、起源 ....................................

2.8缺陷根源 .......................................... 2.9缺陷产生可能性 .................................... 1.引言 1.1编写目的 制定本标准的目的是为软件测试提供确信分类的标准。本文档说明了问题类型、缺陷属性、确缺陷类型、缺陷严重级别、缺陷优先级、缺陷状态、缺陷修改次数、缺陷原因。其预期的读者是测试人员、开发人员、开发经理。 1.2定义与缩写 表格1-1 定义与缩写 1.3参考资料 表格1-2 参考资料列表

软件测试之缺陷分析实战经验

一、软件缺陷的定义及主要类型 我们对软件缺陷分析一下,所谓"软件缺陷(bug)",即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。一般来说,软件缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷优先级、缺陷来源、缺陷原因等。 进行软件缺陷分析后,软件缺陷的主要可以分为以下几种类型: (1)设计不合理; 2)功能、特性没有实现或部分实现; 3)运行出错,包括运行中断、系统崩溃、界面混乱等; 4)与需求不一致,在执行TestCase时则为实际结果和预期结果不一致; (5)用户不能接受的其他问题,如存取时间过长、界面不美观; (6)软件实现了需求未提到的功能。 二、软件缺陷的级别、优先级及状态 软件缺陷有四种级别,分别为:致命的(Fatal),严重的(Critical),一般的(Major),微小的(Minor)。 A类—致命的软件缺陷(Fatal): 造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题。如代码错误,死循环,数据库发生死锁、与数据库连接错误或数据通讯错误,未考虑异常操作,功能错误等 B类—严重错误的软件缺陷(critical):系统的主要功能部分丧失、数据不能保存,系统的次要功能完全丧失。问题局限在本模块,导致模块功能失效或异常退出。如致命的错误声明,程序接口错误,数据库的表、业务规则、缺省值未加完整性等约束条件 C类—一般错误的软件缺陷(major):次要功能没有完全实现但不影响使用。如提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等,打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等 D类—较小错误的软件缺陷(Minor),使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字、界面不规范(字体大小不统一,文字排列不整齐,可输入区域和只读区域没有明显的区分标志),辅助说明描述不清楚 E类- 建议问题的软件缺陷(Enhancemental):由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。 常用的软件缺陷的优先级表示方法可分为:立即解决P1、高优先级P2、正常排队P3、低优先级P4。立即解决是指缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;高优先级是指缺陷严重影响测试,需要优先考虑;正常排队是指缺陷需要正常排队等待修复;而低优先级是指

电力设备缺陷的分类标准

电力设备缺陷的分类标准 1、紧急缺陷 1、1变电部分 设备接头发热烧红、变色。 设备瓷件有明显裂缝。 设备内部有明显的放电声或异音。 设备的绝缘、温升等技术参数超过极限值。 主设备与地网没有可靠连接。 外绝缘有严重放电现象。 高、低压室、开关柜防小动物措施失效。 1、1、1变压器 冷却装置故障严重,影响出力或威胁安全运行。 分接开关操作卡阻或跳档。 铁芯接地电流不合格,串接电阻后仍不能满足运行要求,并有发展的趋势。 本体漏油严重或大量喷油。 套管漏油,套管油位超过下限,密封失效。 主变油箱进水。 潜油泵损坏,金属物可能进入油箱。 电气及油试验结果严重超标。 1、1、2高压断路器 操动机构有卡涩,运行中有拒合、拒分或误合、误分的现象,储能元件损坏, 液(气)压机构的压力超出闭锁限额,油开关严重漏油或大量喷油,不能保

证安全运行者; 开关短路开断电流不能满足运行要求,又无保证安全运行的措施,额定电流小于负荷电流者。 SF6开关设备的SF6气体质量不合格,或有严重漏气,其压力低于制造厂 规定的下限。 真空开关的真空泡有裂纹或严重漏气者。 真空开关的真空泡失去光泽、发红。 液(气)压机构油(气)泵频繁启动,打压间隔时间小于10分钟,连续5次及以上者。 断路器辅助接点、液(气)压闭锁接点失灵。 断路器绝缘拉杆脱落。 1、1、3 刀闸、母线 瓷件有破裂,刀闸触头铸铝件部分有裂纹。 刀闸严重锈蚀,以致操作卡阻,不能正常停送电。 母线一串绝缘子串上零值或破损瓷瓶片数110kV 3片、220kV 4片、500kV 4片及以上者。 1、1、4 电压互感器、电流互感器、电容式电压互感器、耦合电容器、阻波器 漏(气)油严重或大量喷油。 电压互感器二次回路失压、电流互感器二次回路开路。 电容式电压互感器、耦合电容器本体滴油。 阻波器拉杆脱落。

【项目管理知识】软件测试的缺陷分析

软件测试的缺陷分析 相关内容:软件测试缺陷跟踪管理更多知识 一、缺陷分析的作用 软件缺陷不只是通常所说程序中存在的错误或疏忽,即俗称的Bug。其范围更大,除程序外还包括其相关产品:项目计划、需求规格说明、设计文档、测试用例、用户手册等等中存在的错误和问题。需要强调,在软件工程整个生命周期中任何背离需求、无法正确完成用户所要求的功能的问题,包括存在于组件、设备或系统软件中因异常条件不支持而导致系统的失败等都属于缺陷的范畴。本文 软件测试的任务就是发现软件系统的缺陷,保证软件的优良品质。但在软件中是不可能没有缺陷的。即便软件开发人员,包括测试人员尽了努力,也是无法完全发现和消除缺陷。 如何做到限度地发现软件系统的缺陷,人们首先想到提高开发人员的素质和责任心,科学地应用测试方法和制定的测试方案。但这是不够的,我们还需要实施缺陷分析。缺陷分析是将软件开发、运行过程中产生的缺陷进行必要的收集,对缺陷的信息进行分类和汇总统计,计算分析指标,编写分析报告的活动。 通过缺陷分析,发现各种类型缺陷发生的概率,掌握缺陷集中的区域、明晰缺陷发展趋势、了解缺陷产生主要原因。以便有针对性地提出遏制缺陷发生的措施、降低缺陷数量。对于改进软件开发,提高软件质量有着十分重要的作用。-全国教育类网站() 缺陷分析报告中的统计数据及分析指标既是对软件质量的权威评估,也是判定软件是否能发布或交付使用的重要依据。-全国教育类网站()

二、管理软件的缺陷分析 不同于系统、工具、工控、游戏等软件,管理软件在实际运行时面临情况要复杂得多。首先是用户的需求更加不统一,而且随时间的推移需求发生变化快、变化大;其次运行环境更复杂,除受操作系统、数据库等影响外,用户在网络、甚至同一计算机安装运行不同性质和背景的应用软件,其影响很难预测;再者客户的操作习性不同,等等。因此管理软件的种种缺陷,不是在开发时通过测试都能预计的。预测并控制缺陷有效手段之一是缺陷分析。 在高级别的CMM中就包含了缺陷分析活动。缺陷分析更是一种以发展方式进行软件过程改进的机制。来源: 三、缺陷的信息收集 软件工程通常要求为开发项目建立缺陷管理库,也有人称为变更控制库。从发现缺陷开始创建变更,直到缺陷解决、经验证、关闭变更止。在缺陷管理的整个生命周期记录了大量相关资料,它们是缺陷分析所需要的宝贵信息。 由于变更库并不专为缺陷分析而设计,缺陷分析主要关心以下信息项:变更编号、变更主题、变更提交的日期、变更状态、变更性质、变更解决的日期、变更产生的根本原因、解决变更的工作量、验证变更的工作量、变更的严重性等级、变更所属软件产品及子系统、变更修改的模块、变更产生的阶段、变更来源、变更测试情况等。

设备缺陷范围及分类标准

设备缺陷范围及分类标准 A.1 设备缺陷管理范围 ——变电站一、二次设备; ——防止电气误操作的闭锁装置; ——通讯、远动、计量系统及其辅助设备; ——变电设备构架、基础、电缆沟道; ——生产性建筑物、照明、给排水、通风、消防、保安系统; ——电力电缆及附件; ——架空线路、架空地线、绝缘子、金具、杆塔、拉线及基础; ——线路防护及交叉跨越; ——防雷保护装置、接地引下线和接地装置; ——配电设备; ——可能影响系统安全运行的其它因素术语和定义。 A.2 设备缺陷的分类 设备紧急缺陷重大缺陷一般缺陷 变电通用部分1.设备瓷件有明显裂缝。 2.设备内部有明显的放电声或 异常声响。 3.主设备与地网连接线断裂。 4.外绝缘有严重放电现象。 5.设备接头发热严重、变红、变 色。 1.35kV及以上电压等级设 备试验超周期且无相应的 批准手续。 2.高、低压室、开关柜防 小动物措施失效。 3.基础下沉。 4.设备接头发热。 1.设备接头温度 超过同类运行设 备的温度(无明显 变化)。 2.其他不影响设 备运行的缺陷 主变压器(消弧线圈、接地变、站用变、电抗器参照执行)1.绝缘油色谱试验重要指标超 标。 2.油中烃类、氢气产气速率超过 10%/月。 3.电气预防性试验主要项目不 合格。 4.套管破损、裂纹,并有严重放 电声。 5.测温装置全部损坏或失灵。 6.主变压器强油循环冷却器全 停。 7.油浸变压器油位异常。 8.有载调压开关动作异常,极限 位置不能闭锁。 9.内部有异常响声。 10.铁芯接地电流超过规定,串 接电阻后仍不能满足运行要求, 并有发展趋势。 12.铁芯或外壳接地不良。 1.引线桩头螺丝松动连接 处发热。 2.绝缘油化学、电气性能 不良,气相色谱数据指示 可能有潜伏故障。 3.温度指示不准确,超温 信号异常(失灵)。 4.基础下沉。 5.冷却设备不全,尚不影 响出力。 6.油位指示与温度监视线 不对应。 7.达不到铭牌或上级批准 的出力,温升及上层油温 超过容许的数值。 8.本体漏油(五分钟内有 油珠垂滴)。 9.铁芯多点接地致使接地 电流超标。 1.变压器渗油。 (1min以上一滴 或未见滴油但油 迹非常大,超过主 变表面积1/10以 上) 2.附件震动大。 3.引线或接线桩 头有严重电晕。 4.预试数据合格, 但与历史数据比 较有明显变化。 5.变压器绕组轻 微变形。 6.其他不影响变 压器运行的缺陷。 7.呼吸器变色达 2/3以上有载调压 开关油室内渗漏

软件缺陷的分类与管理

软件缺陷的分类与管理 通常大家发现软件缺陷时会对软件缺陷进行分类,可分类的方式只有一种,就是严重极别,难道没有其它的分法吗。比如我们碰到下面这种情况,测试人员发现有一种功能是必需加入进去的,这时他与程序员说,程序员说没有时间或是不必要,这时这种情况则会形成两者的扯皮,最终的结果也就不了了知了,这样会戳伤了测试人员的积极性,下次他们再也不会尽心的考虑产品的问题,只要可以运行就可以了。其实这种情况是可以解决的,下面我会提到一个新的软件缺陷分类概念,从而有效的解决这个问题。在软件缺陷中不仅仅只是严重极别,更多的则是功能没有做到。说到这里也许大家都理解了,就是需求没有考虑到,可需求不会一次就很完美的,需要大家的共同努力,来不断的完善。那么怎样才能让测试人员提出的好的建议得到有效的执行?这就是我下面想说的。在软件缺陷中还有一种分法,跟据缺陷内容来分,主要分为需求Bug与程序Bug,对于这种分法的好处就是明确了Bug处理的责任人。对于程序Bug我们都知道是由相关开发人员进行处理。下面主要讨论一下需求Bug,需求Bug从名称上来就知道是要交由需求人员进行处理,可怎么处理,怎样在处理的过程中有效的让这些创意得到体现。现在我们都有Bug管理系统,这时我们的测试人员将需求Bug不是提交给程序员,而是提交给需求分析人员,由他们进行处理,不过这里我想强调的是对需求Bug的定位,如果这个Bug在软件需求说明书中明确提到了,这时就不可能定位它为需求Bug,它是必需让程序员实现的,称为软件功能缺陷,提交由程序员进行处理。但如果需求说明书没有明确提到的,我们则可以定位为需求Bug,处理的流程如图。

基于分类的软件缺陷严重性预测

Vol.44No.8 1532 计算机与数字工程 Computer&Digital Engineering总第322期 2016年第8期基于分类的软件缺陷严重性预测* 王婧宇1张欣2邹卫琴3 (1.南京市产品质量监督检验院南京210028)(2.大连理工大学软件学院大连116621)(3.江西理工大学南昌330000) 摘要在软件开发过程中,软件缺陷的修复是保证软件质量的重要环节。然而随着软件规模的快速增长、缺陷数目的急剧增加、人力物力资源的有限,报告的软件缺陷不能全部被修复。为了保证软件的质量,人们往往对软件缺陷进行优先级排序,将有限的资源集中在优先级高的软件缺陷修复上。软件缺陷严重性就是一种重要的优先级度量标准。近年来对软件缺陷严重性的预测已引起了人们的广泛研究。当前主流的预测方法是基于分类的技术,即将描述软件缺陷的报告当做文档,严重程度作为标签,利用现有的机器学习算法对其建模并进行预测。论文主要对基于分类的软件缺陷严重性预测工作做一个简要的介绍,包括已有的研究成果,基于分类的技术框架以及将来可能的发展方向。 关键词软件缺陷;缺陷严重性;分类 中图分类号T P311DOI:10.3969/j.issn.1672-9722.2016.08.028 SeverityPredictionofSoftwareDefectsBasedonClassification WANGJingyu1ZHANGXin2ZOUWeiqin3 (1.Nanjing Institute of Product Quality Inspection,Nanjing210028) (2.Software School,Dalin Univeristy of Technology,Dalian116621) (3.Jiangxi University of Science and Technology,Nanchang330000)AbstractIn software development,the debugging of software defects is an important part to guarantee the software’s q uality.However,with the rapid increase of software scale,the more and more defects numbers and the limitation of human and material resources,reported software bugs cannot be all debugged.To guarantee the quality of software,software de-fects are prioritized,focusing the limited source on the debugging of software defects with high priority.The severity of soft-ware defects is an important standard for prioritization.In recent years,p redicts of the severity of software defects have been state-of-the-arts.The principal aspect of predicting is based on the classification,w hich means building a model and predic-ting based on current machine learning algorithms with the reports including defect description working as documents,severi-ty as tag.This article gives a brief introduction of on prediction the severity of software defects based on classification,inclu-ding the existing research results,the framework based on classification and future work. KeyWordssoftware defects,severity,classification ClassNumberT P311 1引言 软件维护是软件开发过程中必不可少的重要环节,对缺陷的修复是软件维护的重要活动之一。随着软件规模的快速增长,大量的软件缺陷单靠人力来维护已变得非常困难。由此,很多软件如 M ozilla、Eclipse等通常使用缺陷管理工具来跟踪和管理软件的缺陷。Bugzilla和Jira就是当前两种比较主流的跟踪维护软件缺陷的管理工具,又称 bug仓库。由于任何用户在使用软件的过程中发现了问题都可以向bug仓库中提交报告来描述缺陷,这通常导致bug仓库存储了大量的缺陷报告。例如,据统计,Eclipse的bug仓库中每天平均接收94个新的bug报告[1]。另一方面,由于软件开发 *收稿日期:2016年2月9日,修回日期:2016年3月28日 作者简介:王靖宇,女,硕士,工程师,研究方向:软件测试、标准化、信息系统检测。张欣,女,研究方向:软件测试、自动化测试。邹卫琴,女,硕士,研究方向:软件测试、软件挖掘。

相关文档
最新文档