9.2 如何度量质量
你正在为质量寻找一个可用的定义,但因为它们涉及到编程,所以需要首先考虑它的各个方面。通常会将这些方面表示为软件度量:
软件度量是一个软件在某些属性或其规格上的度量。由于定量度量在所有科学中都是必不可少的,因此计算机科学从业者和理论家通过不断努力,将类似的方法引入软件开发中。我们的目标是获得客观的、可重复的和可量化的度量,这可能包含很多有价值的实践,包括进度规划、预算规划、成本估算、质量保证测试、软件调试、软件性能优化以及人员任务分配优化。
我已经努力总结出六个指标,来度量代码的质量。
- 美观性:该指标度量代码的可视化内聚,同时也包括格式、命名、文档结构上的周到考虑和一致。度量美观性需要回答这些问题:
- 代码的可读性如何?
- 页面上各个部分的代码是如何组织的?
- 从编程风格来看是否使用了最佳实践?
- 完整性:完整性度量代码是否符合客户要求1。要实现完整性,程序必须满足或超出具体问题的需求。完整性还可以度量具体的实现是否符合行业标准或理想化的程度。关于完整性的度量需要回答以下问题:
- 代码是否解决了要解决的问题?
- 对于给定的期望输入,代码能否产生所需的输出?
- 是否符合所有已定义的用例?
- 是否安全?
- 是否能很好地处理边界情况?
- 是否已通过测试?
- 性能:性能度量是将实现与公认的标准进行对比,以确定它有多成功。这些指标包含程序大小、系统资源利用效率、加载时间或每行代码的bugs数等属性。要想使用性能指标,你需要回答以下问题:
- 这种方法的效率如何?
- 它能够处理多大的负载?
- 代码能力的极限如何?
- 成本: 这个指标度量开发和为维护代码的成本。成本包含时间、金钱以及使用的资源。度量成本需要回答以下问题:
- 代码的可维护性如何?
- 能否轻松部署?
- 是否有文档?
- 花费了多少精力?
- 耐久性: 通过度量程序在实际中运行的生命周期来衡量耐久性。耐久性也可以看作是可靠性的一个度量,这是度量寿命的另一种方式。可以回答以下问题来度量耐久性:
- 是否能可靠地执行?
- 在重新启动、升级和/或更换之前,程序能运行多久?
- 是否可扩展?
- 可接受性: 可接受性度量的是其他程序员如何评估和评价代码。跟踪可接受性可以回答以下问题:
- 理解代码有多困难?
- 设计决策经过了多少深思熟虑?
- 这种方法是否利用了最佳实践?
- 使用起来是否愉快?
时间: 2024-10-05 14:21:48