O CMMI é um abrangente metamodelo de processo baseado em um conjunto de capacidades de engenharia de software que devem estar presentes à medida que as empresas alcançam diferentes níveis de capacidade e maturidade de processo, definindo as características de processo que devem existir quando uma organização deseja estabelecer um processo de software que seja completo.
Como podemos observar a utilização do CMMI pode trazer benefícios e maturidade para seus processos. Ainda assim, seria a utilização do CMMI um consenso nas empresas?
Na verdade não! E este é um debate de longa data a qual leva-se em consideração inúmeros pontos e que nos faz pensar se devemos ou não utilizar o modelo CMMI, já que este pode-ser eficiente em alguns períodos assim como demasiado e exagerado em outros.
Mas para auxiliar neste entendimento, partimos de pontos que são inquestionáveis, como o de que ao menos o espírito do modelo CMMI deve ser sempre adotado. Correndo o risco de super simplificar, ele alega que o desenvolvimento de software é algo que deve ser levado a sério, devendo ser totalmente planejado, controlado de forma uniforme, monitorado com precisão além de ser conduzido profissionalmente. Tendo que os pontos a serem enfocados são as necessidades dos interessados no projeto, as habilidades dos profissionais envolvidos no desenvolvimento assim como a qualidade do produto final.
Os requisitos detalhados do CMMI devem ser serialmente considerados se uma organização construir sistemas grandes e complexos que envolvam um grande número de pessoas durante um período de meses ou anos. Pode ser que o CMMI esteja totalmente certo em tais situações, isto se a cultura organizacional for obediente a modelos e padrões de processos e assim como é apontado por diferentes modelos de gestão da qualidade, o comprometimento por parte da gerência da organização deve sempre existir para tornar este um sucesso.
Porém, se o sistema a ser desenvolvido não se enquadra no exemplo anterior, pode ser que o modelo CMMI possa ser demasiado e exagerado para a organização assimile-o como deveria. Mas tenha em conta que isto não significa que o modelo CMMI seja ruim, burocrático ou antiquado, mas sim que ele tem as suas condições e não atende a todas as organizações.
Em todo o caso o CMMI é uma realização de grande importância na engenharia de software, já que acaba por fornecer uma discussão abrangente das atividades e ações que devem estar presentes quando uma organização desenvolve um software. E mesmo que opte por não adotá-lo em detalhes, cada equipe de deve abraçar o seu conceito e utilizar de seus processos para aumentar a sua maturidade nos processos de desenvolvimento de software.