Via Horace Dediu at asymco:
The problem of upgrade failure is a symptom of a deeper dysfunction inherent
in immature modular business architectures. It’s not just that the brightest
at Microsoft or Nokia or Google can’t make an upgrade stick. It’s that the
upgrade is not universally beneficial to the value chain. To remedy this,
licensors have to resort to contractual obligations to ensure upgrades, but
enforcement is non-trivial and can lead to aggravated relationships.
Say what you will about Apple and their zealous control of the iOS stack, but
their control gives them this great advantage—they answer to no one when they
want to release an OS upgrade.