The answer to this question is perhaps a little subjective, but personally speaking, I’d recommend upgrading your server at least once a year.
In the recent past there have been between 4 and 9 releases per year, so very roughly 2 per quarter.
Some of these releases will just be bug fixes but others contain new features as well.
So How do I Decide when to Upgrade a Server?
Firstly, I keep an eye on the UrbanCode What’s New Page here
This page gives me a nice, at a glance, view of the evolution of UCD and I can drill down into any release and find out what’s in it. If I drill into 188.8.131.52, the latest at the time of writing, I get to the high-level description of what’s in the release. E.g.
OK, so this is mainly a maintenance release, but it also mentions there is a new feature. So, lets drill into the release for a bit more detail. Clicking on the Release Notes tab takes me to this page which shows me the things fixed
On this page I’d read through the fixes for two reasons:
1. I’m looking for things that might impact my environment
2. I want to be aware of fixes available just in case a known problem might show up.
I’d next click on the Getting Started tab to see what new features there are that might be of interest to me and also to see if there are any considerations I’d need to take into account in doing the upgrade. In this case I can see a bit more detail about the changes to the security model.
So now I know what fixes and features are included in the new release and anything else I should consider before upgrading.
So, Do I Upgrade or Not?
There’s a lot to consider here, but we need to be pragmatic about these things and the last thing we want to do is get so far behind the curve that:
a. Upgrading through many versions is going to be potentially painful and much more complex, time-consuming and/or risky
b. I’m missing out on cool new features that my user community could really get value out of. Of course, there can also be benefits to the administrators in terms of new maintenance and control capabilities.
As part of my analysis of new versions I also look at the Software Product Compatibility Reports
I can create a report for any version of a product and see what environment the new version is supported in. I’m looking here to see if there are any changes in supported environment which may mean my platform is going out of date. E.g. Operating System version and Database version are big ones to keep an eye on. But also, things like versions of JVM’s supported would be something else I’d look out for. Also, I’d look at the hardware requirements to support the product to see if more compute / memory or storage resources are required.
If I see these things changing, I know that I need to start planning. Updating DB, OS, hardware are potentially non trivial things.
Of course, the vendors of other products like the OS and DB and JVM may also be removing support for older versions so I watch those as well. IBM may support a specific version of a DB, but the vendor may have withdrawn it. IBM will likely do the same shortly after for new versions of UCD. I want to be on a fully supported environment so its important to watch all these things.
I also consider the age of my UCD server and how long that version will be supported for. The IBM enhanced support model offered on UCD is 5+3. A minimum of 5 years with the option to extend for up to a further 3 at extra cost.
I can find out declared dates for end of support for UCD here:
To reduce risk and complexity of upgrades I personally take the view that I’ll do at least one upgrade a year with ideally two. The incremental changes are relatively small except for major version upgrades and lower risk than waiting and having to upgrade through many older versions in one go. Not only that, If I leave it, then I’m missing out on new features and not getting full value from my support contract.
So, I look at all the things above and decide:
a. Whether or not this new release has anything in it I want / need / should have,
b. How long its been since the last upgrade. Ideally, I’d like my server to be no older than a year since it’s GA release date.
I also take the view that doing upgrades relatively frequently keeps us in practice and means that we’re better able to perform upgrades in a timely fashion, but we always plan the upgrades. Often, it’s the same plan, but sometimes we need to put additional steps in to take account of new features/requirements. Like a platform change. Doing the updates regularly allows us to look for versions that support both the old and the new, so we can do the upgrade in planned stages. If you’re upgrading from a very old version, its possible intermediate stages would be required because your current and target versions don’t share a platform.
When planning an upgrade, read all of the getting started pages for the target version of UCD you are going to and for any intermediate versions you are skipping and take note of all of the requirements.
The following table should help you understand how old your server is, whether it is still in support (on normal support terms) and how much time is left ‘on the clock’ on the enhanced support model for the other versions.
If your server version is one of those highlighted in red you should look to upgrade as soon as you possibly can. In this case the immediate plan might be just to get you on a supported version as a matter of urgency and then planning for an upgrade to one of the newest versions at a later stage. Red dates are actual dates.
The dark green dates are calculated based on the IBM enhanced support model and are not official dates; they are indicative only.
If you’re on a version of UCD with Orange dates, you’re going out of support at the end of April 2019. Upgrade as soon as possible and / or look to get on the extended support program at extra cost until you can.
Keeping your UCD server up-to-date is important to get the best out of your investment, to improve the reliability and capability to deploy mission-critical applications in your organization accurately and quickly, in an ever faster changing world.
Planning the upgrading of such a mission-critical tool can make it difficult to find a time slot that doesn’t negatively impact business as usual activities. Failing to do so can have a negative impact on the organization and ultimately result in longer periods of downtime to accomplish.
If you would like assistance in the planning and execution of a UCD Server upgrade, then contact your local IBM Services seller who will be able to put you in contact with a UCD subject matter expert that can help you go through the process of successfully upgrading your UCD server.