Das in den 80er Jahren entwickelte Schätzverfahren namens COCOMO (Constructive Cost Model) kann angewandt werden, um den Entwicklungsaufwand einer Software zu bestimmen und beruht auf tatsächlichen Projektaufwendungen in großen Softwareprojekten.
Das Verfahren wurde im Laufe der Zeit kontinuierlich weiterentwickelt und steht heute als COCOMO II Modell der University of Southern California (USC) zur Verfügung. Dabei erfolgte eine Anpassung des Modells an die sich verändernden Entwicklungsumgebungen und aktuelle Programmiersprachen. Außerdem aktualisiert die USC regelmäßig die in das Modell einfließenden Parameter, die durch die Beobachtung und Auswertung von Softwareentwicklungsprojekten verfeinert werden.
Das Verfahren liefert im Ergebnis eine Abschätzung der gesamten Entwicklungsaufwendungen. Dies umfasst die Phasen bzw. Tätigkeiten Systemanalyse, Systementwurf, Programmierung mit Feinkonzeption und Codierung, Modultest, Systemtest/Integration und Dokumentation. Da das Verfahren davon ausgeht, dass der Quellcodeumfang abgeschätzt werden kann, ist es erst anwendbar, nachdem die Anforderungsanalyse und Projektierung abgeschlossen wurden.
Der von dem Verfahren gelieferte Entwicklungsaufwand berücksichtigt deswegen die Aufwendung für Anforderungsanalyse und Projektierung nicht. Diese sind gegebenenfalls noch hinzuzurechnen.