I\'d like to upgrade from Java 5 to Java 6. We all know about the technical advantages and benefits, but:
I have the problem that a major client refuses to upgrade f
I'm going to answer from the point of view of the client.
Our systems development shop is still using Java 5. To migrate to Jave 6, we have to test our entire portfolio.
When we moved from Java 4 to Java 5, the process took 6 months, and involved some code changes (mostly changing enum variable names to enumerate).
At this time, our systems development shop has decided that the benefits of Java 6 are not worth the migration pain,
Your bank client feels the same way. They will not migrate until they are forced to migrate to Java 6.
In Short Java 6 is more optimized,better performance ,reliable and currently supported. It also provides advance options like diagnostics, debugging etc.
Most of Java based technology are already migrated or migrating to Java 6. Even they would stop support for earlier versions.
Staff recruitment/retention becomes an issue if the application is seen to be old fashioned. Developers do not usually want to stick around if they see no progression.
Just tell him that's it's a minor upgrade: show him that the version goes from 1.5 to 1.6 using the "-version"
command. :)
Since you seem to be aware of all obvious benefits of java 6, and the client has good reason to be conservative, all that's left is to stress that not switching to java 6 will hamper development.
Development will be slower because you will undoubtedly spend time on implementing functionality you get for free in newer releases. And perhaps worst of all, not upgrading on a regular basis makes an upgrade more painful as time goes by, up to the point where it becomes practically impossible.
Typically, overdue upgrades result in a highly unpredictable scenario, with a resulting production loss across the entire company over a longish period of time. (assuming the software impacts a large enough user base within the company)
Rather than convince him that there are no risks, I would suggest instead working with him to come up with a risk mitigation strategy.
In other words, agreeing that if you can show that the system running under Java 6 passes tests X, Y and Z he'll be happy to upgrade.