Odd that the software I wrote was certainly in use 20 years after it was written, and there was even then little prospect of it being replaced.
Let me guess, it was something niche, specialist and of limited scope. Some sort of embedded system like an FMS ?
I still maintain that you are very much still wearing rose tinted spectacles if you seriously think a modern Operating System, or modern general PC software should last 20 years !
The vast majority of large buyers operate on a 3 to 5 year lifecycle. Quite frankly, talking about 20 years for generic office (or home) systems is simply ludicrous. I think you very well know that.