文章目录
Chapter24:Quality Management
24.1 brief
-
Software quality management
确保:软件产品能达到所需要的质量标准。
主要涉及三个原则(对开发机构、对项目本身):
-
Quality management activities
质量管理:提供的是独立的检验活动,和软件开发活动是并行的。
检验项目的交付物,以确保他与机构的项目和目标相一致。
质量管理的团队通常独立于开发团队。
-
Quality plans
之前讲过项目计划里面也应该有质量计划。
Quality plans 包括:产品简介、产品计划、过程描述、质量目标、风险管理。
-
Quality Attributes
24.2 Software standards
-
Software standards
软件的质量管理,就是要定义 Software standards 和 目标
Standards:定义了产品的过程 、特性。可以是国际上的、国家的、机构自己的、项目本身的。
Product standards 产品标准:定义了所有的软件组件,应该展示的特性。
Process standards 过程标准:定义了软件过程活动 应该遵循的规范。
-
ISO 9001 standard framework
ISO 9000系列是国际质量标准框架,9001 标准 则是一个软件开发的标准框架。
24.3 Quality reviews / inspections
-
Quality reviews 质量评审
就是对软件系统和相关文档的评审,评审范围包括:代码、设计、测试计划、相应的规范等。
-
Program inspections 程序审查
是 软件确认的 一个重要环节,是对源代码的审查。
不需要执行程序,但可能会用到一些系统的文档,包括需求、设计、配置数据、测试数据等等,可以帮助理解程序。
-
Inspection checklists
程序审查 一般会有一个 checklist ,列出常见的需要审查的问题。
审查可以是人工的【更准确更全面】,也可以是自动分析工具【快速,但不全面】。
例如:
24.4 Software measurement and metrics
-
Software measurement and metrics 软件的测量、度量
measurement 指的是:对软件产品或者过程,能导出一系列的属性值,来表征他们。也就是发现软件有哪些属性,是需要测量出来,表示质量的。【软件的属性】
metrics 指的是:度量的指标,对那些属性值,有哪些指标可以表示它们。【度量软件的属性的指标】
-
外部、内部质量属性之间的关系
External:这个软件对外呈现的质量特性。
Internal:软件本身所具有的特性,继承的深度,环路复杂性,程序代码行数等
这里的 Internal Attributes 就是 可以度量 External Attributes 的值,也就是 metrics 来表征 measurement。 -
Product metrics
metric 度量指标, 预示着 产品的质量。metrics 可以分成:动态的、静态的。
1)Dynamic metrics:
通过执行程序来收集的,比如通过执行程序,发现它的平均故障率,然后以这样一种指标来评价系统的可靠性。用来评价:有效性、可靠性、安全性、鲁棒性等。是和软件的质量属性紧密相关的。
2)Static metrics:
通过程序自身呈现出来的信息来进行度量。用来评价:复杂性、可理解性、可维护性等。间接反映了软件的质量属性。
-
通用的软件产品的度量指标
Fan-in / Fan-out , Length of code
1)扇入:被其他模块调用。扇入次数越多,代表它有很好的功能内聚性。
扇出:调用其他模块。扇出次数越多,则此函数or方法经常调用其他模块,它的复杂性就会高。
2)代码长度:和程序复杂性、出错概率相关。