Search code examples
releaserelease-management

Release early/release often for commercial software?


Are there anyone with experiences/examples on releasing early/releasing often for commercial software? Does it work?

I was thinking of VMware where they have a lot of revisions release between each major version. And the installation experience was awful, sometimes they would break the existing VMs and other times the VMware Tools inside guest OSes would malfunction/not install. It's just horrible.

And I was thinking of ClickOnce deployments as well, since with ClickOnce when you update your software, all clients automatically gets notified of the release, and with one-click they're updated to the new version. If your software has bugs, then they'll automatically "upgraded" to get those bugs as well.

Do you have experience\example\suggestion to applying the release early/release often principle to commercial software?

I'm looking to apply it to one.


Solution

  • Kenny is right: it depends.

    We work on Enterprise software, where a customer may run an internal 3+ month project to upgrade to a new release. In that environment frequent releases do not work. Customers will stay on an old release for years and we have to keep supporting them, so the more releases that are active the more support work.

    At the other extreme I was running Google Chrome and read about a beta refresh. I went to see how to get it and discovered that Chrome had already updated itself. If there was any notification I missed it, and that is fine with me.

    The main question is how disruptive a new release is. For example, if MS released new versions of Visual Studio every 3 months with a new .NET version, C runtime, etc then we would spend a good portion of our time just dealing with the upgrade, which would not be good. But if they want to release new versions of Windows media player with some new widget that is fine with me -- just make the download/install process as seamless as possible.