Saltar al contenido
BigTree108

Servicios de modernización de software heredado

Modernización de software heredado para sistemas que aún sostienen el negocio pero lo ralentizan: tomas de control de código escrito por otros equipos, actualizaciones a versiones actuales y sustitución paso a paso de módulos antiguos, sin una reescritura total de golpe. Hasta ahora nos han llegado nueve sistemas de otros equipos, el más antiguo escrito en 2008.

Cómo modernizamos un sistema heredado

  • Primero, una revisión de solo lectura

    El código, las dependencias, el despliegue y los datos leídos de principio a fin antes de que nadie cambie una línea, con una lista escrita de riesgos por orden de impacto en producción.

  • Pruebas alrededor de lo que existe

    Pruebas de caracterización que fijan lo que hace el sistema hoy, rarezas incluidas, de modo que cada cambio posterior se comprueba frente al comportamiento real y no frente a la memoria.

  • Actualizaciones de framework y de runtime

    De .NET Framework a .NET actual, de Java 8 a una LTS actual, de PHP 5 a PHP 8, de Python 2 a 3 y de AngularJS a Angular, paso a paso, publicando cada paso por separado.

  • Sustitución strangler fig

    Módulos nuevos construidos junto al sistema antiguo detrás de una capa de enrutamiento, que asumen una funcionalidad cada vez hasta que el código antiguo pueda apagarse, sin un único día en el que cambie todo.

  • Modernización de bases de datos

    Lógica de negocio sacada de los procedimientos almacenados y llevada a código probado, cambios de esquema convertidos en migraciones versionadas y datos de versiones de bases de datos sin soporte trasladados con un informe de conciliación.

  • Deuda de seguridad saldada

    Dependencias sin soporte sustituidas, vulnerabilidades conocidas corregidas, secretos sacados de los archivos de configuración a un vault y análisis de dependencias en el pipeline para que la deuda no vuelva.

Contrate ingenieros para sistemas heredados

  • ingenieros para sistemas heredados dedicados

    Ingenieros para sistemas heredados que se incorporan a su equipo a tiempo completo, trabajan con sus herramientas y su proceso, y responden ante su responsable. Usted los entrevista; nosotros nos hacemos cargo del contrato ucraniano, la nómina, la facturación y las vacaciones.

  • Proyectos de Modernización

    Un bloque definido de modernización con un alcance, un plan cerrado y un responsable designado de nuestro lado que se encarga del resultado e informa de los avances en sus canales.

  • Servicio continuo de modernización

    Modernización como servicio continuo: las mismas personas cada mes, un backlog que usted prioriza y horas que puede ver en nuestro portal y en la factura.

La página de equipo dedicado explica cómo se incorporan los especialistas a su equipo, y la de outsourcing trata de la entrega de proyectos, los relevos y cómo cobramos.

Quién se ocupa de modernización para usted

  • Líder técnico

    Es responsable de la revisión, de la lista de riesgos y del orden del trabajo

  • Ingenieros de .NET, Java y PHP

    Actualizaciones y refactorización en el propio lenguaje del sistema

  • Ingenieros de cloud y DevOps

    Pipelines, infraestructura como código y el abandono de los servidores antiguos

  • Ingenieros de QA

    Pruebas de caracterización y de regresión

Modernizar por pasos, no con una única reescritura

Una reescritura completa detiene la entrega durante meses y suele perder comportamientos que nadie documentó. Por eso modernizamos por pasos: cada uno lo bastante pequeño para publicarse, probado frente a lo que el sistema hacía antes y elegido por el riesgo o el coste que elimina, de modo que el negocio sigue funcionando con el sistema mientras este cambia.

Una toma de control empieza con una revisión de solo lectura y una lista escrita de riesgos antes de cualquier corrección. A veces esa lista muestra que conviene reescribir un módulo, y entonces se lo decimos, con los motivos por escrito y la reescritura planificada detrás de las mismas pruebas.

Otras soluciones que entregamos

Resumen de Soluciones

Preguntas sobre la modernización de sistemas heredados

¿Debemos reescribir o modernizar?

Normalmente, modernizar. Una reescritura tiene sentido para un módulo cuyo comportamiento se entiende bien y cuyo código bloquea cualquier cambio; para el resto, las actualizaciones incrementales y la sustitución strangler fig aportan valor antes y conservan el conocimiento incorporado al código antiguo. La revisión le da esa decisión módulo por módulo, por escrito.

Nuestros desarrolladores originales se han ido. ¿Pueden hacerse cargo del sistema de todos modos?

Sí. Trabajamos a partir del código, la base de datos, el despliegue y las personas que todavía usan el sistema, y la lista de riesgos escrita le dice lo que encontramos antes de que usted decida qué cambiar.

¿Sigue funcionando el sistema antiguo mientras se moderniza?

Sí. Las correcciones y los parches de seguridad continúan en el sistema en producción en todo momento y cada paso de modernización se publica por separado, así que nunca hay un periodo en el que el negocio espere a la nueva versión.

¿Con qué rapidez pueden empezar ingenieros para sistemas heredados?

Cuando el ingeniero de modernización adecuado está disponible, el inicio solo depende de su entrevista, del NDA y de la cesión de propiedad intelectual. Si no, hacemos una búsqueda, que normalmente aporta perfiles de candidatos en dos o tres semanas, y nadie empieza hasta que usted haya dicho que sí.

¿Cómo contratamos ingenieros para sistemas heredados a través de BigTree108?

Cuéntenos el trabajo, la seniority y las horas que necesita. Le proponemos una o dos personas con sus perfiles, usted las entrevista como entrevistaría a un empleado propio, firma un único contrato con BIG TREE 108 LLC y recibe una factura al mes.

¿Quién es el propietario del trabajo que realizan?

Usted. Cada especialista tiene un contrato firmado con BigTree108 que cede todo el producto de su trabajo a la empresa, y nuestro contrato con usted lo cede a su vez. El código, los diseños y los documentos se entregan en sus propios repositorios y herramientas, no se guardan donde solo nosotros podamos modificarlos.

¿Tiene un sistema que nadie quiere tocar?

Envíenos el repositorio o una descripción del sistema. Recibirá una respuesta en un día laborable: un plan para la revisión y los primeros pasos posteriores.