Las aplicaciones Legacy presentan un alto coste de mantenimiento y de evolución, pero prestan servicios que son necesarios actualmente.
Esta situación dificulta en gran medida la transformación digital de las organizaciones, debido a las características de su infraestructura IT, que suele ser una mezcla heterogénea de aplicaciones escritas en diferentes idiomas en múltiples plataformas. Además, por su naturaleza, no son adecuadas para su despliegue en la nube, y a menudo requieren una infraestructura específica.
Dado que las organizaciones no pueden esperar por el exigente ritmo al que evoluciona el mercado, es necesario realizar una modernización paulatina en un entorno en el que se permita la convivencia del sistema Legacy con el nuevo sistema hasta la sustitución completa. El futuro está claro: el coste en infraestructuras Legacy es muchísimo mayor que el coste de los sistemas modernos, debido a los mecanismos de automatización de estos últimos.
Nuestro objetivo es transformar los sistemas Legacy, adaptándolos a las tendencias de la nueva era digital, ayudando a nuestros clientes en sus procesos de transformación tecnológica. Construimos nuestro software con arquitecturas modernas, nuevos procesos de desarrollo y un nuevo modelo de organización dinámica y ágil, ejecutando proyectos de gran tamaño con una fuerte carga tecnológica.
Proponemos sistemas basados en tecnologías, herramientas y frameworks de referencia en la actualidad y evolución de los sistemas Legacy, aplicando los principios y patrones de desarrollo de software más actuales, para abordar una construcción o migración gradual de estos sistemas; asegurando la calidad y seguridad del producto mediante la aplicación de automatismos y una amplísima gama de métodos de análisis de software estáticos y dinámicos.
A medida que las empresas adopten esta nueva realidad IT, podrán ofrecer nuevas experiencias a los clientes, a una velocidad más alta y con un producto de mayor calidad, tanto en los nuevos sistemas que requieran, como en los sistemas Legacy que se estén migrando.
El camino hacia la modernización digital

Cómo es...
Aplicaciones monolíticas basadas en tecnologías y patrones legacy con un alto grado de acoplamiento que dificulta su evolución.
- Baja UX.
- Arquitectura monolítica.
- Poco flexible y escalable.
- Despliegues costosos.
- Difícilmente mantenible.
- Rendimiento por recursos.
- Alto coste.
- Bloqueos en el desarrollo.
Orientación a producto, funcionalidades monolíticas:
Arquitectura y procesos basados en productos y servicios.
Visión del cliente estática y fragmentada (basada en la agregación de productos).
Modelo Multicanal con silos.
Basado en transacciones y servidores dedicados.

Nuestra propuesta...
Aplicaciones desacopladas que ofrecen la cohesión necesaria para integrarse entre sí y entre componentes externos, mejorando la UX, con desarrollos y despliegues rápidos y ligeros.
- Mejora de UX.
- Arquitecturas MSA, EDA, RTP.
- Mantenimiento sencillo.
- Flexible y escalable.
- Despliegue continuo.
- Basado en servicios (PaaS).
- Costes muy ajustados.
- Paralelización de esfuerzo.
Orientación a cliente, funcionalidades atómicas:
Arquitectura y procesos centrados en el cliente.
Visión del ciclo de vida del cliente holística, en tiempo real y enriquecida con datos externos.
Modelo Omnicanal (holistic touchpoints).
Basado en interacciones y eventos.
Características Arquitectónicas
Modular y Escalable
Posibilidad de implantación por partes en el cliente. Preparado para cualquier aumento de tráfico y almacenamiento de información.
Convivencia
Permite la coexistencia de la plataforma actual y la nueva. Test A/B mediante cookie para controlar el tráfico que va a cada plataforma durante la coexistencia de ambas.
Coexistencia
Coexistencia con sistemas actuales mediante conexiones a estos vía FTP, MQ, SOAP o, REST.
Reutilización
Aproximación a un microservicio por operativa (dominio) con el objetivo de la reutilización del mismo mediante comunicación REST.
Cross
Front-End y Back-End se encuentran desacoplados de tal manera que se facilita la coexistencia de distintas interfaces (look & feel) y la migración de cada una de estas partes sin que afecte al resto.
Autenticación
Autenticación y autorización en base al protocolo oAuth2, JWT en el API Gateway. También nos adaptamos a mecanismos propios (cookie corporativa, token corporativo, etc.).
Performance
Hacemos uso de tecnologías de coaching, bien sea de modo distribuido o no, con el fin de mejorar los tiempos de respuesta y procesado.
Entornos Locales
Ofrecemos entornos locales ante la inestabilidad o no disponibilidad del entorno del cliente por tareas como mantenimiento de sistemas.
Adaptable
Codificamos el software y premuramos la infraestructura de tal manera que se minimice el impacto ante cambios en los requisitos.
Open Source Technologies & Frameworks
Apostamos por frameworks Open Source que sean referencia en el sector IT y cuyo uso esté extendido para disminuir costes y facilitar la búsqueda de talento.
Open Source collaborative communities.

Spring Ecosystem, Hibernate, Struts, Lombok & Others.
Back-End Frameworks
Nos apoyamos principalmente en la potencia del ecosistema Spring, que provee módulos para cualquier necesidad relacionada
con el software (MVC, SpringBoot, Webflow, REST, SOAP, Security, Websockets, etc.), utilizando como complemento Frameworks y
librerías como Hibernate (ORM), Strunts, Lombok, etc.; y otros más específicos para testing como Mockito, H2, jUnit, etc.
Angular, Angular JS, Backbone, React, etc.
Front-End Frameworks
Uso de Frameworks Open Source que facilitan la arquitectura SPA como Angular JS, Angular, Backbone, React, KOA, etc. Incrementan
el nivel de abstracción en Aplicaciones Web, aislando la lógica de la aplicación mediante modelos de datos y vistas. Adicionalmente,
proveen de componentes para facilitar la comunicación (AJAX, REST) y para automatizar el testing (Karma, Jasmine).
QA & Continuous Delivery
Aplicamos los estándares y pruebas automatizadas para asegurar la calidad del producto y su adecuación a la normativa OWASP relativa a Ciberseguridad, y lo hacemos de forma integrada en un circuito de integración y despliegue continuo que garantiza disponer de la última versión del software en escasos minutos.
Quality Assurance
Especializados en desarrollar Softwarecon los más altos estándares de calidad.
Aseguramos que el software que desarrollamos cumple con todos los estándares definidos por nuestra organización, realizando controles a lo largo del ciclo de vida de los proyectos:
Pruebas unitarias y de integración en todas las etapas.
Herramientas QA para medir la calidad del código y monitorizar los sistemas.
Automatizamos las pruebas, reduciendo las tareas manuales y el sobrecoste que llevan asociado.
Continuous Integration
Potenciamos y agilizamos el procesode desarrollo y entrega de Software.
Realizamos integraciones automáticas de un proyecto con la mayor frecuencia posible en pocos minutos mediante la implantación de procesos, técnicas y herramientas de integración continua.
Encontramos y solventamos errores en cualquier etapa.
Aseguramos y mejoramos la calidad del software que entregamos a nuestros clientes.
Reducimos drásticamente el tiempo de validación y promoción del nuevo software desarrollado.