2010-09-04 39 views
13

Vendemos aplicaciones web Java empaquetadas a algunos de nuestros clientes. Básicamente es una colección de servlets, algunos servicios web SOAP y algunos recursos estáticos. No hacemos EJB ni ninguna otra cosa elegante de Java Enterprise.Convencer a los clientes para que actualicen a Java 5

Algunos de nuestros clientes ejecutan IBM WebSphere Application Server v5.1, por lo tanto, estamos limitados a Java 1.4 para el tiempo de ejecución y el desarrollo. Por supuesto, nos gustaría hacer nuestro desarrollo utilizando Java 5 (o incluso mejor Java 6). Hacer SOAP en 1.4 requiere una lib externa (utilizamos AXIS, pero está envejeciendo). No podemos usar enum, boxeo, genéricos ... Cada vez es más difícil encontrar 1.4 bibliotecas de terceros compatibles.

Los clientes están actualmente satisfechos con esta configuración antigua pero que funciona bien. Nos gustaría que actualizaran su tiempo de ejecución Java. En este caso, significa actualizar a IBM WAS 6.1 o 7.0?

¿Qué podemos decirles? ¿Qué hay para ellos?

Hasta ahora tengo:

  1. mejor desempeño como JVM es mucho más eficiente en Java 5 (incluso mejor con Java 6). Sin embargo, no puedo poner cifras sobre eso. No estoy seguro de si IBM VM ha mejorado mucho (uno de nuestros clientes se ejecuta en AIX).
  2. Asistencia. IBM WAS 5.1 solo se puede admitir a través de programas especiales de soporte extendido.

Son grandes corporaciones, por lo que planifican sus soluciones con más de un año de anticipación. Seleccionan un producto maduro hoy y lo implementan años después. El producto tiene unos meses antes de que termine su vida útil.

Ver IBM WebSphere Application Server comparison

+4

Esto es similar a [ Razones y ventajas para actualizar a Java 6 para un decisor no técnico (en el cliente) ] (http://stackoverflow.com/questions/3371681/reasons-and-advantages-for-upgrading-to-java-6-for-a-non-technical- decider-at-th). –

+1

¿FUE 5.1? J2EE 1.3? Dios mío, eso debe ser divertido: s –

+0

@pascal Sí. Al menos, hay un soporte de tiempo de ejecución de Java 1.4. – gawi

Respuesta

6

En primer lugar, el único SDK que se admite con una versión determinada de WAS es el SDK que realmente se envía con el producto (en otras palabras, IBM no admitirá ejecutar WAS en otro JDK, si esto es importante).

En segundo lugar, WAS podría incluso no comenzar con una versión más reciente del SDK (WAS 6.1 no comenzará con IBM JDK 1.6, por ejemplo).

  • fue de 5,1: J2EE 1.3, JDK 1.4.2
  • fue de 6,0: J2EE 1.4, JDK 1.4.2
  • fue de 6,1: J2EE 1.4, JDK 1.5
  • fue de 7,0: J2EE 1.5, JDK 1,6

que lo requieran un tiempo de ejecución más reciente, probablemente, será sinónimo de la migración grande: calificación del JDK y el servidor de aplicaciones, capacitación de los administradores, la migración de plataformas, la migración de las aplicaciones, la actualización de seguimiento, herramientas de implementación, pruebas de regresión , etc. Este es el gen reunir un proceso complejo y extremadamente lento con grandes empresas conservadoras.

En su caso, se podría tal vez considerar ramificación su software y ofrecer diferentes versiones y:

  • solamente el servicio de mantenimiento en la antigua versión
    • y definir una fecha de EOL para las versiones antiguas (que no puede mantenerla Ad Vitam Aeternam)
  • ofrecer nuevas características de la nueva versión única
  • oferta más aggressi Ver precios en la nueva versión

Debe haber una buena razón para que sus clientes adopten una versión más nueva y debe superar el costo de una migración.

+1

Nuestros productos son una pequeña fracción de lo que los clientes están ejecutando. Entonces no tenemos tanta influencia en su planificación de arquitectura web. Lo mejor que podemos hacer es convencerlos de que realicen el cambio antes y tal vez un movimiento más grande (¿por qué no ir a WAS 8.0 en 2012? Será GA para entonces). Otra opción que estoy considerando es pedirles a nuestros clientes que ejecuten nuestra aplicación en servidores aislados (por ejemplo, un JBoss reciente o un evento a WebSphere 7.0 si el cliente está dispuesto a pagar). Esta podría ser una oportunidad para que el cliente experimente un poco sobre nuevos productos y tecnologías. – gawi

+0

Estoy conservando la estrategia de "bifurcación" y "nueva función en la nueva versión solamente". Definir la fecha de EOL para los productos que vendes es algo muy importante, sin embargo, debe hacerse durante la venta. – gawi

0

Quizás porque Java 1.4 ha alcanzado el 30 EOL 2008 OCT Y así, su seguridad puede verse comprometida !.

Muestra un par de ejemplos, donde, la seguridad tiene realmente comprometida debido a Java 1.4.

Estarán lo suficientemente asustados IMO.

+0

Excepto que esto no se aplica a una IBM JVM. –

9

Puede informarles los costos de su decisión.

Si siguen eligiendo Java 1.4, agregar una nueva característica costará $ aaaa. Si se actualizan, agregar la misma característica costaría $ xxx. Es de suponer que también tienen un costo de actualizar sus sistemas. Si puede mostrarles que los ahorros en la versión más nueva de Java exceden el costo para ellos de actualizar su sistema, entonces pueden ver que ahorrarán dinero si actualizan.

Obviamente es difícil dar valores exactos para los costos de desarrollo, pero si puede estimar que el desarrollo sería aproximadamente un 30% más rápido (y por lo tanto, un 30% más barato) en una versión más nueva de Java, puede obtener una figura áspera al menos.

14

Java 1.5 ha alcanzado el final de la vida 3 de noviembre de 2009.

Así que ni 1.4 ni 1.5 están soportados por más tiempo lo que significa que no hay correcciones de seguridad.

Así que, básicamente, la única plataforma de Java admitida actualmente es Java6 (también conocida como Java 1).6)

+0

Esto. No existe una plataforma en la que desarrollar para antes de 1.6 tenga más sentido porque simplemente no hay soporte para cosas tan antiguas. –

+6

Esto se aplica a la JVM de Sun, pero es muy probable que la OP utilice una IBM JVM. –

+4

Esas fechas son para Java SE no comercial. Oracle vende soportes extendidos para empresas. De acuerdo con http://www.oracle.com/technetwork/java/eol-135779.html#j4b Java 1.4 es compatible hasta 2018, Java 5 hasta 2019 y Java 6 hasta 2021. Además, para IBM Servidor de aplicaciones web, el tiempo de ejecución de Java es parte del producto. Entonces, si una empresa negocia algún tipo de soporte extendido, le corresponde a IBM averiguar cómo proporcionarán las soluciones. WAS viene con el tiempo de ejecución de IBM Java SR (hay algo especial para Solaris ... creo que también puede usar Sun Java). – gawi

1

Dígales acerca de la seguridad. No estoy seguro si el sol todavía entrega parches para versiones anteriores (respuesta pavanlimo).

1

Si bien estoy de acuerdo con las otras respuestas dadas, otra consideración es ¿ha considerado su situación? ¿Has escrito la aplicación de manera que funcione bien con los demás? He sido administrador de sistemas desde hace un tiempo y uno de mis mayores problemas es el número de centros de desarrollo que piensan que deberíamos cambiar nuestro entorno de TI cuando estén listos. Y, por supuesto, si hay 2 o más casas de desarrollo que suministran productos a mi sitio, entonces hay un conflicto.

¿Ha escrito su aplicación de manera que pudiera ejecutar su elección de la versión de Java y la (elija su número pero es probable que sea mayor que 2) otras versiones de Java que requiera, generalmente en el mismo servidor , para apoyar otras aplicaciones igualmente importantes? Y sugerir compatibilidad con versiones anteriores es irrelevante: el otro proveedor no me respaldará a menos que esté en la versión elegida.

+0

Sí. Hemos estado considerando la situación del cliente y siempre hemos hecho lo mejor que podemos para satisfacer sus necesidades. Mi pregunta podría haber sido formulada: "En septiembre de 2010, ¿es razonable que una gran organización siga requiriendo el software compatible con Java 1.4?" Las grandes organizaciones tardan en pasar a tecnologías recientes y tienen muchas buenas razones para eso. Me preguntaba si nuestros clientes eran los más lentos entre los lentos. Nota: simpatizo con los administradores de sistemas y los arquitectos. Quiero que nuestras soluciones encajen. Por eso estoy preguntando. – gawi

0

¿Por qué no va a java 6? Tanto Java 1.4 como Java 5 han alcanzado su fin de vida.

+4

Cualquier referencia que muestre que IBM JVM 1.5 alcanzó EOL. Podría ser el caso, no sé, pero todas las publicaciones aquí parecen pasar por alto el hecho de que el OP está utilizando WAS y una JVM de IBM (y su versión de WebSphere podría no ser compatible con una JVM más reciente). –

4

Está en el negocio para satisfacer a sus clientes. Tienen una necesidad (ya sea real o percibida) de quedarse con una plataforma obsoleta.

Por lo tanto, diga "sí", pero hágales saber que planea aumentar su mantenimiento y actualizar los precios de la plataforma anterior en una fecha determinada. Este es un aumento de precios perfectamente justificado; necesita mantener la experiencia y el equipo para asegurarse de que su código funcione en una plataforma antigua, no compatible y concebiblemente insegura. Les está proporcionando un valor real al respaldar su infraestructura actual.

Y esté contento de que no esté en el negocio de los motores diesel. Si lo fuera, tendría muchos clientes con tecnología de la era de la Segunda Guerra Mundial.

2

He estado allí ... Los clientes pueden ser tercos. He usado RetroTranslator (http://retrotranslator.sourceforge.net/) y Retroweaver (http://retroweaver.sourceforge.net/) para tener funciones de Java 5. Sin embargo, no se puede hacer nada por el lado del rendimiento.

En cuanto a Java 1.5/1.4 EOL no es Java para el programa de negocios para los clientes de Java - que no son EOL si se paga por ellos ...

Cuestiones relacionadas