Arquitectura de reutilización modular
La reutilización empresarial modular es un enfoque de desarrollo de software que utiliza componentes estandarizados y reutilizables para crear aplicaciones. En lugar de empezar de cero, los desarrolladores ensamblan módulos preconstruidos y probados para acelerar el desarrollo y mantener la coherencia en toda la empresa.
La reutilización empresarial modular beneficia todas las fases del ciclo de vida de desarrollo de aplicaciones:
- Diseño: Reduce el tiempo de planificación con componentes listos para usar.
- Desarrollo: Acelera las creaciones y minimiza el esfuerzo de codificación.
- Pruebas: Limita los defectos y el alcance de las pruebas a través de módulos probados previamente.
- Despliegue: Simplifica la implementación con componentes estandarizados.
- Mantenimiento: Permite actualizaciones automáticas en todas las aplicaciones mediante módulos compartidos.
Para desarrollar un programa de reutilización exitoso, siga estos cinco principios rectores:
- Interoperable: Use componentes básicos consistentes en todas las aplicaciones y entornos de autoría.
- Actualizable: Actualice componentes individuales sin interrumpir aplicaciones completas.
- Configurable: Ajuste el comportamiento sin reescribir la lógica del negocio.
- Modular: Evite capas grandes y monolíticas que sean difíciles de mantener.
- Gobernado: Establecer la gobernanza (por ejemplo, el Pega Center of Excellence) para gestionar, evolucionar y garantizar la calidad de los activos reutilizables.
Situational Layer Cake
La estructura Pega Situational Layer Cake™ es un modelo arquitectónico básico que admite de forma inherente la reutilización empresarial modular. Vea el siguiente video para aprender sobre la estructura Situational Layer Cake:
Transcripción de video:
Hola, soy Don Sherman, director de Tecnología de Pega, y si habla lo suficiente con nosotros, es probable que haya oído hablar de la Situational Layer Cake. No. Pega no está tratando de entrar en el negocio de los productos horneados, y sí, tal vez sea un nombre un poco gracioso, pero refleja una arquitectura patentada que es fundamental para la forma en que piensa en su transformación digital y modernización de sistemas heredados. La meta de la layer cake es permitirle equilibrar lo que a menudo son dos fuerzas que compiten en su negocio.
Primero, el deseo de reutilizar para obtener economías de escala y coherencia. Pero, por otro lado, debe tener en cuenta la variación que requiere su negocio. A veces, vende diferentes productos. Quiere ser competitivo. Otras veces, opera en diferentes regiones. Debe cumplir con las necesidades de cumplimiento normativo en esas regiones. La layer cake le permite equilibrar esos enfoques de una manera que no lo hacen los enfoques tradicionales. A menudo, intenta meter todo en una sola aplicación y termina con un montón de código de espagueti con todo lo que se necesita para gestionar las variaciones, o termina haciendo que cada variación despliegue su propia aplicación, y termina con 50 a 100 aplicaciones diferentes, todas ellas con funciones prácticamente idénticas.
La layer cake es un enfoque para evitar que eso suceda. Y comienza creando su aplicación en capas con una capa empresarial. Piense en esto como todas las piezas que se pueden reutilizar en toda su empresa. Quizás esas sean sus estructuras de datos e interfaces. Tal vez sea la definición de algunos elementos clave de seguridad en su aplicación. Quizás se desarrollaron algunos componentes reutilizables. Quiere tenerla disponible como biblioteca de componentes para que las personas la usen, tal vez como cuando genera un documento o publica cierta información en una cola de eventos. Por lo tanto, por encima de su aplicación empresarial, podría crear una capa con su aplicación. Digamos que está creando una nueva aplicación de negocios. Esta se encarga de gestionar cómo se incorpora a nuevos clientes. Como parte de esa aplicación, definiría su flujo de trabajo o lo que llamaríamos el ciclo de vida de su caso. Para los pasos que debe recorrer ese nuevo proceso de negocio para alcanzar su resultado, su etapa de cumplimiento. Entonces, ahora tengo una aplicación básica que puede funcionar en nuevos negocios.
Por supuesto, no solo hago nuevos negocios genéricos, sino que tengo diferentes productos. Por ejemplo, si soy un banco, tengo una versión de préstamo de mi nueva aplicación de negocios, y no reescribo toda mi nueva aplicación de negocios. Solo defino las partes de esa aplicación que deben ser específicas para el préstamo, por ejemplo, cómo completo el préstamo al final con documentos específicos y algunas de las decisiones de suscripción que debo tomar. Quizás trasladé mi negocio de préstamos al Reino Unido, y como parte de ese proceso, sé que al principio necesito recopilar información específica para gestionar los préstamos para el Reino Unido. Ahora, cuando se ejecuta la aplicación, la layer cake examina todas las capas y encuentra los elementos más específicos posibles, y ensambla dinámicamente el proceso adecuado para un usuario que intenta incorporar un nuevo préstamo en el Reino Unido. Y lo hace sin que usted tenga que escribir un montón de lógica if-then-else embebida en su código de procesamiento, sin tener que tener diferentes aplicaciones en cada capa de la layer cake.
Esta arquitectura es increíblemente poderosa. AIG, la aseguradora global, solía tener 52 sistemas de reclamos diferentes desplegados en todo el mundo. Se consolidaron esos 52 sistemas de reclamos en uno solo. Lo llaman One Claim, y se usa esta arquitectura exacta para hacerlo. Si está pensando en realizar la transformación digital o modernizar sus sistemas heredados, el enfoque de layer cake es absolutamente esencial para garantizar que no repita las estructuras en silos del pasado, sino que cree una arquitectura lo suficientemente potente como para adaptarse tanto a las variaciones que necesita en su negocio como a la reutilización que necesita a nivel empresarial para lograr sus economías de escala.
Ha llegado al final del video.
Organización de la Situational Layer Cake
La Situational Layer Cake organiza las aplicaciones en capas para admitir la reutilización modular y gestionar la complejidad. Cada capa tiene un propósito distinto:
- Capa de empresa: Características principales de Pega Platform™ y activos reutilizables en toda la empresa. Por ejemplo, un módulo de autenticación para toda la empresa que se usa en todas las aplicaciones de la organización.
- Capa de división: Componentes reutilizables específicos de una división. Por ejemplo, un flujo de procesamiento de reclamos adaptado para la división de seguros, pero reutilizado en todas sus aplicaciones.
- Capa de aplicación: Implementaciones específicas de la aplicación que aprovechan los activos de nivel inferior. Por ejemplo, una app de servicio al cliente que usa autenticación compartida y componentes de reclamos, pero agrega sus propios flujos de trabajo.
- Capa de implementación: Personalizaciones para escenarios de despliegue específicos sin alterar la aplicación base. Por ejemplo, localizar la aplicación de servicio al cliente para una región específica ajustando el idioma y las reglas normativas.
Esta estructura en capas admite la reutilización modular al permitir cambios en capas superiores sin afectar a las inferiores. Cuando necesite personalizar un componente, modifíquelo en la capa adecuada para preservar la integridad de la base y asegurarse de que las actualizaciones de los componentes principales se apliquen a todas las aplicaciones dependientes. Pega Platform utiliza un diseño prescriptivo de low-code que proporciona componentes estandarizados e interoperables para acelerar el desarrollo y promover la coherencia.
Los desarrolladores crean aplicaciones ensamblando componentes preconfigurados en lugar de escribir código manualmente. Este enfoque mejora la reutilización y acorta el tiempo de entrega. Las funciones reutilizables se encapsulan en aplicaciones de módulo, que puede apilar para formar aplicaciones incorporadas.
Por ejemplo, si varios procesos de negocio requieren la configuración de reuniones, puede crear una figura inteligente reutilizable que maneje esta funcionalidad. Configure la figura inteligente en App Studio y luego reutilícela en todas las aplicaciones para eliminar la duplicación y simplificar el mantenimiento.
El siguiente diagrama muestra una arquitectura de negocio de ejemplo que reutiliza el Meeting módulo en varias aplicaciones:
Compruebe sus conocimientos con la siguiente actividad:
This Topic is available in the following Module:
¿Quiere ayudarnos a mejorar este contenido?