Apple forces upgrades with a devious anti-feature: version-locked apps, combined with no OS updates for old devices.
The system auto-updates your apps, whether you want to or not. Eventually, the newer apps simply refuse to run on older versions of the OS, and you can't get OS updates for that phone anymore.
The result is that to the extent that you care about using any apps, you have to buy a new phone, even though your old phone's hardware is still more than adequate in a technical sense.