Os métodos de desenvolvimento Ágeis e as melhores práticas do CMMI (Capability Maturity Model Integration) são frequentemente considerados como não conciliáveis. No entanto, esta discórdia não se justifica e os dois campos metodológicos poderão ser utilizados em conjunto, proporcionando vantagens e sinergias com o potencial para melhorar significativamente o desempenho. Cada uma das abordagens inclui princípios de bom desenvolvimento de software muitas vezes ignorados, mas que são necessários para a outra abordagem e para o sucesso dos projectos.
A oposição entre os defensores das metodologias Ágeis e os adeptos do CMMI poderá basear-se em duas grandes razões. A primeira tem a ver com o facto das pessoas que adoptaram inicialmente os métodos Ágeis ou o CMMI representarem exemplos extremos dos seus paradigmas de desenvolvimento de software. Os que adoptaram inicialmente o CMMI eram sobretudo especialistas no desenvolvimento de sistemas de grande escala, críticos e avessos ao risco. De igual modo, o desenvolvimento destes sistemas também envolvia frequentemente níveis elevados de supervisão em termos de gestão e governação hierárquica. Pelo contrário, os promotores iniciais dos métodos Ágeis estavam normalmente envolvidos em projectos de desenvolvimento mais pequenos e com uma única equipa.
A segunda razão está relacionada com a informação incorrecta sobre o CMMI e os métodos Ágeis, resultando em problemas de percepção em ambos os grupos. Referimos a seguir alguns dos factores que contribuíram grandemente para os problemas de percepção e que colocaram erradamente o CMMI e os métodos Ágeis em campos opostos.
a. Má utilização. Em cerca de duas décadas de experiências, primeiro com o Capability Maturity Model (CMM) e depois com o CMMI, ocorreram práticas de má utilização ou a aplicação a actividades de desenvolvimento que as equipas já consideravam produtivas sem o recurso ao CMM/CMMI.
b. Falta de informação exacta. Existe falta de informação exacta sobre o CMMI na comunidade Ágil, assim como falta de informação exacta sobre os métodos Ágeis na comunidade CMMI.
c. Dificuldades de terminologia. São utilizadas terminologias no CMMI (por exemplo, disciplina, garantia de qualidade e previsibilidade) e nos métodos Ágeis (por exemplo, integração contínua, desenvolvimento orientado a testes, ou posse colectiva de código) que têm conotações específicas do contexto em que são utilizadas, pelo que são facilmente mal interpretadas e/ou utilizadas de forma abusiva.
d. Abordagem top-down versus bottom-up. Assiste-se por vezes à introdução de uma abordagem que favorece um dos lados em detrimento do outro (por exemplo, gestão versus especialistas em desenvolvimento).
Alguns dos mal entendidos do CMMI junto da comunidade Ágil têm a ver com aspectos do CMM que já não fazem parte do CMMI. Este último inclui muitas melhorias que o diferenciam do CMM. Algumas pessoas da comunidade Ágil utilizam conceitos do CMM para falarem injustamente do CMMI. Por exemplo, a referência incorrecta ao objectivo do nível de maturidade dois como criador de processos repetíveis ainda persiste actualmente. Para complicar ainda mais esta questão, existem utilizadores do CMM que nunca se actualizaram para o CMMI, persistindo na utilização de um modelo que tem uma visão menos flexível do que os modelos CMMI quanto ao desenvolvimento de sistemas e de software
Outro aspecto importante prende-se com o facto de muitas pessoas falarem de CMMI e de Ágil nas suas actividades, mas na realidade não aplicarem adequadamente nenhuma das abordagens. Todas estas situações contribuem para a difusão de percepções negativas relativamente às duas abordagens. Seja como for, o CMMI e as metodologias Ágeis podem ser utilizados em conjunto de forma bem sucedida. E a prová-lo estão muitas referências práticas um pouco por todo o mundo.
Baseado num texto da autoria de Hillel Glazer, Jeff Dalton, David Anderson, Mike Konrad e Sandy Shrum, com o título "CMMI or Agile: Why Not Embrace Both!"