One of the things that perplex me is the implementation of software subscriptions and how it relates to updates. The first thing that you need to keep in mind, especially if you are a software developer, is that product updates should be separated into two types: service packs and feature packs. Service packs will contain only fixes to existing code in the product; it will not introduce new features. New features that aren’t considered new major versions of the software should be distributed separately via a feature pack, essentially a plug-in that adds new features to the product.
The benefits of this kind of delivery model are plenty not the least of which is the fact that as a customer of the software I can deploy fixes to the software without introducing the new features which are likely to contain their own set of bugs. Where the lack of this model makes me angry is demonstrated in the following scenario:
On February 18th, 2009 you purchase a 1-year subscription to a product named hubu. The version of the software at the time of purchase is 1.35. Throughout the year you have received updates to the product including new features and bug fixes and you are generally happy. The last version of the software you were eligible for was 1.75. It is now March 1st, 2010 and the current version of the software is 1.87; there were significant fixes rolled out on February 21st 2010. Based on the most of the subscription models you aren’t eligible for the latest updates unless you renew your subscription (Which may or not be the same price as buying the entire product again).
Do you see the problem with this? The quality of the product you purchased is at the mercy of when the developer discovered, fixed, and released the update. I understand upgrade protection but this is more like extortion. Imagine if the same behavior existed in other industries, or even if Microsoft provided service packs along these lines.
I understand the desire to make money but I believe if a customer purchases v1.x of a product they should get ALL fixes for v1.x. If a subscription model is to be used it only makes sense for new features and functionality that are distributed separately (plug-ins) and it is those that you would be subscribing to.
Just my two cents.
cross posted from brianreisman.com