Antecedentes

Como una de las principales compañías de transporte de Estados Unidos, el cliente es una gran red ferroviaria que cubre 23 estados en los dos tercios occidentales de los Estados Unidos. Sirviendo a más de 10,000 clientes por año, el cliente conecta los principales puertos occidentales a las puertas de enlace orientales y se conecta a los sistemas ferroviarios de Canadá y México.

Desafío

Los ferrocarriles continúan requiriendo soluciones tecnológicas innovadoras y ágiles para ganar eficiencia, mejorar las relaciones operativas y mantener una ventaja en un mercado de transporte competitivo. El cliente contrató a PK, un consultor experimentado en la industria ferroviaria, para desarrollar una aplicación empresarial sólida para manejar sus operaciones de terminal. La aplicación necesitaba acomodar la capacidad de prueba en varios niveles para minimizar el tiempo de inactividad y garantizar la eficiencia de las operaciones del terminal.

Solución

PK desarrolló una aplicación empresarial basada en web para operaciones de terminal que podría integrarse fácilmente con otras aplicaciones y proporcionar un sistema eficiente para operaciones de terminal.

El cliente requería una aplicación que impulsara la productividad y permitiera la integración con otras aplicaciones con un mínimo o ningún cambio de código requerido. PK desarrolló una aplicación basada en dominio basada en web que utiliza componentes J2EE reutilizables y Spring Integration Framework para garantizar la compatibilidad con otras aplicaciones. La aplicación empresarial se dividió en varios dominios para que cada dominio fuera una unidad de implementación autónoma. Todos los dominios, excepto la interfaz de usuario, se implementaron en servidores Linux; la interfaz de usuario se implementó en un clúster de lógica web.

Las instantáneas de dominios se pueden implementar individualmente, sin implementar toda la aplicación, lo que resulta en un tiempo de inactividad mínimo o nulo. El diseño basado en el dominio se eligió para garantizar un tiempo de inactividad mínimo, acomodar las pruebas en múltiples niveles y aumentar la productividad.

La separación de dominios resultó en una mayor eficiencia, ya que los miembros individuales del equipo podían centrarse en su dominio particular. La adopción del diseño impulsado por el dominio mejoró la capacidad de prueba en los niveles de unidad e integración, lo que resultó en una solución de problemas eficiente y una mayor productividad.