JetBrains style - pay for a license to use the software forever, and get a year's worth of updates. Buy a new licence after a year if they want the next update. Maybe offer a discount for renewal.
Maybe. One of the primary advantages of offline software is that it can be used offline. If you're going to require people to connect to your server you might as well make it a web app.
To be fair, it's not really all or nothing like that, but remember that offline software is already a niche market. Is it better to go half-way into a niche market, or all the way? In other words, your users likely chose your software over the dozens of online offerings because it is an offline app, and then the very first thing you do is make them connect to your server.
Although, I don't see any downsides of doing server-side verification if there is a network connection available, it would be nice if offline software could work on a computer that was offline.
I'm working on a side-project that I may sell as offline software. One of my marketing claims will be that the users own the software forever. They wont experience a "UI upgrade" that makes things worse, and if I go out of business their software will still work for decades or longer. I cannot honestly make that claim if I require server-side verification. I'm betting that my niche users will care about this; if not I have no product because there are dozens of online competitors.
While it's becoming rarer, it's worth noting that not all targets are going to have an internet connection. For example, in a typical large enterprise, not all servers will have internet access (neither directly or through proxy) for security reasons.
I won't link them here, but JetBrains has been struggling with many pirate license servers. Apparently those required a lot less effort to do than cracking traditional product keys.
Wait, if you JetBrains license expires, you can still use the product without receiving updates? I thought it would allow a grace period like the demos and then refuse to work.
Yeah, it keeps working. It's great. I paid for my license last year, in a year or two if it starts to feel buggy I'll pay again. I'm very happy with their software, it's made me a lot of money in productivity gained.