浅谈cmmi和敏捷区别
作者:
发布时间:2024-04-10
点击数:6
CMMI和敏捷是两种流派,CMMI注重过程和文档,敏捷注重代码本身、程序员的能力和团队沟通协作。
1.CMMI的开发模型,一般以瀑布为主,也有螺旋和快速原型等经典的软件工程开发模式。敏捷开发模型基本都是迭代,迭代周期一般从1周到1个月。不是迭代,你都不好意思说你用的是敏捷开发。
2.工具方面,CMMI和敏捷的工具很多是共通的,不过敏捷相对更“极端”一点(参考极限编程,XP,这是敏捷主要的技术实践基础)。比如CMMI有同行评审,而敏捷提倡结对编程,实际上是时刻都在做同行评审。CMMI有版本配置管理,敏捷提倡持续集成,即每一次代码checkin都会引发一次构建、代码检查、自动测试、看板更新、邮件推送甚至是版本自动部署。CMMI有版本发布里程碑,而敏捷提倡持续交付,即每时每刻,在服务器上的版本都是可交付的。
3.从应用范围来说,CMMI适合于外包和大规模团队的分工协作,是一种重量级的过程,属于集团军作战;敏捷适合一个完整的小团队,属于特种部队作战。现在国内外互联网公司采用敏捷开发模式很多,因为用户需求变更频繁,版本更新换代快,必须快速响应。有很多大型软件公司也尝试使用敏捷开发方式,毕竟现在都在搞项目化运作,大公司小团队是趋势。