We support a large global Spotfire Consumer user base, most of whom don't know that they're using Spotfire (they just know they use 'such and such dashboard'). As such, we need the ability to apply any changes to our environment without user impact, partly due to the impact on operations and partly due to the complexity of communicating any planned downtime (a message saying "Spotfire will be down next week" wouldn't mean much to most users).
With the advent of 7.5 it's now possible to apply hot fixes to web player without downtime, but pretty much every other operation requires some form of downtime. We've created complex processes to limit downtime during major upgrades, but it would be far more preferable if the platform where built with the principle that it should be 100% available during any planned activity.
Some specific items:
I'm not asking that all versions of server/node/analyst be compatible with all others. I think it's perfectly reasonable to put a limit of 2-3 major releases on backward compatibility - so for example an upgrade of 7.5 to 7.8 would be supported without downtime whereas a larger leap may require upgrades in steps (e.g. 7.5 -> 7.7, 7.7 -> 7.10).