当前位置:首页 > 问答百科 > 正文内容

如何制定质量目标(软件质量目标制定4步法及指导作用)

福瑞号2022-12-11 20:40:09问答百科160

之前给大家介绍过如何制定质量目标,但是很多同学说,哪些理论和方法适用于硬件,但最近发现有很多质量同学都从原有硬件或运营质量转型到软件质量,于是就问宋老师很多关于如何制定软件质量目标的问题,在与同学交流中发现大家还是存在一些误区或者理解不到位的地方,有必要再专门谈谈软件质量目标的问题。

如何制定质量目标(软件质量目标制定4步法及指导作用)-图1

首先我们回顾一下关于质量的定义:

一组固有特性满足要求的程度

因此,我们好理解,软件质量,就是软件的一组固有特性满足要求的程度。

国际上对软件产品质量模型有相关的标准予以明确,最早是ISO/IEC9126,提出软件产品质量六特性:功能性、可靠性、易用性、效率、可维护和可移植性,每个特性下面又有子特性。在后面的ISO/IEC 25010标准又进行了更新如下:

如何制定质量目标(软件质量目标制定4步法及指导作用)-图2

从6大特性,变成8大特性,其中安全性之前是归在功能性中的,目前已经调整为主要特性了。

在软件产品发布前,我们通常会检查是否满足产品质量目标要求,如果达成就可以发布,如果没有就走异常决策流程。

但是,我看了很多同学给我的质量目标或标准,基本都是:缺陷修复率、遗留缺陷、获取需求功能达成率、测试覆盖率,之类的指标。

其实这些指标中,还是容易被绕过的。有一次,在与一家公司的质量人员交流时,他们觉得很诧异,为什么会被绕过呢。我举了个例子,比如,经常用的关键评价指标,代码覆盖度,还有 遗留缺陷数。比如,我们定义 代码测试覆盖度>90%,大家可能会选择容易测试的地方进行测试,特别做单元测试时,本来最好是路径或逻辑覆盖,但为容易达到目标,就直接采用语句覆盖的方式。轻松达到覆盖率100%,很多质量人员,如果不懂得软件开发或者测试的技术,很容易就被糊弄过去,还会疑惑,测试覆盖率都这么高了,为啥质量还这么差呢?

对于遗留缺陷数指标,也是同样道理。如果,我们只做了系统黑盒测试,遗留3个缺陷,看起来很少对吧。但如果,你要求除了 系统黑盒,还要求集成灰盒、代码白盒测试,同样遗留3个缺陷,但他们的质量水平是完全不同的。

显然,如果只看定量的遗留缺陷指标,根本没法有效判定产品的质量状况。

那么,我们该如何建立质量目标体系呢?这里给大家介绍一个简单可操作的4步法。

1.

识别质量特性

产品在设计时,通常会研究客户需求,针对客户需求,形成产品特性,这些特性就是我们质量定义中的所谓“固有特性”。因此,我们时刻牢记,质量目标来源于客户,是满足客户需求为目的的。

但有同学问,那我如何知道应该有什么质量特性呢?

很简单,还记得上面宋老师给大家的软件产品质量模型么?把所有这些特性都列出来,然后让产品经理或者设计产品的同事,选出来即可。模型里面的特性,基本涵盖了软件产品质量的所有特性。

2.

特性进行量化

既然是质量目标,除了识别特性外,还需要针对各项软件特性时必须给出定量的指标,下面举几个例子:

·功能数:指明软件必要的功能及数量和软件想要的功能及数量。该指标可以用来衡量软件的功能性这一特性。

·正常运行率:指明软件在用户环境下,正常运行时间占全部运行时间的百分比。该指标可以用来衡量软件的可靠性这一特性。

·培训时间:指明在用户的技术水平下,达到正常使用状态。所需要的学习时间。该指标可以用来衡量软件的易用性这一特性。

·响应时问:指明每个用户命令的响应时间。该指标可以用来衡量软件的效率这一特性。

·代码注释行率:指明有注释行的代码行数占所有代码行数的比率。该指标可以用来衡量软件的可维护性这一特性。还有常用的圈复杂度,也可以来衡量可维护性。

·运行环境:指明软件所要使用的软硬件环境。该指标可以用来衡量软件的可移植性。

·测试反馈周期:指明软件测试的效率和周期,可以反应软件的可测试性

还有其他特性也都可以选择一个指标来衡量具体特性。

但是,要注意,各特性之间是有冲突的,比如,效率与安全性,另外从经济性考虑,也不可能把每个特性都做到最好,因此,需要做些成本平衡,还有特性冲突的平衡。

3.

建立全面产品质量评估体系

宋老师认为,全面评估,应该涵盖:定量+定性、过程+结果。

宋老师常用的评估方法:

1、覆盖度:包括 广度覆盖,比如,需求测试覆盖率。还包括,路径覆盖。从需求与实现两个维度来评估,是定量的指标;

2、开发过程:包括, 测试方法,还有软件质量保证的工程方法,比如,单元测试,软件可增长测试、代码评审,设计模式,TDD,在过程中要明确需要采用的方法,这属于定性类类的;

3、缺陷:包括,遗留缺陷数、缺陷密度、缺陷修复曲线、缺陷生存期、缺陷的ODC分析。

4.

开发过程适配

如何制定质量目标(软件质量目标制定4步法及指导作用)-图3

上述是比较典型的V模型,我们目前很多的软件开发流程就是基于此流程构建的。通过流程将整个开发过程进行了分段的管理。因此,原有过程级别的质量目标就出现问题了。比如,缺陷分析这里,集成测试,系统测试,验收测试,显然也应该是不同的质量目标,因此,在之前基础上,把质量目标再按开发过程阶段进行分阶段的过程质量目标。

形成如下图所示类似的质量目标分解表:

如何制定质量目标(软件质量目标制定4步法及指导作用)-图4

OK,经过上述4个步骤,基本一个产品开发项目的质量目标就基本确定下来了。

产品质量目标确定下来后,如何保证产品开发质量目标的达成,就需要进行制定对应的QC与QA计划了。

对软件而言其中QC计划,实际是在质量目标指导下,对软件执行的测试。

但是大家要认识到,测试本身并不能证明软件没缺陷,而且软件测试的全覆盖,会消耗及其巨大的成本,因此,通常是基于风险的测试,符合 good-engouth 原则。

在选择测试内容时,通常根据:质量等级*风险 为权重,来对测试用例排序,再依据资源约束来确定测试方案。

质量等级越高,质量指标设定就会越高;

越是新的特性,或者有变化的特性,风险相对就越高;

QC计划要很好的执行下去,也需要识别风险,同时,在质量评估模型中确定的质量预防活动,风险应对措施与预防措施整合在一起,就形成我们的质量保证计划,通过审计确保这些措施的执行。

关于质量目标到测试策略、测试方案、测试用例,到质量保证计划,是一个系统化分解的过程,这篇文章就不细谈了。

如果在实际应用中有什么疑问,加我下面二维码,继续探讨。

-End-

如何制定质量目标(软件质量目标制定4步法及指导作用)-图5
如何制定质量目标(软件质量目标制定4步法及指导作用)-图6

如果觉得文章还行,别忘记点在看

扫描二维码推送至手机访问。

版权声明:本文由福瑞号发布,如需转载请注明出处。

本文链接:https://furui.com.cn/15848.html

“如何制定质量目标(软件质量目标制定4步法及指导作用)” 的相关文章

求与魔兽世界有关的小说(6本已完结魔兽类网游小说)

求与魔兽世界有关的小说(6本已完结魔兽类网游小说)

大家好,这里是宅胖看书,今天给大家介绍的是魔兽类网游小说,现在不知道还有多少人在玩魔兽这款游戏了,妥妥的尘封在脑海的回忆。本篇偏网游和竞技,适合曾经的玩家和粉丝阅读,不喜勿入。废话不多说,下面进入说书环节。(PS:魔兽同人系列是一个规模庞大的工程,感兴趣的可以关注宅胖,之后陆续更新) 第一本《魔兽英...

你节操掉了是什么意思(校园小甜文)

你节操掉了是什么意思(校园小甜文)

嘿,爱看小说的书迷们,很高兴再次与你们相见,最近各位小可爱都喜欢什么类型的小说呢?最近小万迷上了言情文,故事剧情跌宕起伏,让人情不自禁,而小万最热衷于就是把好看的书分享给各位书迷,今天我就向大家推荐校园小甜文,强推《学长,你节操掉了!》,叛逆师兄VS学霸师妹,文字生动形象,刻画的剧情不老套,欢迎大家...

公主坟的来历(北京地名“公主坟”的来历)

公主坟的来历(北京地名“公主坟”的来历)

北京复兴门外复兴路与西三环路交界处的这个地方叫做“公主坟”,公主坟这个地名是怎么得来的呢?而且,公主坟这个名字引起了人们极大的兴趣和好奇,这个公主坟内真的埋葬过公主吗?埋葬的究竟是哪位公主呢? 公主坟街头的夜景 有关“公主坟”的传说 对于公主坟名字的来历,民间历来就有很多传说。大家都认为这...

网上银行怎么登录(如何在电脑登录网上银行)

有些朋友不知道如何在电脑上登录自己工资卡的网上银行卡,这里给朋友们介绍下 打开浏览器,在搜索里输入“中国工商银行“(这里我用中国工商银行为例,其他银行一样的)然后确定 在网页上可以看到中国工商银行的官网,我们就是要进入它的官网 点击官网后就会进到这样的页面,可以看到这里有个“用户登录”的地方,选...

gonna是什么意思(gonna的用法讲解)

gonna是什么意思(gonna的用法讲解)

gonna表示“即将,将要”的意思,表示即将要做某件事。gonna是非正式用语,等同于going+to,用法为:主语+be+gonna+动词。值得注意的是,并不是任何情况下going +to都可以说成gonna,当gonna应用于将来时时,在“going+to”的作用是辅助另一个动词时,才可以说成g...