This is one of my favorite topics. This is a good explanation :
EVM.
So, let us say you are building 10 features for the next release and 10 for the next one and 10 for the one after that. Let us say if you built the 10 features for the next release, you would have achieved 30% of your products value. So, you earn 30% value.
This could obviously go all wrong. The fact that I think it will give 30% value is not carved in stone. We could find out the real customer need after this release and develop that one killer feature which will give us 80% value. So obviously, the previous release contributes at best, 20% of the product value.
I know this is all so confusing. Hence, best avoidable. The best practice - release every 10 days, get market feedback, adapt and release again. You have a better chance of succeeding and building something that market needs, rather than making the task of software development more complex [and long].