质量管理的流程化方法
我们知道,通过评审和测试可以发现缺陷。在质量管理流程化方法中,需要建立评审和测试活动的流程和工作指南。在执行识别缺陷的活动中要按照规范的方法执行,比如:系统测试流程通常包括制定测试计划,在计划中列出了所有的需要测试的测试用例,执行测试计划评审,然后执行测试计划。我们这么做的依据是:缺陷识别方法规范-该规范规定在一些活动点上通过执行过程来发现缺陷。CMMI3级应该有这样一个合理的质量管理的流程化方法。
仅仅执行一系列规程并不能提供判断缺陷排除效果或最终代码质量的基础。另外这个方法高度依赖于流程的质量以及流程执行的质量。比如:如果认真编写了测试计划,并认真评审了该计划,那么完成测试后的软件会比没有做测试计划和评审的软件质量更高。一个关键问题是该流程方法并不能为项目经理提供量化方法来评估软件的质量-判断软件质量唯一可见的评判标准就是是否执行了质量控制活动。一个好的质量管理方法应该在项目的早期提供一些警示或提醒,早期预警使得有时间进行干预,避免,将风险降到最低。为了达到这个目标,有必要预测出项目的不同阶段的缺陷密度。这样就可以通过控制项目执行阶段的缺陷密度来保证最后的产品满足既定的目标。
这种方法使得质量管理酷似管理工作量和进度:首先设定交付软件的质量目标,从目标出发,估计项目不同阶段的参数值,建立里程碑。如果达到估计值,最终的产品很可能满足最终目标的水平。在项目执行过程中,收集实际的缺陷密度,并通过与
估计值的比较来决定该项目是否正常运行,或者需要一些改进行动来确保最终的软件产品能达到期望的水平。另一个软件质量的概念是缺陷排除率,我们定义缺陷排除率(DRE)为: DRE=质量控制活动中发现的缺陷数/质量控制活动前产品的所有错误*100%因为是项目结束的时候才能计算出某个质量控制活动或某个阶段的缺陷排除率,所以缺陷排除率不适用于质量管理,它无法对项目执行过程中的产品质量进行控制。
通过预测缺陷实现量化质量管理
设定的质量目标是软件交付后的缺陷密度。一旦设定质量目标,估计出不同阶段的缺陷水平,确保满足估计值以达到质量目标。流程管理就是将预测缺陷水平变为实际缺陷水平比较基准,以评估开发过程是否朝着实现质量目标的方向推进。
该方法的效率取决于一个关键因素:我们预测项目不同阶段的缺陷的准确度。预测缺陷的一个方法是利用缺陷排除率和缺陷注入率。如果能知道或估计出每个阶段的缺陷注入率和质量控制活动的缺陷排除率,那么通过项目的规模就可以估计出每个阶段质量控制活动后的缺陷水平。该预测可用于量化质量管理。
上述方法建立在可预测项目的缺陷注入率的基础之上。历史数据的缺陷注入率可以用来估计当前项目的缺陷注入率。当然,也可能出现大的偏差。如果实际值超出了范围,项目经理要足够的重视,可以通过分析其他因素来确定是否是项目管理出现了问题而导致了这个结果,如有必要,需要采取矫正措施。另外工作量是一个很好的指标来帮助解决这类问题,通过监控工作量趋势来了解实际和估计的工作量来了解实际和估计的缺陷水平。
BY Marry Hou!