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

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

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

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

如何制定质量目标(软件质量目标制定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

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

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

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

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

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

高丽菜是什么菜(高丽菜是什么你知道吗)

高丽菜是什么菜(高丽菜是什么你知道吗)

高丽菜(拉丁学名:Brassica oleracea L. var.capitata L.,别名:卷心菜)是十字花科芸薹属植物[1],在中国均有分布,喜温和湿润、充足的光照,较耐寒,也有适应高温的能力。 高丽菜矮且粗壮,茎肉质,不分枝,绿色或灰绿色。基生叶及下部茎生叶长圆状倒卵形至圆形,长和宽达30...

猥褒罪是什么意思(猥琐)

猥褒罪是什么意思(猥琐)

强制猥亵罪的立案标准是1.一年内猥亵儿童两次以上或一次猥亵儿童两名以上的;2.采取暴力、胁迫或以之相威胁等方法强制猥亵儿童的;3.猥亵儿童致使被害人轻微伤以上损伤的;4.猥亵儿童造成其他严重后果的。如严重损害儿童心理健康,造成被害儿童近亲属精神错乱或自杀的等。情节轻微会治安拘留,会除以罚金和行政拘留...

玛加萨在哪(炉石传说:魔兽世界部落各种族)

玛加萨在哪(炉石传说:魔兽世界部落各种族)

大家好!我是炉石闲说,为您分享炉石魔兽趣闻趣事! 上篇文章介绍了炉石传说中魔兽世界联盟阵营的种族的代表性卡牌,以及他们在魔兽世界中的背景简介。接下来给大家分享下部落方种族在炉石中的一些代表性卡牌。 1、兽人——吼爹 兽人在魔兽世界的历史中,既是受害者也算是外来侵略者的角色。主要还是兽人种族的首领被...

qq农场种什么植物最赚钱(QQ农场如何赚钱)

qq农场种什么植物最赚钱(QQ农场如何赚钱)

在前几年,很多玩家都在玩QQ农场,但那时候大家还只是玩玩而已,并没有想过靠QQ农场可以赚钱,那时候的人们只会认为玩电脑就是花钱的,那是因为大家玩得多的只有QQ,而QQ是腾讯开发的,腾讯就是一个典型的赚钱企业,一谓的到处坑钱,造就了国人都认为的网络就是花钱的。 而后来,淘宝火爆,各大网赚平台诞生,各种...

鲁迅先生的笔名有哪些(鲁迅的一百四十多个笔名)

鲁迅先生的笔名有哪些(鲁迅的一百四十多个笔名)

鲁迅先生曾说,“一个作者自取的别名,自然可以窥见他的思想。”(《南腔北调集辱骂和恐吓决不是战斗》)鲁迅先生一生所用笔名之多、寓意之深,在现代中国作家中可谓独树一帜。正如许广平所言,“作者幻化许多名字,冀图表达其意见的苦衷,对于将来从事文学的人们,或者不无裨益罢。(《欣慰的纪念》)鲁迅先生逝世后,对鲁...