在敏捷开发模型下,各个环节的迭代速度明显提升,这给软件开发团队一个机会可以迅速获得开发过程实践与实际使用中质量之间的关系,使得开发过程质量预测和评估更为可行。
所以,我们的目标是建立一个应用在开发过程上的质量预测和评估体系。
我们对敏捷开发的典型开发阶段应用了成熟度模型,为了简单,我们简化了 CMMI 的 5 级模式而使用三级成熟度模型:initial,managed 和 optimized。分别对敏捷开发的 6 个典型阶段,即 Plan,Design,Coding,Testing,Reflection 和 Process 进行成熟度定义。我们针对功能需求(Functional)质量与非功能需求(Structural)质量分别定义了一个初始的成熟度标准范围,并提供了标准成熟度描述的示例。在实际应用中,软件开发团队可以根据自身特点,结合标准的成熟度描述示例来制定自身的成熟度标准。同时,开发团队可以不断的根据外部质量和使用中质量的反馈进行经验迭代,将开发过程中导致质量问题的遗漏点捕捉到,并考虑用更高成熟度标准中的方法来解决这些遗漏点,从而不断提升开发过程的成熟度。
这样,我们就建立了一套软件质量的预测和评估体系,对照质量评估体系中的标准与软件开发过程中的实际行为,即可预测和评估软件质量。同时,这个体系自身也是持续改善的,会随着团队的成长而不断进化,让开发过程的质量预测和评估逐渐接近于外部质量评估和使用中质量评估。
原文转自:http://www.ibm.com/developerworks/cn/devops/1609_liuy_quality/