让我们的人生更加快乐

cmm与敏捷开发的异同

上一篇 / 下一篇  2011-05-26 20:54:01 / 个人分类:测试管理

    最近一直在研究敏捷测试,因为笔者的公司要开始敏捷开发了,所以我们的测试流程要成为敏捷测试。其实网上说敏捷测试的帖子也很多,我也是刚刚开始学习,稍微做一些分析。笔者以前的公司是CMM的,现在换成敏捷,先讲一下2者的区别吧。
    首先肯定一点敏捷与CMM是不冲突的。
    周期上来说,CMM注重的是产品整个的开发流程,也就是瀑布型的,CMM一般会让开发负责人列计划从产品开始一直到结束,虽然计划可变,但必须要一下都列出来。CMM的需求也是要求一次完成,虽然可以变更。但是敏捷就不一样,敏捷的周期是轻量级的。他不要求你一次完成,没有里程碑的那种限制。敏捷的迭代周期是1周或1个月。你的计划需求只要能列出1周或一个月的就行,这样就比CMM灵活了许多。
     需求、设计、编码、测试几个阶段的进行时间段中,CMM是瀑布型,一般需要需求完成再进行设计、再进行编码、再进行测试。并且每个阶段都有里程碑,里程碑要有产出物,且产出物通过才能完成里程碑。敏捷则不同,敏捷开发中,几个(需求、设计、编码、测试)阶段可以并行。也就是说当开发人员进行需求编写、设计时,同时也就可以展开编码和测试工作了。
     再讲一下2者的共同点。其实CMM和敏捷都需要开发小组有需求阶段、设计阶段、编码阶段和测试阶段。很多小组说敏捷测试了,就认为不需要写什么需求之类的,其实敏捷决不是提倡的不写文档,更不是没有章法。敏捷只是将CMM的整体变成了很小的迭代阶段。但是每个阶段中的流程完全可以参考CMM。CMM有需求域、设计域等等,敏捷中是可以参考这些的。只是敏捷不要求你必须要通过什么里程碑,但是敏捷中也要有已完成的需求,要有需求管理。不然需求不就乱了么。只是如果你完不成一个迭代中的东西,可以放到下一个周期。
      从上面就看到了,敏捷是CMM的一种更高形式的进化,但他决不是说敏捷和CMM是冲突的。敏捷中的很多需求管理域的东西真的还得在某些方面借鉴CMM。CMM在国内没有很成功的。究其原因,与中国的现状这种每个公司的官僚制度和一刀切的管理方法有很大的关系。如果我们真的有国外那种轻松的环境,估计CMM不一定会这么失败。但同时敏捷又成了很多团队拒绝正规管理的一种借口。觉得自己敏捷了,什么文档就都不需要了。没有理解敏捷的深意。
      笔者的公司正是,最近领导在每个开发小组办公室挂了一个敏捷开发的白板,希望大家每天都往上写工作日志,天真的认为这样就是敏捷了。:)需求跟踪矩阵都没有谈何敏捷。敏捷也不是说不用关心需求呀。无语。最近领导让笔者写敏捷的测试流程。其实敏捷是重视团队的。如果真的敏捷了,估计质量部经理真的没有很多事情干了。至少是在测试人员上面只能是共同提高技术,而不是直接调动了。

TAG:

 

评分:0

我来说两句

Open Toolbar