分享

如何评估软件的内部质量和外部质量?

 东北十三少 2023-05-12 发布于四川

软件的内部质量和外部质量,在GB/T 16260《软件工程 产品质量》系列标准中有明确的定义,它的内部和外部质量模型将软件质量属性划分为六个质量特性,分别为功能性、可靠性、易用性、效率、维护性以及可移植性,每个特性进一步细分为若干子特性,每个子特性又包括多个内部和外部度量项,每个度量项都有明确的定义、目的和计算方法,用于评价该子特性的程度。

但是,实际使用起来会觉得很是复杂。比如功能性特性分为适合性、准确性、互操作性、安全保密性、依从性等子特性,适合性子特性又使用功能的充分性、功能实现的完整性、功能实现的覆盖率、功能规格说明的稳定性等4个度量项来度量。

有没有比较简单的方式来度量软件的内部质量和外部质量呢?

下面的度量方式可以参考。

因为软件的“内部质量”与它的设计质量有关,而好的设计意味着简单、模块化、易于维护和易于理解。所以,我们可以使用以下的一种或多种方法来评估软件的内部质量:

  • 面向对象的指标,如每类加权方法数、继承树的深度等等;

  • 圈复杂度;

  • 代码密度(如,每个方法的代码行数);

  • 每个功能的代码量。

而软件的“外部质量”通常由发布前或者发布后的缺陷数量来度量。所以,我们可以使用以下一种或多种指标来评估软件的外部质量:

  • (发布前)通过的测试用例数;

  • (发布后)缺陷数目;

  • (发布后)缺陷密度;

  • (发布前)每个测试的缺陷数;

  • 修改缺陷的工作量;

  • 变更的密度;

  • 预防性变更的比例。

采用这种度量体系,是不是更为简洁和直观一些呢?

这正是:

软件质量作评估,标准只是做辅助
好的实践容易做,可以找找其它路

参考数目:软件之道: 软件开发争议问题剖析,作者: Andy Oram Greg Wilson,出版社: 人民邮电出版社

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多