Capability Maturity Model (
CMM ou
Modelo de Maturidade em Capacitação), também conhecido como
Software CMM (
SW-CMM) pode ser definido como sendo uma soma de "melhores práticas" para diagnóstico e avaliação de maturidade do
desenvolvimento de softwares em uma organização. "CMM" não deve ser entendido como sendo uma
metodologia, pois o "CMM" não diz exatamente como fazer, mas sim o que deve ser feito (melhores práticas).
Ele descreve os principais elementos de um processo de desenvolvimento de
software. O CMM descreve os estágios de maturidade por que passam as organizações enquanto evoluem no seu ciclo de desenvolvimento de software, através de avaliação contínua, identificação de problemas e ações corretivas, dentro de uma estratégia de melhoria dos
processos. Este caminho de melhoria é definido por cinco níveis de maturidade:
- Inicial
- Gerenciado
- Definido
- Gerenciado Quantitativamente
- Em Otimização
O CMM fornece às organizações orientação sobre como ganhar controle do processo de desenvolvimento de software e como evoluir para uma cultura de excelência na gestão de software. O objetivo principal nas transições através desses níveis de maturidade é a realização de um processo controlado e mensurado que tem como fundamento a melhoria contínua. A cada nível de maturidade corresponde um conjunto de práticas de software e de
gestão específicas, denominadas áreas-chave do processo (KPAs - Key Process Areas). Estas devem ser implantadas para que a organização possa atingir o nível de maturidade desejado.