Solución al Sistema heredado método basado en herramientas

Sistema heredado

Los sistemas heredados suelen consistir en miles de millones de líneas de código en innumerables idiomas tradicionales. El proceso de extensión implica escanear el código, extraer la lógica empresarial, eliminar el código muerto y organizar los módulos en componentes lógicos. Los programadores expertos pueden ejecutar estas actividades manualmente. Sin embargo, debido a varias implicaciones de tiempo, costo y riesgo de la intervención manual, la extensión basada en herramientas es una opción más rápida, más fácil y más rentable.

Enfoque de extensión basado en herramientas

La demanda de desarrollo rápido de aplicaciones, junto con los avances significativos en la automatización del desarrollo de software, ha resultado en la creación de herramientas que automatizan y ayudan en el proceso de extensión heredada. En los sistemas heredados, un solo programa realiza múltiples funciones, o múltiples programas pueden realizar una función determinada. Comprender todas las operaciones ejecutadas por una función es una tarea difícil en términos de magnitud, esfuerzo y complejidad. Es posible que se deban analizar varios programas para comprender completamente una sola función. Este método consume mucho tiempo y es propenso a errores.

Ventajas de usar una herramienta

Las extensiones basadas en herramientas pueden resultar ventajosas en:

  1. Extracción de la lógica de negocios: una herramienta puede extraer la lógica de negocios relacionada con la funcionalidad de todos los programas y hacer que toda la funcionalidad esté disponible en forma de un repositorio de reglas de negocios. Con la automatización del análisis funcional, el desarrollador puede dedicar más tiempo a la optimización y la creación de componentes del código.
  2. Extracción a nivel de sistema y funcional: una herramienta puede extraer lógica de negocios a nivel de sistema así como a nivel funcional. La implementación de una herramienta garantiza que el conocimiento completo del negocio se extraiga del sistema, al tiempo que proporciona una imagen precisa de la funcionalidad de la aplicación.
  3. Representación gráfica del flujo del sistema: una herramienta también puede proporcionar una representación gráfica del flujo del sistema y resaltar varios módulos en el programa. Esto ofrece al desarrollador una mejor comprensión del sistema. Las herramientas también se pueden utilizar para los esfuerzos de migración de datos, por lo que es posible modelar datos para el sistema de destino. Esto es muy útil en casos como la conversión de VSAM a RDBMS.


Normalmente, un enfoque basado en herramientas para la extensión heredada implica los siguientes pasos:

Bases del inventario


  1. La herramienta captura un inventario por módulos.
  2. Las rutinas faltantes, programas, etc. son reportados. Por ejemplo, el programa A invoca a otro programa B, y el programa B no figura en el inventario del programa. El programa B se puede importar al inventario de herramientas.
  3. El ciclo continúa hasta que se completa el inventario.
  4. Los programas redundantes, es decir, los programas a los que no hace referencia ningún otro programa se identifican e ignoran.


Planificación y Programación


  1. Los programas importados son analizados por su complejidad. Diferentes herramientas utilizan diferentes algoritmos para determinar la complejidad.
  2. El análisis de complejidad ayuda en la estimación del esfuerzo para la extensión de los programas y una mayor planificación y programación de las actividades necesarias.


Generando el flujo del proceso


  1. La herramienta genera un flujo de proceso para una transacción.
  2. Resalta la referencia cruzada y la interdependencia entre programas, trabajos por lotes, módulos, etc.
  3. La representación visual proporciona una mejor comprensión del sistema a nivel macro y micro.


Modelado de datos


  1. La herramienta genera un modelo de datos "tal cual" del sistema actual.
  2. Este modelo se puede normalizar y optimizar aún más para satisfacer los requisitos del cliente.
  3. Este modelo de datos se puede exportar para su uso directo mediante herramientas estándar como Rational Rose, ERWIN, etc., para crear la base de datos de destino.
  4.  El modelo también se puede utilizar para crear un DDL para la base de datos de destino. Esta característica agrega más valor cuando se transforma de conjuntos de datos VSAM a RDBMS.
  5. Las dependencias y las relaciones entre las diversas entidades se pueden modelar utilizando interfaces gráficas.
  6. En la mayoría de los casos, el back-end puede permanecer sin cambios.


Minería y Extensión del Conocimiento


  1. Las reglas complejas se dividen en reglas atómicas independientes. Las reglas extraídas se revisan y validan según el código y la funcionalidad actual. El código redundante es eliminado
  2. Los "Casos de uso" están diseñados y se les asignan reglas comerciales apropiadas, lo que permite desarrollar los componentes que se traducen al software en el idioma de destino. Un componente puede consistir en más de una función. El diseño de los componentes depende de la arquitectura e infraestructura de destino.


Despliegue


  1. La aplicación rediseñada está expuesta a usuarios internos para probar su funcionalidad.
  2. El software generado se implementa en la plataforma de destino.


Publicar un comentario

0 Comentarios