敏捷开发是一种轻量级的软件开发方法学,它有多种不同的形式,如XP、Scrum、Crystal Methods、FDD等,它的基本特征是迭代的、增量式的开发;强调自主性和积极主动的团队精神;强调效率、质量和沟通。CMMI是一个开发过程参考模型,现已成为评价软件开发组织过程能力的标准,它为组织提供了实现高效的过程所必需的基本元素,可以用来指导一个项目、一个部门甚至整个组织的过程改进。CMMI能帮助我们整合以往各自为政的组织功能,建立过程改进的目标与优先级,指导我们进行质量改进,还提供了评价现有过程的参照点。
多年来网络上存在一些对 CMM、敏捷似是而非的观点,CMMI 到底与 Agile 有何不同? 它们是水火不相容还是可以彼此借鉴,扬长避短、互补融合?