With applications, I don't choose between more or less expensive subscription, but I'll chose your competitor who sells upfront.
There are plenty of games and apps that are dead because the developers no longer make new sales and the previous money is all spent and the business become unviable and they shutdown the servers.
Recurring charges gives the incentive for the developer to fix bugs and maintain the codebase and not abandon it completely once they loose interest, if original developer looses internest recurring revenue makes the code/service valuable so that a new developer can buy who makes enough in maintaining it.
If the app/service you bought does not have enough paying users to even pay for hosting servers or a part time developer time to maintain it, then no revenue model will save it anyway.
One caveat with upgrades is it's difficult to maintain many version of the same app. Now with frequent hardware and OS upgrades (yearly!) it's even more expensive than ever to maintain many versions.
More importantly, how do you charge upgrade pricing? Any user who encounters 2.0 on the store is charged the same price, whether they own 1.0 or not. There is no easy way to give 1.0 owners a discounted price.
There are elaborate kludges to work around these limitations with a great deal of work. Apple could make producing upgrade versions easy, like they’ve done with subscriptions, so devs can focus on improving their product value instead of purchasing mechanisms.
Upgrades are a much simpler purchase decision. Am I using the app? Is it offering a good value? Does the upgrade provide new features I want or need at a reasonable price?
Some customers will say no to one of those questions at first, but eventually change their minds. Like subscriptions this model matches revenues to usage, so engaged customers support future development. iOS would be a much better platform with easy upgrades vs. easy subscriptions.