The Secret Reason that Development Teams Struggle to Deliver On Time, On Budget, or On Scope – 7pace Blog
I think this article oversimplifies the problem, but it does highlight at least one type of problem when estimating software effort. Software teams far too often skip the planning process. Using data for planning, specifically velocity metrics, is also key. This article doesn’t track the issue of progressive discovery of your requirements, which in my opinion is a bigger issue, but this is a good read nonetheless.