Im Bereich der industriellen Softwareentwicklung versucht man die Aufwandsschätzung zu formalisieren, wiederkehrende Aufgaben zu klassifizieren (Datenerfassung, Datenbankabfrage, ...) und zu bewerten (einfach, mittel, komplex) und so zu übertragbaren Erfahrungswerten zu kommen. Je neuer die Aufgaben sind, je mehr externe Einflüsse (Änderungen im Projekt) hinzukommen, umso schlechter werden die Schätzungen sein. Aber besser eine schlechte Schätzung als gar kein Schätzung.
Andererseits gibt es heute neue Formen der Softwareentwicklung (ExtremeProgramming, OpenSourceProjekte), die teilweise jenseits von klassischem ProjektPlan und AufwandsSchätzung arbeiten. Bei ExtremeProgramming ist gewissermaßen der Aufwand durch das Entwicklungsteam vorgegeben und es erfolgt eine ständige Neuorientierung in Bezug auf die optimalen kurzfristigen Entwicklungsziele. Bei OpenSource arbeitet man - zumindest teilweise - mit freiwiller externer Entwicklungskapazität, der man üblicherweise nicht "ins Maul" des getätigten Zeitaufwandes schauen kann, und der man auch die Ziele nur bedingt vorschreiben kann.