对软件质量的评价

对软件质量的评价
对软件质量的评价

对软件质量的评价

对软件质量的评价,现在还没有统一标准。根据个人使用CAX软件的经验,我通常从几个方面来做判断,

1.核心理论的正确性

主要是指支撑软件的理论基础,必须是科学的、严谨的、具有普适意义的。如很多管理理论源自欧美,其社会实践受其历史人文的影响,带有先天的局限性和时效性。那么在这些理论基础上开发的软件多数也只能完成数据库功能,而基于数据的分析、预测等,很难有真正的现实意义。

2.方法论的有效性

方法论是保证软件工作流程有效性的基础,是软件在核心理论模型引导下解决具体问题的通用流程、步骤和方式,及其选择和判断的原则。可以说方法论是实践联系理论,理论联系实践的关键。大多数“不好用”的软件,问题就出在方法论上。继而,软件的完善过程其实就是方法论的完善过程。

3.运行过程自动化程度

最理想的软件,应是一次性输入即刻产生所需结果。中间过程不需要人的干预,软件自动能把所有事情做好。,如图,

较理想的软件,通过单一向导,中间多次输入,软件得出所需结果。过程中软件告诉人做什么,如何做。人需要按照提示,输入初始化的信息,或判断可否。如图,

略理想的软件,通过多选向导,中间多次输入,软件得出所需结果。软件提供多选项,自行组合,人根据需要逐项做出判断后选择。如图,

欠理想的软件,仅提供一个工作平台,每部都需要人工输入、判断和修正,大多数人工录入软件(无论文字、数据或图形)都属于这一类。软件无非是用电子化的方式,表达传统工作文本。软件的方便之处是提供具有一定资源的工作环境,人根据需要,选择适合的资源自己操作。还有就是方便复制和修改。如图,

4.操作步骤的的明确性

如果软件的自动化程度不高,需要大量的人工干预,才能实现所需要的结果。那么,“做什么?”软件应该能够给出明确的步骤。如果软件不说,那么就会造成过程不可控,导致结果不可控。

5.操作流程的指导性

接下来是“如何做?”的问题。此处是在操作者有必要的专业知识的前提下,为其提供符合软件运作需求的操作指导或技术指导。为了实现指导功能,不同的

软件使用了不同的方法。大多数采用案例教程的方式。对一类问题给出一个完整实例,操作者可“对号入座”,“依样葫芦”。还有的是在每一步操作的之前之后给出提示和建议。更有约束型的模式,在操作超出软件工作范围或优化条件时,给出建议或拒绝运行。当然,这样做会带来一定的风险,一方面软件极易产生bug;一方面,对软件面向行业的技术专业性要求更高。

6.对运行结果的建议

好的软件除了对运行过程进行引导、控制外,还应对运行的结果,提供分析功能和建议功能。这是从工具级向系统级迈进的必然趋势。建议既可以包括软件操作优化方面也可包含行业技术方面。但前者是以提高软件效率的,较好实现。而后者则用结合专业知识和行业经验了,通常软件商较难把它说清楚。随着软件定制化的发展,通过共同开发的形式,采用CASE- by-CASE的方式,或许是降低门槛的途径。

7.运行的稳定性

这是反应软件成熟度的指标,稳定性直接反应软件的年龄。通常一个商业软件至少要在3个版本之后,才能够达到基本稳定运行。有时阻碍软件升级的不是没有新功能可增加,而是新功能让软件变得不稳定。

8.数据、网络相关性能

有一种说法,软件就是数据+程序,可见数据的重要度。我们可能都有过当机的经历,当机后让人焦灼的不是不能马上继续工作,而是大量数据还没备份。特别是那些自动化程度不高的软件的数据,浸满了使用者的心血。所以数据安全是第一重要的,有的软件,甚至是很大牌的软件,经常会出现保存后的文件无法打开的问题。这种情况既有软件运行造成破坏的内在原因,也有文件易遭破坏的外部原因。数据尺寸的大小,通常用户在开始的时候并不关心。但用了一段时间,发现软件产生的数据尺寸极大或过程文件太多或运行时调用资源太多。没多久就会因数据管理负担过重而会频生抱怨。软件的数据格式五花八门,有的是软件结构造成的先天原因,有的则是人为制造的技术壁垒。那么,随着软件使用种类的增加,数据的通用性已经成为当务之急。为了解决数据共享的问题,在众软件公司还未达成协议之前,目前多由PDM等专门来承担数据转换任务。

软件评价指标

软件评价指标 Last updated at 10:00 am on 25th December 2020

我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ● 定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ● 企业对外购的软件质量存在怀疑,企业评价软件质量没有一个恰当的指标,对软件可靠性和功能性指标了解不足; ● 软件开发商缺乏历史数据作为指南,所有关于进度和成本的估算都是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的.Boehm和先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制和进度安排方面取得了良好的效果。 第一层是软件质量要素,软件质量可分解成六个要素,这六个要素是软件的基本特征:

1. 功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。 2. 可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠性对某些软件是重要的质量要求,它除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度。 3. 易使用性:对于一个软件,用户学习、操作、准备输入和理解输出时,所做努力的程度。易使用性反映了与用户的友善性,即用户在使用本软件时是否方便。 4. 效率:在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度。效率反映了在完成功能要求时,有没有浪费资源,此外"资源"这个术语有比较广泛的含义,它包括了内存、外存的使用,通道能力及处理时间。 5. 可维修性:在一个可运行软件中,为了满足用户需求、环境改变或软件错误发生时,进行相应修改所做的努力程度。可维修性反映了在用户需求改变或软件环境发生变更时,对软件系统进行相应修改的容易程度。一个易于维护的软件系统也是一个易理解、易测试和易修改的软件,以便纠正或增加新的功能,或允许在不同软件环境上进行操作。 6. 可移植性:从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。 第二层是评价准则,可分成22点。包括精确性(在计算和输出时所需精度的软件属性);健壮性(在发生意外时,能继续执行和恢复系统的软件属性);安全性(防止软件受到意外或蓄意的存取、使用、修改、毁坏或泄密的软件属性);以及通信有效

软件质量评估办法

软件系统质量 记分办法,可以按照月,季或者年进行记分合计,每分对应相应的价格进行奖惩。 上线前 ;95%需求覆盖率,至少 ;5%问题遗留率,最高 BUG严重;10%比率,最高 试运行过程 内(一般以软件交付给用户后的三个月内为初期故障期)指软件在初期故障期初期故障率: 可以用它来评价交付使用的软件质小时的故障数为单位。100一般以每单位时间的故障数。 量与预测什么时候软件可靠性基本稳定。检查项目初期故障率的大小取决于软件设计水平、 数、软件规模、软件调试彻底与否等因素 偶然故障率:指软件在偶然故障期(一般以软件交付给用户后的四个月以后为偶然故障期) 小时的故障数为单位,它反映了软件处于稳定状态下1000内单位时间的故障数。一般以每 的质量 运维过程 )MTBF平均失效间隔时间(

通MTBF指软件在相继两次失效之间正常工作的平均统计时间。在实际使用时, 次失效之间的平均统计时间。n+1次失效与第n很大时,系统第n常是指当 小时左右。1000大体在MTBF国外一般民用软件的则对于可靠性要求高的软件, 小时之间。1000~10000要求在 分;10小时,记1000考核办法:小于 分;20小时,记500小于 分;30小时,记200小于 分并记严重缺陷。50小时,记100小于 易用性指标 分;极差10易用性可通过多方评审来确定,分优秀、良好、一般、较差、极差;较差,记 分并需进行整改。20记 性能质量 吞吐率 。软件必须具有处理海量数据的能单位时间软件的信息处理能力(即各种目标的处理批数) 力。吞吐率就是体现该能力的参数。随着信息的泛滥,要求软件的吞吐率应该达到数百批 最大并发用户数 也可由用户指定,需要通过测试确定,系统在用户使

项目评价质量指标说明

项目评价质量指标说明 一质量管理的依据 1 过程质量管理 对软件开发的整个过程进行质量管理。开发过程质量有保证,最后开发出来的软件的质量就会有保证。对开发过程进行质量管理,能够及时发现问题,解决问题。也符合软件工程的原则:“缺陷越早发现越早修改越经济”。 2QA和SEPG、QC的区别 SEPG:制定过程,实施过程改进; QA:确保过程被正确执行 SEPG应当提供过程上的指导,帮助项目组制定项目过程,帮助项目组进行策划;从而帮助项目组有效的工作,有效的执行过程。如果项目和QA对过程的理解发生争持,SEPG作为最终仲裁者。 如果将一个软件生产类比于一个工厂的生产。那么生产线就是过程,产品按照生产线的规定过程进行生产。SQA的职责就是保证过程的执行,也就是保证生产线的正常执行。 QC,检验产品的质量,保证产品符合客户的需求;是产品质量检查者; QA,审计过程的质量,保证过程被正确执行;是过程质量审计者 QA只要检查项目按照过程进行了某项活动没有,产出了某个产品没有;而QC来检查产品是否符合质量要求。 评价指标里包含和QA和QC的内容。 3公司程序文件 《软件设计开发服务控制程序》对软件产品设计开发过程进行了说明。 《过程和产品的监视测量控制程序》对软件产品的监视和测量进行了说明。4绩效考核 公司绩效考核里有100分的质量考核分数。质量考核分数根据项目质量评价分数计算。 二如何实施 参与项目的整个过程。从项目启动开始,参与需求分析、概要设计、详细设计、编码、测试和实施以及维护的所有阶段。每个阶段都要详细了解项目的情况,根据项目评价指标进行打分,同时提出改进意见。需要完善指标的,对指标进行完善。

软件质量量化标准

软件质量量化标准版本记录: 文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改当前版本: 作者:徐涛 完成日期:2005-3-18签收人: 签收日期: 1编写目的 本文档描述了对软件质量的量化方法,适用于软件相关各部门:项目部、电力产品部、研发中心、支持服务中心。 量化指标主要有:测试缺陷率、遗漏缺陷率、设计评分、代码评分。 2 定义 有效缺陷:经过测试总结会、或由技术总监组织评审,确定为影响软件质量的缺陷(包括已立即修改、及因客观条件影响而暂缓修改的缺陷)定义为有效缺陷。测试组提出的改进性建议不记为有效缺陷。 测试缺陷率:以测试阶段发现并确认的有效缺陷为准,该质量指标用于评价开发团队。 遗漏缺陷率:以软件试运行阶段客户或维护人员发现并确认的有效缺陷为准,该质量指标用于评价测试团队。 设计评分:《需求说明书》、《构架设计》、《概要设计》(包括《数据库设计》)必须通过正式会议评审,并由技术总监组织评分。该质量指标用于评价软件设计人员。 代码评分:项目编码阶段结束之后、项目总结会之前,软件代码成果必须经代码复审,并

由技术总监组织评分。该质量指标用于评价程序员。 3执行细则 测试阶段: 有效缺陷以测试组提交的《测试总结报告》为依据,通过测试总结会,由技术总监组织评 审,并经开发团队和测试团队确认。 试运行阶段: 1)试运行结束日期以客户签字的《试运行分析报告》日期为准。 2)未作版本控制的系统,以《客户信息交流表》记录的缺陷为准。 3)作版本控制的系统,以迁入迁出记录为准,要求迁入迁出必须作修改备注,说明所更 正的缺陷。 缺陷率计算方法 有效缺陷,分为A、B、C、D四级,加权系数分别为、、、; 系统复杂度,分为A、B、C三级,加权系数分别为、、1; 总缺陷数=测试阶段确定的缺陷数+试运行阶段确定的缺陷数; 缺陷比=(A* + B* + C* + D*)/总缺陷数; 缺陷率=(A* + B* + C* + D*)/ (代码行数 * 系统复杂度); 缺陷分类标准 软件缺陷分类标准 缺陷 备注分类范畴细类 等级 不能执行正常工作工那或重要功系统缺陷由于程序所引起的死机,非法退出A类 能,使系统崩溃或资源严重不足程序死循环A类 程序错误A类

软件产品评价 软件质量特性及其使用指南

中华人民共和国国家标准 GB/T16260—1996 idt ISO/IEC9126:1991 信息技术软件产品评价质量特性及其使用指南 Information technology-software product evaluation-Quality characteristics and guidelines for their use ----------------------------------------------------------- 1.范围 本标准定义了六个特性,它们以最小的重迭描述了软件质量。这些特性可以作为进一步细化和描述软件质性的基线。本际准描述了如何使用质量特性来评价软件质量。 本标准正文不规定子特性和度量以及有关测量(masurement)、评级(rating)和评估(asscssment)的方法。本际准符合GB/T 6583-92的质量定义。 注:在附录A中提供了子特性定义的建议,供参考。 本标准的特性定义和相关的质量评价过程模型适用于对软件产品质量需求的确 定以及在软件生存期中对软件产品质量的评价。 这些特性运用于各种软件,包括固件中的计算机程序和数据。 本标准供获取(acquisition)、开发(development)、使用(use)、支持(support)、维护(maintenancen)或评审(audit)软件的那些人所使用。 2.引用标准 下列标准包含的条文,通过在本标准中引用而构成为本标准的条文。本标准出版时,所示版本均为有效。所有标准都会被修订.使用本标准的各方应探讨使用下列标准最新版本的可能性。. GB/T 6583-92质量术语(idt ISO 84O2:1986) 部分:系统开发2O第词汇信息技术1990 :2O-ISO/IEC 2382. 3.定义 下列定义适用于本标准 3.1发评估assessment 为了确定一特定的软件模块、软件包或软件产品是验收合格还是发布,把特定的已成文的评估准则应用到该软件模块、软件包或软件产品上去的活动。 3.2特征features 特征是一软件产品的可识别的性质,该性质与质量特性相关。

软件产品评价软件质量特性及其使用指南

软件产品评价软件质量特性及其使用指南--------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 中华人民共和国国家标准 GB,T16260—1996 idt ISO,IEC9126:1991 信息技术软件产品评价质量特性及其使用指南 Information technology-software product evaluation,Quality characteristics and guidelines for their use ----------------------------------------------------------- 1. 范围 本标准定义了六个特性,它们以最小的重迭描述了软件质量。这些特性可以作为进一步细化和描述软件质性的基线。本际准描述了如何使用质量特性来评价软件质量。 本标准正文不规定子特性和度量以及有关测量(masurement)、评级(rating)和评估(asscssment)的方法。本际准符合GB,T 6583,92的质量定义。 注:在附录A中提供了子特性定义的建议,供参考。 本标准的特性定义和相关的质量评价过程模型适用于对软件产品质量需求的确定以及在软件生存期中对软件产品质量的评价。 这些特性运用于各种软件,包括固件中的计算机程序和数据。 本标准供获取(acquisition)、开发(development)、使用(use)、支持(support)、维护(maintenancen)或评审(audit)软件的那些人所使用。 2. 引用标准

下列标准包含的条文,通过在本标准中引用而构成为本标准的条文。本标准出版时,所示版本均为有效。所有标准都会被修订.使用本标准的各方应探讨使用--------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- ----------------------------------------------------------------------------------------------------------------------------- --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 下列标准最新版本的可能性。 GB/T 6583,92 质量术语(idt ISO 84O2:1986) ISO/IEC 2382,2O:1990 信息技术词汇第2O部分:系统开发 --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- ----------------------------------------------------------------------------------------------------------------------------- --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 3. 定义 下列定义适用于本标准 3.1 发评估assessment 为了确定一特定的软件模块、软件包或软件产品是验收合格还是发布,把特定的已成文的评估准则应用到该软件模块、软件包或软件产品上去的活动。 3.2 特征 features 特征是一软件产品的可识别的性质,该性质与质量特性相关。

软件质量量化标准

软件质量量化标准 版本记录: 1编写目的 本文档描述了对软件质量的量化方法,适用于软件相关各部门:项目部、电力产品部、研发中心、支持服务中心。 量化指标主要有:测试缺陷率、遗漏缺陷率、设计评分、代码评分。 2 定义 有效缺陷:经过测试总结会、或由技术总监组织评审,确定为影响软件质量的缺陷(包括已立即修改、及因客观条件影响而暂缓修改的缺陷)定义为有效缺陷。测试组提出的改进性建议不记为有效缺陷。 测试缺陷率:以测试阶段发现并确认的有效缺陷为准,该质量指标用于评价开发团队。 遗漏缺陷率:以软件试运行阶段客户或维护人员发现并确认的有效缺陷为准,该质量指标用于评价测试团队。 设计评分:《需求说明书》、《构架设计》、《概要设计》(包括《数据库设计》)必须通过正式会议评审,并由技术总监组织评分。该质量指标用于评价软件设计人员。 代码评分:项目编码阶段结束之后、项目总结会之前,软件代码成果必须经代码复审,并由技术总监组织评分。该质量指标用于评价程序员。 3执行细则

测试阶段: 有效缺陷以测试组提交的《测试总结报告》为依据,通过测试总结会,由技术总监组织评审,并经开发团队和测试团队确认。 试运行阶段: 1)试运行结束日期以客户签字的《试运行分析报告》日期为准。 2)未作版本控制的系统,以《客户信息交流表》记录的缺陷为准。 3)作版本控制的系统,以迁入迁出记录为准,要求迁入迁出必须作修改备注,说明所更 正的缺陷。 缺陷率计算方法 有效缺陷,分为A、B、C、D四级,加权系数分别为1.2、1.1、1.0、0.9; 系统复杂度,分为A、B、C三级,加权系数分别为1.5、1.2、1; 总缺陷数=测试阶段确定的缺陷数+试运行阶段确定的缺陷数; 缺陷比=(A*1.2 + B*1.1 + C*1.0 + D*0.9)/总缺陷数; 缺陷率=(A*1.2 + B*1.1 + C*1.0 + D*0.9)/ (代码行数 * 系统复杂度); 缺陷分类标准

软件评价指标

软件评价指标 文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]

我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ● 定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ● 企业对外购的软件质量存在怀疑,企业评价软件质量没有一个恰当的指标,对软件可靠性和功能性指标了解不足; ● 软件开发商缺乏历史数据作为指南,所有关于进度和成本的估算都是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的B.W.Boehm和R.Brown 先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后G.Mruine 提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM 技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制和进度安排方面取得了良好的效果。 第一层是软件质量要素,软件质量可分解成六个要素,这六个要素是软件的基本特征: 1. 功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。 2. 可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠

如何对软件质量进行评估

如何对软件质量进行评估 1 软件质量的有关概念软件质量是“软件产品具有满足规定的或隐含要求能力要求有关的特征与特征总和”。根据软件质量国家标准GB-T8566--2001G,软件质量评估通常从对软件质量框架的分析开始。1.1 软件质量框架模型如图1所示,软件质量框架是一个“质量特征—质量子特征—度量因子”的三层结构模型。 在这个框架模型中,上层是面向治理的质量特征,每一个质量特征是用以描述和评价软件质量的一组属性,代表软件质量的一个方面。软件质量不仅从该软件外部表现出来的特征来确定,而且必须从其内部所具有的特征来确定。 第二层的质量子特征是上层质量特征的细化,一个特定的子特征可以对应若干个质量特征。软件质量子特征是治理人员和技术人员关于软件质量问题的通讯渠道。 最下面一层是软件质量度量因子(包括各种参数),用来度量质量特征。定量化的度量因子可以直接测量或统计得到,为最终得到软件质量子特征值和特征值提供依据。如何对软件质量进行评估(图一) 图1 软件质量框架模型1.2 软件质量特征 按照软件质量国家标准GB-T8566--2001G,软件质量可以用下列特征来评价: a.功能特征:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。 b.可靠特征:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。 c.易用特征:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属

性。 d.效率特征:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。 e.可维护特征:与进行指定的修改所需的努力有关的一组属性。 f.可移植特征:与软件从一个环境转移到另一个环境的能力有关的一组属性。 其中每一个质量特征都分别与若干子特征相对应。 2 评估指标的选取原则 选择合适的指标体系并使其量化是软件测试与评估的要害。评估指标可以分为定性指标和定量指标两种。理论上讲,为了能够科学客观地反映软件的质量特征,应该尽量选择定量指标。但是对于大多数软件来说,并不是所有的质量特征都可以用定量指标进行描述,所以不可避免地要采用一定的定性指标。 在选取评估指标时,应该把握如下原则: a.针对性 即不同于一般软件系统,能够反映评估软件的本质特征,具体表现就是功能性与高可靠性。 b.可测性 即能够定量表示,可以通过数学计算、平台测试、经验统计等方法得到具体数据。 c.简明性 即易于被各方理解和接受。 d.完备性 即选择的指标应覆盖分析目标所涉及的范围。 e.客观性 即客观反映软件本质特征,不能因人而异。 应该注重的是,选择的评估指标不是越多越好,要害在于指标在评估中所起的作用的大小。假如评估时指标太多,不仅增加结果的复杂性,有时甚至会影响评估的客观性。指标的确定一般是采用自顶向下的方法,逐层分解,并且需要在动态过程中反复综合平衡。 3 软件质量评估指标体系

对软件质量的评价

对软件质量的评价 对软件质量的评价,现在还没有统一标准。根据个人使用CAX软件的经验,我通常从几个方面来做判断, 1.核心理论的正确性 主要是指支撑软件的理论基础,必须是科学的、严谨的、具有普适意义的。如很多管理理论源自欧美,其社会实践受其历史人文的影响,带有先天的局限性和时效性。那么在这些理论基础上开发的软件多数也只能完成数据库功能,而基于数据的分析、预测等,很难有真正的现实意义。 2.方法论的有效性 方法论是保证软件工作流程有效性的基础,是软件在核心理论模型引导下解决具体问题的通用流程、步骤和方式,及其选择和判断的原则。可以说方法论是实践联系理论,理论联系实践的关键。大多数“不好用”的软件,问题就出在方法论上。继而,软件的完善过程其实就是方法论的完善过程。 3.运行过程自动化程度 最理想的软件,应是一次性输入即刻产生所需结果。中间过程不需要人的干预,软件自动能把所有事情做好。,如图, 较理想的软件,通过单一向导,中间多次输入,软件得出所需结果。过程中软件告诉人做什么,如何做。人需要按照提示,输入初始化的信息,或判断可否。如图,

略理想的软件,通过多选向导,中间多次输入,软件得出所需结果。软件提供多选项,自行组合,人根据需要逐项做出判断后选择。如图, 欠理想的软件,仅提供一个工作平台,每部都需要人工输入、判断和修正,大多数人工录入软件(无论文字、数据或图形)都属于这一类。软件无非是用电子化的方式,表达传统工作文本。软件的方便之处是提供具有一定资源的工作环境,人根据需要,选择适合的资源自己操作。还有就是方便复制和修改。如图, 4.操作步骤的的明确性 如果软件的自动化程度不高,需要大量的人工干预,才能实现所需要的结果。那么,“做什么?”软件应该能够给出明确的步骤。如果软件不说,那么就会造成过程不可控,导致结果不可控。 5.操作流程的指导性 接下来是“如何做?”的问题。此处是在操作者有必要的专业知识的前提下,为其提供符合软件运作需求的操作指导或技术指导。为了实现指导功能,不同的

软件质量评估概念

软件质量评估 1 软件质量的有关概念 软件质量是“软件产品具有满足规定的或隐含要求能力要求有关的特征与特征总和”。根据软件质量国家标准GB-T8566--2001G,软件质量评估通常从对软件质量框架的分析开始。 1.1 软件质量框架模型 如图1所示,软件质量框架是一个“质量特征—质量子特征—度量因子”的三层结构模型。 在这个框架模型中,上层是面向管理的质量特征,每一个质量特征是用以描述和评价软件质量的一组属性,代表软件质量的一个方面。软件质量不仅从该软件外部表现出来的特征来确定,而且必须从其内部所具有的特征来确定。 第二层的质量子特征是上层质量特征的细化,一个特定的子特征可以对应若干个质量特征。软件质量子特征是管理人员和技术人员关于软件质量问题的通讯渠道。 最下面一层是软件质量度量因子(包括各种参数),用来度量质量特征。定量化的度量因子可以直接测量或统计得到,为最终得到软件质量子特征值和特征值提供依据。 1.2 软件质量特征 按照软件质量国家标准GB-T8566--2001G,软件质量可以用下列特征来评价: a.功能特征:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。 b.可靠特征:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。 c.易用特征:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性。 d.效率特征:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。 e.可维护特征:与进行指定的修改所需的努力有关的一组属性。 f.可移植特征:与软件从一个环境转移到另一个环境的能力有关的一组属性。 其中每一个质量特征都分别与若干子特征相对应。

软件评价指标

我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些就是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ● 定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ● 企业对外购的软件质量存在怀疑,企业评价软件质量没有一个恰当的指标,对软件可靠性与功能性指标了解不足; ●软件开发商缺乏历史数据作为指南,所有关于进度与成本的估算都就是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的B、W、Boehm与R、Brown 先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后G、Mruine提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制与进度安排方面取得了良好的效果。 第一层就是软件质量要素,软件质量可分解成六个要素,这六个要素就是软件的基本特征: 1、功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能就是否全部实现了。 2、可靠性:在规定的时间与条件下,软件所能维持其性能水平的程度。可靠性对某些软件就是重要的质量要求,它除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度。 3、易使用性:对于一个软件,用户学习、操作、准备输入与理解输出时,所做努力的程度。易使用性反映了与用户的友善性,即用户在使用本软件时就是否方便。 4、效率:在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度。效率反映了在完成功能要求时,有没有浪费资源,此外"资源"这个术语有比较广泛的含义,它包括了内存、外存的使用,通道能力及处理时间。 5、可维修性:在一个可运行软件中,为了满足用户需求、环境改变或软件错误发生时,进行相应修改所做的努力程度。可维修性反映了在用户需求改变或软件环境发生变更时,对软件系统进行相应修改的容易程度。一个易于维护的软件系统也就是一个易理解、易测试与易修改的软件,以便纠正或增加新的功能,或允许在不同软件环境上进行操作。 6、可移植性:从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。

第3章 软件质量与评价

第3章软件质量与评价(软件测试标准) 1、质量的定义 质量是多维的概念,包括:实体、实体的属性和对实体的观点。 GB/T6583-ISO8404(1994版)《质量管理与质量保证术语》对质量的定义是:反映实体满足明确的隐含的需要的能力的特性的总和。 GB/T18905-ISO14598(1999版)《软件工程产品评价》定义: 2、测度与度量 在软件质量中用于测量的一种量化的标度和方法即为“测度”,而名词的“度量”用来指测量的结果。 影响软件质量可分为:可直接测量、间接度量 3、软件质量模型 ○1、McCall(麦考尔)质量模型 三个重要方面:操作特性(产品运行)、承受可改变能力(产品修订)、新环境适应能力(产品变迁)。 McCall等认为,特性是软件质量的反映,软件属性可用做评价准则,定量化地度量软件属性可知软件质量的优劣。 ②Boehm(勃姆)质量模型 提出了分层结构的质量模型,除了用户的期望和需要的概念,与McCall(麦考尔)质量模型相同外,还包括McCall模型中没有的硬件特性。 Boehm(勃姆)质量模型反映了对软件质量的理解,即软件做了用户要它做的;有效地使用系统资源;易于用户学习和使用;易于软件测试与维护。 ③ISO9126质量模型 GB/T16260-1996:六个影响质量的特性:功能性、可靠性、易使用性、效率、可维护性、可移植性;各个子特性(及其定义)要求要背 GB/T16260-1996出发点是软件最大限度地满足用户的明确的和潜在的需求。 国标16260中,在描述外部(内部)效率度量时,给出了若干针对计算机系统时间消耗的定义如下: 响应时间是指从按动传送键到得到结果为止所需要的时间或响应时间包括处理时间和传输时间 处理时间是指从接受一个消息到送出它的结果之间计算机的历时时间 ③ 周转时间是指从提出要求到得到结果所需要的时间 4、标准的发展 GB/T 16260-1996(ISO9126-1991)《软件产品评价-质量特性及其使用指南》已被两个相关的由多部分组成的标准:GB/T 18905-2002《软件工程产品评价》和GB/T 16260-2003(ISO9126-2001)《软件工程产品质量》所取代。 5、GB/T 18905产品评价 (一、GB/T 18905基本组成(6个部分组成) GB/T 软件工程产品评价第1部分: 概述 GB/T 软件工程产品评价第2部分: 策划和管理 GB/T 软件工程产品评价第3部分: 开发者用的过程

软件质量量化指标

软件质量量化指标 Revised as of 23 November 2020

软件测试质量评估方法讨论稿 当前我们的软件测试质量评估主要考虑测试设计、测试执行两个方面,在测试过程中加入检查点进行监督,避免项目后期对项目的进展产生影响。一、测试设计 测试设计主要指测试用例,其衡量方法采用事后追溯法,通过所有的测试 二、测试执行 ●每轮测试缺陷探测效率分析 在软件完成一轮完整测试后、或者在某个版本的测试后发现bug曲线有异常抬高,需要对该轮所发现所有缺陷进行历史版本追溯分析,主要有以下几情 说明: 1.对于1、2需要进行相关文档补充和更新,保证后续测试的全面性; 2.对于3则属于个人问题,保证后续测试中避免该问题的发生; 3.对于4则属于正常现像; 4.对于5,则看实际导致的问题的数量,及后续bug曲线的收敛程度来确认开 发人员所提交测试版本的质量。 ●A/B角互测验证 1.其本质也是确认缺陷探测效率,但通过B角去实现。在项目的某个测试阶 段加入B角进行一轮全面或局部测试,通过其发现的问题来确定当前软件的测试质量。由于项目真正测试过程中的测试思路和测试用例需要不断更新,这样才能保证测试的全面性,如果发现统计数据异常能及时调整;2.在测试计划中添加A/B角的定义及B角参与的阶段;并在该阶段的测试报 告中体现; 3.Alpha测试用户为自然B角,对Alpha测试过程中所发现的问题均要进行分 析。

IT168 分析评论】 软件质量的量化评估,最重要的一点是经验。同时科能需要大量统计工作作为铺垫。 下面我主要从bug统计来说一下我的经验。 1 测试项目数和摘出bug数预测 一般来说我们可以根据软件代码行数来粗略估计一个产品可能包含的bug数目和需要的测试项目。现在有些公司流行每千行bug数的标准来制定测试计划,这个标准是通过以往测试经验总结出来的, 一般来说,同类的产品,尤其是同一个开发流程的产品,这些数值不应该相差太多,如果相差一个数量级以上,我们几乎可以说,要么是QA出问题了,要么是开发出问题了。 2 测试bug分级 使用bugzilla或者Jira之类的缺陷管理系统何以很容易的实现bug分级,一般至少有Fatal, Major, Minor, cosmatic这几种,还有一种特殊的叫做blocker,意思是这个bug会影响测试进度。产品发布前,可以根据实际情况,定一个界限级别,比如要求新出Major为0,并且所有已有的Major全部close。 3 测试bug收敛 量化评估必不可少的是bug收敛,这个要通过统计每日新出bug并跟踪已有bug制作收敛曲线来实现。收敛曲线的形状发散表明目前产品极其不稳定,收敛曲线开始收敛表示目前产品趋于稳定,完全收敛之后可以认为是发布的时机。 4 测试bug分布 bug分布是决定下面测试重点的一个重要的参考数据。首先还是需要统计,找出所有已有的不同级别的bug在各个模块的分布,假如ABC三个模块,A模块占了bug的60%,C模块占了bug的8%那么,我们可以得出这样的结论,软件的不稳定瓶颈在于A模块,是一个薄弱点,需要开发人员集中力量对应。但是C 模块也是一个可疑模块,因为出现bug率太低,如果不是开发的太好就是测试方法不当。 5 测试bug的周期 一个bug的生命历程是一个完整的轮回,从他出生(open)开始,到调查(Accept)到修复(Fix),再到确认(Verify)是最简单的路线,这个周期越短,说明项目进展越顺利反之则意味着项目进度目前有很大的阻碍。 6 降级bug数 降级bug的多少对于软件质量评估也是一个重要参考标准,降级bug也就是由于修正一个bug又作了一个新bug,降级bug数目过多意味着现在的产品在越修越坏。一个新的QA团队,在2,3,4,5,6步骤可能会有所迷惑,不知道阈值应该怎样选但如果每次都坚持这样做,很多次之后2,3,4,5,6会给这个团队大量的经验积累,完全可以做到看着统计图估计出一个产品处于什么状态,需要加强哪些方面等等。 上这些度量项,对于测试管理者来说应该都不陌生,全部整理到一起,真的还是蛮齐全的了。测试品质保证的乐趣,其实很多就在这些关键度量元素间。其一,这样的分析显然是颇具科学意义的,统计学嘛;其二,真正能通过管理这些度量项达到提高质量的效果,那是一件很美妙的事情。我个人而言,比较有实用感触的是1,2,3,5,15这几项。 1---客户反馈缺陷,即漏测。其实这是一个很直观的质量保证结果,本人非常崇尚用这个指标衡量测试人

【项目管理知识】质量管理如何对软件质量进行评估

质量管理:如何对软件质量进行评估 本文从软件质量的有关概念出发,根据指标选取原则,在分析软件质量特征的基础上提出了相应的软件质量评估指标的选取原则,并进而建立了软件质量评估体系。 1软件质量的有关概念 软件质量是“软件产品具有满足规定的或隐含要求能力要求有关的特征与特征总和”。根据软件质量国家标准GB-T8566--____G,软件质量评估通常从对软件质量框架的分析开始。 1.1软件质量框架模型 如图1所示,软件质量框架是一个“质量特征―质量子特征―度量因子”的三层结构模型。 在这个框架模型中,上层是面向管理的质量特征,每一个质量特征是用以描述和评价软件质量的一组属性,代表软件质量的一个方面。软件质量不仅从该软件外部表现出来的特征来确定,而且必须从其内部所具有的特征来确定。 第二层的质量子特征是上层质量特征的细化,一个特定的子特征可以对应若干个质量特征。软件质量子特征是管理人员和技术人员关于软件质量问题的通讯渠道。 下面一层是软件质量度量因子(包括各种参数),用来度量质量特征。定量化的度量因子可以直接测量或统计得到,为终得到软件质量子特征值和特征值提供依据。 图1软件质量框架模型

1.2软件质量特征 按照软件质量国家标准GB-T8566--____G,软件质量可以用下列特征来评价: a.功能特征:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。 b.可靠特征:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。 c.易用特征:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性。 d.效率特征:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。 e.可维护特征:与进行指定的修改所需的努力有关的一组属性。 f.可移植特征:与软件从一个环境转移到另一个环境的能力有关的一组属性。 其中每一个质量特征都分别与若干子特征相对应。 2评估指标的选取原则 选择合适的指标体系并使其量化是软件测试与评估的关键。评估指标可以分为定性指标和定量指标两种。理论上讲,为了能够科学客观地反映软件的质量特征,应该尽量选择定量指标。但是对于大多数软件来说,并不是所有的质量特征都可以用定量指标进行描述,所以不可避免地要采用一定的定性指标。 在选取评估指标时,应该把握如下原则:

软件质量量化指标

软件测试质量评估方法讨论稿 当前我们的软件测试质量评估主要考虑测试设计、测试执行两个方面,在测试过程中加入检查点进行监督,避免项目后期对项目的进展产生影响。 一、测试设计 测试设计主要指测试用例,其衡量方法采用事后追溯法,通过所有的测试发 二、测试执行 ●每轮测试缺陷探测效率分析 在软件完成一轮完整测试后、或者在某个版本的测试后发现bug曲线有异常抬高,需要对该轮所发现所有缺陷进行历史版本追溯分析,主要有以下几情况分 说明: 1.对于1、2需要进行相关文档补充和更新,保证后续测试的全面性; 2.对于3则属于个人问题,保证后续测试中避免该问题的发生; 3.对于4则属于正常现像; 4.对于5,则看实际导致的问题的数量,及后续bug曲线的收敛程度来确认开 发人员所提交测试版本的质量。 ●A/B角互测验证 1.其本质也是确认缺陷探测效率,但通过B角去实现。在项目的某个测试阶段 加入B角进行一轮全面或局部测试,通过其发现的问题来确定当前软件的测试质量。由于项目真正测试过程中的测试思路和测试用例需要不断更新,这样才能保证测试的全面性,如果发现统计数据异常能及时调整; 2.在测试计划中添加A/B角的定义及B角参与的阶段;并在该阶段的测试报告 中体现; 3.Alpha测试用户为自然B角,对Alpha测试过程中所发现的问题均要进行分 析。

软件质量量化 IT168 分析评论】 软件质量的量化评估,最重要的一点是经验。同时科能需要大量统计工作作为铺垫。 下面我主要从bug统计来说一下我的经验。 1 测试项目数和摘出bug数预测 一般来说我们可以根据软件代码行数来粗略估计一个产品可能包含的bug数目和需要的测试项目。现在有些公司流行每千行bug数的标准来制定测试计划,这个标准是通过以往测试经验总结出来的, 一般来说,同类的产品,尤其是同一个开发流程的产品,这些数值不应该相差太多,如果相差一个数量级以上,我们几乎可以说,要么是QA出问题了,要么是开发出问题了。 2 测试bug分级 使用bugzilla或者Jira之类的缺陷管理系统何以很容易的实现bug分级,一般至少有Fatal, Major, Minor, cosmatic这几种,还有一种特殊的叫做blocker,意思是这个bug会影响测试进度。产品发布前,可以根据实际情况,定一个界限级别,比如要求新出Major为0,并且所有已有的Major全部close。 3 测试bug收敛 量化评估必不可少的是bug收敛,这个要通过统计每日新出bug并跟踪已有bug制作收敛曲线来实现。收敛曲线的形状发散表明目前产品极其不稳定,收敛曲线开始收敛表示目前产品趋于稳定,完全收敛 之后可以认为是发布的时机。 4 测试bug分布 bug分布是决定下面测试重点的一个重要的参考数据。首先还是需要统计,找出所有已有的不同级别的bug在各个模块的分布,假如ABC三个模块,A模块占了bug的60%,C模块占了bug的8%那么,我们可以得出这样的结论,软件的不稳定瓶颈在于A模块,是一个薄弱点,需要开发人员集中力量对应。但是 C模块也是一个可疑模块,因为出现bug率太低,如果不是开发的太好就是测试方法不当。 5 测试bug的周期 一个bug的生命历程是一个完整的轮回,从他出生(open)开始,到调查(Accept)到修复(Fix),再到确认(Verify)是最简单的路线,这个周期越短,说明项目进展越顺利反之则意味着项目进度目前有很大 的阻碍。

如何评价软件的质量

如何评价软件的质量 我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ?定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ?企业对外购的软件质量存在怀疑,企业评价软件质量没有恰当的指标,对软件可靠性和功能性指标了解不足; ?软件开发商缺乏历史数据作为指南,所有关于进度和成本的估算都是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的B.W.Boehm和R.Brown 先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后G.Mruine提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制和进度安排方面取得了良好的效果。 第一层是软件质量要素,软件质量可分解成六个要素,这六个要素是软件的基本特征: 1. 功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。 2. 可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠性对某些软件是重要的质量要求,它除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度。 3. 易使用性:对于一个软件,用户学习、操作、准备输入和理解输出时,所做努力的程度。易使用性反映了与用户的友善性,即用户在使用本软件时是否方便。

软件质量因素及其指标

软件质量因素及其指标 一、运行因素 1、正确性(Correctness) 软件满足需求说明书规定以及用户补充提出任务要求的程度。 包括安全性(Completeness)和可跟踪性(Traceability)2个指标。 2、可靠性(Reliability) 在规定的条件下和规定的时间内软件正确运行的概率。 包括精确性(Accuracy)、容错性(Error Tolerance)、兼容性(Consistency) 等指标。 3、效率(Efficiency) 软件运行所需的资源和时间开销。 包括存储效率(storage Efficiency)和执行效率(Execution Efficiency)2个指标。 4、完整性(Integrity)或安全性(security) 对软件或数据所受到的未经获准的存取或修改可以加以控制的程度。 包括存取控制(Access Control)和存取审查(Access Audit)2个指标。 5、可用性(Usability) 掌握该软件运行的容易程度。 包括可操作性(Operability)、易培训性(Training)和通信性(Communicativeness)3个指标。 二、修正因素──软件经受修改的能力 1、可维护性(Maintainability) 对软件理解、纠错的容易程度。 包括简明性(Simplicity)、可简洁性(Concisenes)模块性(Modularity)等指标。 2、灵活性(Flexibility) 对软件修改或扩充的可能性和容易程度。 包括通用性(Generality)、可扩充性(Expandabitity)等指标。 3、可测试性(Testability) 对软件测试的容易程度。 包括自检性(Instrumentation)、自描述性(Self-Descriptiveness)等指标。 三、转移因素──软件适应新环境的能力 1、可移植性(Port ability) 软件转移到另一个环境运行的可能性和容易程度。 包括软件系统独立性(Software System Independence)、机器独立性(Machine Independence)等指标。 2、可复用性(Reusability) 软件的全部或局部可以在其它应用中再次利用的程度。 3、共运行性(Interoperability) 与其他软件联合起来协调工作的可能性和容易程度。 包括相互通信性(Communications Commonality)、数据公用性(Data Commonality)等指标。

相关文档
最新文档