Capability Maturity Model for Software (ang.) – stworzony przez Software Engineering Institute (SEI) model służący ocenie procesu wytwórczego służącego do produkcji oprogramowania. CMM ocenia praktyki stosowane podczas produkcji. Model ocenia proces w skali pięciostopniowej – od chaotycznego (nic nie jest sterowane ani kontrolowane), aż do ścisłego, zdyscyplinowanego procesu uwzględniającego wszystkie potrzebne aspekty.

Poziomy CMM Initial – oprogramowanie tworzone chaotycznie, bez żadnych formalnych procedur, ewentualnie z takimi, które są szczątkowe – nie określają procesu. Repeatable – stosowane są podstawowe techniki śledzenia projektu – śledzi się koszt, harmonogram oraz funkcjonalność. Stosuje się techniki pozwalające na powtarzanie udanych projektów na podstawie informacji zapisanych przy okazji poprzednich. Defined – proces wytwórczy jest opisany, wszystkie wykonywane czynności są udokumentowane w postaci procedur lub instrukcji. Managed – podczas projektów stosuje się szczegółowe metryki dotyczące samego procesu, oraz jakości produktu. Optimizing – stosuje się praktyki mające na celu ciągłe poprawianie procesu wytwórczego oprogramowania – poprzez monitorowanie procesu pod względem możliwości usprawnień oraz poprzez ich wprowadzanie.