Taller 3. Arquitectura de Solución SOA

Anuncio
Taller 3. Arquitectura de
Solución SOA
2010
Andrés González. 201018063
Especialización en construcción de software
Universidad de los andes
Bogotá 2010
Julián Morales. 200213074
Carlos Criales. 200925612
José Daniel García. 200818257
Robinson De La Hoz. 201018033
Haiver Páez. 201018119
Versión
Modificado por
Descripción
Fecha
1
Grupo de Trabajo .jarc
Creación del documento de arquitectura de datos
Mayo 11 de 2010
1.1
Grupo de Trabajo .jarc
Inclusión de correcciones
Mayo 18 de 2010
1.2
Grupo de Trabajo .jarc
Inclusión de vistas
Mayo 18 de 2010
CONTENIDO
1.
Introducción
6
2.
Objetivos
7
3.
Supuestos
8
4.
Abstracción y análisis de la arquitectura de solución a través de puntos de vista 9
4.1 Componentes .............................................................................................................................. 9
4.2
4.3
5.
Zonas ................................................................................................................................ 10
4.2.1
Canales ................................................................................................................. 10
4.2.2
Conectores ............................................................................................................ 11
4.2.3
Middleware (integración) ..................................................................................... 11
4.2.4
Aplicaciones ......................................................................................................... 11
4.2.5
Almacenamiento (BDs) ........................................................................................ 12
4.2.6
Sistemas de Archivos ........................................................................................... 12
Vistas ................................................................................................................................ 13
4.3.1
Proveedores Externos ........................................................................................... 14
4.3.2
Plataforma ............................................................................................................ 16
4.3.3
Seguridad ............................................................................................................. 17
4.3.4
Persistencia ........................................................................................................... 18
PORTAFOLIO DE SERVICIOS
19
5.1
5.2
5.3
6
identificación de servicios ................................................................................................ 19
5.1.1
enfoque top-down ................................................................................................. 19
5.1.2
enfoque BOTTOM- UP ........................................................................................ 19
5.1.3
enfoque de arquitectura ........................................................................................ 20
categorizacion de servicios por taxonomia ....................................................................... 21
5.2.1
SERVICIOS DE ENTIDAD ................................................................................ 21
5.2.2
SERVICIOS DE funcionalidad ............................................................................ 21
5.2.3
SERVICIOS DE INFRAESTRUCTURA ............................................................ 22
5.2.4
SERVICIOS DE sistema de informacion ............................................................. 22
5.2.5
SERVICIOS DE PROCESOS DE NEGOCIO ..................................................... 22
contratos de los servicios .................................................................................................. 23
arquitectura de solución bajo el estilo de arquitectura SOA
24
6.1
BLUEPRINT DE ARQUITECTURA NIVEL 1 .............................................................. 24
6.2
Documentación ZONAS................................................................................................... 25
6.2.6
6.2.1
ZONA DE CANALES ......................................................................................... 25
6.1.1
ZONA DE PROCESOS ....................................................................................... 26
6.1.2
ZONA DE Servicios............................................................................................. 26
6.1.3
ZONA DE PROVEEDORES ............................................................................... 27
6.1.4
ZONA DE DATOS .............................................................................................. 28
DIALECTO DE DATOS CANONICO ............................................................................ 28
6.3
BLUEPRINT DE ARQUITECTURA NIVEL 2 .............................................................. 30
6.4
Documentación DE SERVICIOS Y ADAPTADORES (RNF) ........................................ 31
6.4.1
Servicios No Funcionales ..................................................................................... 32
6.4.2
Servicios Tipo Adaptador (ABCS) ....................................................................... 32
6.4.3
Soporte de los requerimientos no Funcionales ..................................................... 33
7
Lecciones Aprendidas
38
8.
Conclusiones
39
9.
Bibliografía
40
1. INTRODUCCIÓN
En una empresa típica, muchas arquitecturas van a existir en un punto del tiempo, algunas cubren necesidades específicas, otras son más generales, algunas
agregan detalle. Como sea, habrán muchas soluciones en uso o siendo consideradas para usar en orden se satisfacer las necesidades de la empresa. Cada una
de esas soluciones no trabaja independiente, por el contrario, trabajan en conjunto y para poderlas entender, se hace necesario definir clasificaciones para las
arquitecturas, definiendo vistas, fronteras y relaciones en orden de simplificar el la administración de la empresa.
Este documento tiene como finalidad mostrar el detalle de la solución planteada por el equipo de trabajo para el problema presentado en el banco los Alpes.
Siendo esta la tercera entrega, se llega a un nivel detallado de la solución teniendo en cuenta todos los aspectos técnicos, metodologías vistas en clase y
complementando de las entregas anteriores.
2. OBJETIVOS
El presente trabajo tiene como objetivo mostrar el análisis y la documentación de la arquitectura solución a través de los puntos de vista, la definición del
portafolio de servicios requeridos para soportar la automatización de los procesos de negocio de la generación de crédito a través de los enfoques vistos en
clase y el desarrollo de la arquitectura solución bajo el estilo SOA.
Dentro de los objetivos específicos propuestos para el presente trabajo se encuentran los siguientes:






Identificar los diferentes puntos de vista que se utilizaran para definir la arquitectura solución
Identificar los elementos y las relaciones que existen en cada vista
Identificar los servicios que van a ser empleados por la arquitectura solución, partiendo de varios enfoques tales como BOTTOM UP, TOP DOWN,
etc.
Categorizar los servicios identificados de acuerdo a varias taxonomías
Elaborar los contratos respectivos de cada servicio que permitan tener una visión exacta de la utilidad y comportamiento del servicio
Desarrollar los blueprint de arquitectura, en donde se pueda apreciar claramente las zonas, los servicios, los requerimientos no funcionales y sus
interrelaciones a través de canales de comunicación y mensajes.
3. SUPUESTOS
o
o
o
No existen soluciones adicionales o complementarias a las presentadas en el enunciado general del proyecto, es decir, solamente se consideraron las
aplicaciones indicadas en ese documento.
Suponemos que no se tiene detalle de los canales, estructura de mensajes y datos que son utilizados por los proveedores de servicios
Suponemos que no debemos desarrollar los siguientes servicios, dado que el banco ya tiene implementadas tales funcionalidades



Sincronización de tiempos entre los sistemas
Grabaciones de las llamadas al servicio automático de audio respuesta
Servidor de Correo
4. ABSTRACCIÓN Y ANÁLISIS DE LA ARQUITECTURA DE SOLUCIÓN A TRAVÉS DE PUNTOS DE VISTA
4.1 COMPONENTES














IVR: Consiste en un sistema telefónico que es capaz de recibir una llamada e interactuar con el humano a través de grabaciones de voz y el
reconocimiento de respuestas simples, como "sí", "no" u otras. Es un sistema automatizado de respuesta interactiva, orientado a entregar y/o capturar
información a través del teléfono, permitiendo el acceso a servicios de información u otras operaciones.
Portal: Sitio Web del Banco de los Alpes que permite a los clientes acceder a información de los productos y servicios que el banco ofrece, del mismo
modo, le permite al “cuenta-habiente” realizar diferentes acciones como: activar, editar y bloquear productos; actualización de información personal,
acceder a servicios.
ATM (Automated Teller Machine): Cajero automático, permite la realización de diferentes transacciones dependiendo de los servicios que ofrezca la
entidad bancaria, para el Banco de Los Alpes, aplican, transacciones con la cuenta de ahorros y transacciones con la tarjeta de crédito (retiro de
dinero, ingreso de dinero, avances en tarjeta de crédito).
SMS (Short Message Service): Servicio disponible en dispositivos celulares que permite el intercambio de mensajes compuestos por texto no mayores a
160 caracteres. Estos mensajes, favorecerían la rapidez con la que el banco se comunicará con los clientes con el fin de ofrecer nuevos productos e
informar a cerca de actividades realizadas con los productos que ya ha adquirido.
ESB (Enterprise Service Bus): “Combinado de arquitectura de software que proporciona servicios fundamentales para arquitecturas complejas a través
de sistemas de mensajes”. Es decir es una herramienta que va a permitir que las diferentes aplicaciones que utilizan diferentes protocolos de
comunicación y tipos de datos, se integren.
Credit Card System: Cargar archivos planos de los proveedores de clientes prospectos.
Savings Systems: Gestionar la información de cuentas de ahorro
Loans Credit System: Gestionar la información de créditos de libre inversión
Broadcast System: Contactar al cliente vía telefónica y por correo electrónico
Mail Server: Prestar el servicio de envío de correo electrónico
Dashboard: Desplegar indicadores y eventos que serán monitoreados
Making Financial Group System: Generar plásticos de tarjetas crédito y debito
Partner File Loader System: Cargar archivos planos de los proveedores de clientes prospectos.
Customer Scoring Systems: Depurar y segmentar los clientes prospectos







CRM: Registrar los prospectos que pasan los filtros del área de riesgo
Enviar vía Sockets los clientes a los que se les pre aprobó tarjeta de crédito, registrar la información de clientes a los que se les pre aprobó crédito de
libre inversión, enviar vía Sockets la información de los clientes a los que se les solicitará información adicional, enviar información de clientes para
realce de tarjetas, activar productos a través de Call center, multicanales(Portal, IVR, ATM, Redes Sociales) e inactivar los registros de clientes que
rechazan productos.
Credit Card Integrated System: Gestionar la información de tarjetas de crédito
OLAP (On Line Analytical Processing): Dentro de las bases de datos debemos tener una base de datos que permita realizar inteligencia de negocio y
verificación de los diferentes KPIs a implementar.
OLTP (On Line Transaction Processing): Base de datos transaccional que permita el almacenamiento de información, con los procesos que se llevan a
cabo en el banco.
ETL: Aunque el ETL no es ninguna aplicación, podemos decir que es un mecanismo que nos permite ingresar y validar todos los registros enviados por
agencias externas.
Medios de comunicación
SOAP/Web Services (Simple Object Access Protocol): Protocolo que permite a través de http envio y recepción de información por medio de llamados
de procedimientos (funciones métodos). Para nuestro caso de estudio es usado por alrededor del 60% de las diferentes aplicaciones.
JMS (Java Message Service): Permite la recepción, envío, creación y lectura de mensajes, de manera síncrona o asíncrona.
4.2 ZONAS
4.2.1 CANALES
Descripción: En esta zona se encuentran los canales IVR, Portal, ATM(Cajeros) y SMS. Además permite el acceso los diversos puntos de acceso a los
sistemas del banco.
Objetivo: Agrupar los diversos puntos de acceso a los sistemas del banco.
Responsabilidades: Autorizar, denegar el acceso a la información y comunicarse con los sistemas internos del banco. Categorizar por tipos de acceso a
los clientes del as aplicaciones del banco.
4.2.2 CONECTORES
Descripción: Dentro de esta zona transformaremos la información proveniente de la zona de los canales con el fin de dejar todos y cada uno de los
mensajes de manera que todos los sistemas de información del banco entiendan claramente
Objetivo: Transformar y/o dar formato a los mensajes.
Responsabilidades: Transformar, completar los mensajes, con el fin de dejar la información en un formato en el cual el “middleware” pueda entender.
4.2.3 MIDDLEWARE (INTEGRACIÓN)
Descripción: Zona encargada de enrutar los mensajes a las diferentes aplicaciones. Del mismo modo permite integrar las diferentes aplicaciones a
través de un ESB, para dichos llamados se emplearán (Sockets, SOAP/Webservices, JMS)
Objetivo: Enrutar los mensajes provenientes de los diferentes canales a las aplicaciones correspondientes. Integrar los diferentes procesos del Banco
de los Alpes.
Responsabilidades: Recibir los mensajes en un lenguaje estándar (XML) y redireccionar dichos mensajes a las aplicaciones correspondientes. Tener
control del flujo de la información dentro de las diferentes aplicaciones del Banco de Los Alpes.
4.2.4 APLICACIONES
Descripción: Zona encargada del manejo específico a cada uno de los mensajes enviados por la Zona de Middleware, es aquí donde dichos mensajes
son manejados para cumplir con las reglas de negocio. Dentro de estas aplicaciones podemos ver: Credit Card System, Savings Systems, Loans Credit
System, Broadcast System, Mail Server, Dashboard, Making Financial Group System, Parner FileLoader System, Customer Scoring System, CRM, Credit
Card Integrated System.
Objetivo: Implementación de requerimientos
Responsabilidades: Recibir mensajes en un lenguaje estándar, e ingresar en la aplicación (según corresponda). Responder a la capa de middleware si la
información ha terminado su proceso (inserción, edición, eliminación) correctamente dentro de la aplicación.
4.2.5 ALMACENAMIENTO (BDS)
Descripción: Zona en la cual se va a almacenar y se va a hacer persistente, toda la información que ha llegado hasta las bases de datos, dentro de esta
zona, se emplearán Bases de Datos (OLTP, OLAP)
Objetivo: Almacenamiento de la información ingresada por los diferentes canales
Responsabilidades: Garantizar que la información que llega aquí y que cumple con las diferentes reglas de negocio y constraints definidos por el Banco
de Los Alpes se están cumpliendo. Del mismo modo se debe garantizar la persistencia de los datos.
4.2.6 SISTEMAS DE ARCHIVOS
Descripción: Zona que permite que los archivos con los diferentes prospectos a ser evaluados por parte del banco sean procesados directamente por
las aplicaciones correspondientes . Aquí se emplearán técnicas como ETL (Extract, Transform and Load)
Objetivo: Enviar los registros directamente a la aplicación encargada de procesar la información.
Responsabilidades: Garantizar que los registros tienen el formato correcto.
4.3 VISTAS
Problema
4. Persistencia
3. Seguridad
2. Plataforma
1.
Proveedores
Externos
4.3.1 PROVEEDORES EXTERNOS
Objetivo: Identificar desde la perspectiva de los agentes externos a la aplicación su interacción con el sistema del Banco de Los Alpes, de mismo modo
identificar, los mecanismos utilizados para acceder a los servicios ofrecidos. Middleware (ESB) integración
Zonas: Proveedores, Conectores Middleware, Integración, aplicaciones, Realzadora.
Carrefour
Concesionarios de autos
Realzadora
Applicaciones
Integración
Middleware
Proveedores
Vista de proveedores externos
Almacenes Éxito
Constructoras
ESB
(Integrador)
Cargue
Prospectos
PartnersFileLoaderSystem
Administrar
Cliente
CRM
BlackListSystem
Consultar
Listas Negras
SavingsSystem
Aprobar
Producto
LoansCreditSystem
Activar
Producto
CredicardIntegratedSystem
ETL / BATCH
MakingFinantialProductSystem
JMS
SOAP
Sockets
4.3.2 PLATAFORMA
Objetivo: Visión de la parte lógica de todas las diferentes aplicaciones que el Banco de Los Alpes posee, también identificaremos los medios por los cuales
recibe información.
Zonas: Canales, Infraestructura de Red, Proxy Seguridad, Aplicaciones, Almacenamiento y Sistema de Archivos.
Canales
Vista de plataforma
Infraestructura de Red
IVR
Proxy Seguridad
Balanceador
de Cargas
JOSSO
JSSE
Portal
PartnersFileLoaderSystem
CustomerScoringSystems
BlackListSystem
CRM
SavingsSystem
LoansCreditSystem
BroadCastSystem
MakingFinantialProductSystem
Almacenamiento
Aplicaciones
Browser
ATM
Sistema de Archivos
OLTP
OLAP
HTTP
WS-Securiy
NFS
JDBC
Directorio Archivos
Planos
Filesystem Base de datos
Directorio RDBMS
ProductsDeliverySystem
4.3.3 SEGURIDAD
Objetivo: Describir la relaciones de los componentes de seguridad, protección de información sensible para el negocio, identificación de componentes de
seguridad que involucran la información de los usuarios y mostrar los elementos que pueden comprometer la privacidad de los clientes
Zonas: Canales, Conectores Middleware, Sistemas de Archivos, Aplicaciones, Almacenamiento
Canales
Vista de seguridad
IVR
Proxy Seguridad
Aplicaciones
Browser
ATM
JOSSO
JSSE
Portal
PartnersFileLoaderSystem
CRM
BlackListSystem
SavingsSystem
LoansCreditSystem
CredicardIntegratedSystem
HTTPS
WS-Security
4.3.4 PERSISTENCIA
Objetivo: Definir cuáles son las aplicaciones que van a estar interactuando con las diferentes bases de datos,
Zonas: Sistema de Archivos, Aplicaciones, Almacenamiento
Portal
PartnersFileLoaderSystem
Sistema de Archivos
Almacenamiento
Aplicaciones
Vista de persistencia
CustomerScoringSystems
BlackListSystem
OLTP
Directorio Archivos
Planos
CRM
SavingsSystem
LoansCreditSystem
BroadCastSystem
MakingFinantialProductSystem
ProductsDeliverySystem
OLAP
Directorio RDBMS
Flujo de peticion de Directorio Archivos Planos
Flujo de petición de Base de datos
Flujo de peticion de Filesystem Base de datos
Documentar relaciones entre elementos.
IVR. Protocolo remoting, permite crear aplicaciones ampliamente distribuidas, es decir, se pueden utilizar componentes (objetos) que estén en el
mismo equipo o que estén en cualquier parte de la red. Del mismo modo este protocolo permite separar la implementación de los métodos en
diferentes sistemas.
Identificar y documentar los requerimientos no funcionales
Encripción
Ws security
Reliable message
Certificados digitales
Canales seguros
Claves de acceso
LDAP políticas de vencimiento
Circular 052 de la superfinanciera para las entidades vigiladas por esta entidad
5. PORTAFOLIO DE SERVICIOS
5.1 IDENTIFICACIÓN DE SERVICIOS
5.1.1 ENFOQUE TOP-DOWN
Para identificar los servicios utilizando este enfoque partimos de los subprocesos de negocio identificados en la WBS que elaboramos en la arquitectura de
negocio. Leyendo esta estructura hacia abajo, pasando por las funcionalidades y los casos de uso, identificamos los siguientes servicios:






Depurar y Segmentar
Estudiar Crédito
Cargar Prospectos
Consultar Listas Negras
Administrar Cliente
Aprobar Producto
5.1.2 ENFOQUE BOTTOM- UP
Para identificar los servicios utilizando este enfoque partimos de las aplicaciones identificadas





Parametrizar Reglas de Segmentación
Parametrizar Factores de Evaluación
Administrar Cliente
Aprobar Producto
Activar Producto
5.1.3 ENFOQUE DE ARQUITECTURA
Para identificar estos servicios utilizamos los análisis de arquitectura realizados en talleres anteriores.
5.1.3.1
ARQUITECTURA DE NEGOCIO
Los servicios identificados bajo este enfoque son los siguientes:





5.1.3.2
Depurar y Segmentar
Estudiar Crédito
Cargar Prospectos
Parametrizar Reglas de Segmentación
Parametrizar Factores de Evaluación para Estudio de Crédito
ARQUITECTURA DE TECNOLOGIA
Los servicios identificados bajo este enfoque son los siguientes:





Localizar Servicio UDDI
Registrar Log de Auditoria
Registrar Eventos en el Dashboard
Localizar Nombres de Dominio
Autenticar contra Servidor LDAP
5.2 CATEGORIZACION DE SERVICIOS POR TAXONOMIA
5.2.1 SERVICIOS DE ENTIDAD
Los servicios de entidad son los siguientes:



Aprobar Producto
Administrar Cliente
Activar Producto
5.2.2 SERVICIOS DE FUNCIONALIDAD
Los servicios de funcionalidad son los siguientes:



Consultar Listas Negras
Parametrizar Reglas de Segmentación
Parametrizar Factores de Evaluación para Estudio de Crédito
5.2.3 SERVICIOS DE INFRAESTRUCTURA
Los servicios de infraestructura son los siguientes:




Registrar Eventos en el Dashboard
Localizar Servicio UDDI
Localizar Nombres de Dominio
Autenticar contra Servidor LDAP
5.2.4 SERVICIOS DE SISTEMA DE INFORMACION
Los servicios de sistema de información son los siguientes:



Registrar Eventos en el Dashboard
Localizar Servicio UDDI
Autenticar contra LDAP
5.2.5 SERVICIOS DE PROCESOS DE NEGOCIO
Los servicios de procesos de negocio son los siguientes:






Depurar y Segmentar
Estudiar Crédito
Cargar Prospectos
Consultar Listas Negras
Parametrizar Reglas de Segmentación
Parametrizar Factores de Evaluación para Estudio de Crédito
5.3 CONTRATOS DE LOS SERVICIOS
Los contratos de los servicios definen de forma clara la estructura de un servicio, su identificación, su propietario y como debe implementarse. Los contratos de
nuestros servicios son los siguientes:














Contrato Consultar Listas Negras
Contrato Administrar Cliente
Contrato Aprobar Producto
Contrato Activar Producto
Contrato Registrar Eventos en el Dashboard
Contrato Parametrizar Reglas de Segmentación
Contratos Parametrizar Factores de Evaluación para Estudio de Crédito
Contrato Localizar Servicio UDDI
Contrato Registrar Log de Auditoria
Contrato Localizar Nombres de Dominio
Contrato Autenticar contra Servidor LDAP
Contrato Procesar Pedido ATM
Contrato Procesar Pedido Portal
Contrato Procesar Pedido IVR
6
6.1
ARQUITECTURA DE SOLUCIÓN BAJO EL ESTILO DE ARQUITECTURA SOA
BLUEPRINT DE ARQUITECTURA NIVEL 1
6.2
DOCUMENTACIÓN ZONAS
6.2.1 ZONA DE CANALES
Esta zona agrupa los usuarios o clientes de las aplicaciones internas del Banco de los Alpes.



Canal ATM. Este canal hace referencia a los cajeros automáticos, desde los cuales los clientes podrán consultar el estado de sus productos, inactivar,
bloquear y cambiar la clave de sus productos
Canal Portal. Este canal hace referencia a los accesos de los clientes y usuarios de las aplicaciones del Banco de los Alpes, cuyo acceso se hace a través
de Internet.
Cana IVR. Este canal es el utilizado por los clientes del Banco de los Alpes, quienes a través de una aplicación de respuesta automática (menú de audio
respuesta) podrán acceder a diferentes funcionalidades, tales como: activación de productos, bloqueo de productos y cambios de clave
6.1.1 ZONA DE PROCESOS
Esta zona agrupa los subprocesos del proceso de Originación de Crédito que están asociados directamente con las tareas y funcionalidades del negocio.



Cargue de Prospectos. En este subproceso se encuentran las reglas de negocio que permiten el manejo del cargue de prospectos desde los archivos
que entregan los proveedores de información y la depuración de prospectos contra la Registraduria.
Depurar y Segmentar. En este subproceso se encuentran las reglas de negocio que permiten el manejo de la depuración de prospectos contra listas
negras y centrales de riesgo y segmentación de acuerdo al rango salarial y de gastos de los prospectos.
Estudiar Crédito. En este subproceso se encuentran las reglas de negocio que permiten el manejo de la creación y modificación de clientes en el CRM,
el estudio de crédito y la aprobación, creación y activación de productos
6.1.2 ZONA DE SERVICIOS
Esta zona agrupa los servicios que serán utilizados por las aplicaciones a nivel interno del banco. Estos se encuentran categorizados por funcionalidad, entidad e
infraestructura.

Servicios de Funcionalidad. Estos servicios están asociados con las tareas que soportan los procesos de negocio del Banco de los Alpes.
-
-


Parametrizar Rangos de Segmentación (S08). Por medio de este servicio el sistema permite la parametrización de las reglas de
segmentación para la validación de la información de los potenciales clientes.
Parametrizar Factores de Evaluación para estudio de crédito (S09). Se encarga de permitir configurar los factores de negocio
que me permiten calcular el score para el estudio de crédito.
Consultar Listas Negras (S01). Este servicio se encarga de consultar en los diferentes tipos de listas de riegos, los clientes
potenciales para los diferentes productos que ofrece el banco. Al final de la consulta del proceso el servicio informará como
primera medida si el cliente se encuentra o no en algunas de las listas restrictivas.
Servicios de Entidad. Estos servicios están asociados con las entidades que por gobernabilidad de datos, tienen la información de clientes y
productos del Banco
Aprobar Producto (S03). Por medio de este servicio el sistema permite la aprobación de productos de clientes en el sistema.
-
Administrar Clientes (S02). Este servicio se encarga de permitir la creación de los clientes del banco.
-
Activar Productos (S05). Por medio de este servicio el sistema permite la activación, bloqueo y cambios de clave de productos
Servicios de Infraestructura. Estos servicios están asociados a las plataformas de soporte que transversalmente son utilizados por las
aplicaciones del Banco.
Autenticar contra Servidor LDAP (S15). Realiza la autenticación de usuario contra un servidor LDAP o también puede cerrar
sesión.
-
Localizar Nombres de Dominio (S14). Permite conocer mediante el nombre del servidor su dirección ip para su ubicación.
6.1.3 ZONA DE PROVEEDORES
Esta zona agrupa las aplicaciones proveedoras de información que son utilizadas por los procesos de negocio del Banco para la administración de clientes y
productos.
 PartnersFileLoaderSystem. Este sistema tiene como principales responsabilidades:







o Cargar sobre un modelo de datos relacional los archivos planos que llegan desde los diferentes proveedores de clientes prospectos.
o Validar que la información de clientes prospectos sea real de acuerdo a la Registraduria General de la Nación.
CustomerScoringSystems. Es el sistema de información usado por el área de riesgo del Banco para depurar y segmentar los clientes
prospectos de acuerdo a varias validaciones.
BlackListSystem. Es el sistema que permite almacenar y administrar las listas negras locales y las externas como: Lista Clinton y Lista
Antilavado.
Esta aplicación también suponemos que nos permitirá el almacenamiento y administración de la información de centrales de riesgo tales
como CIFIN y DATACREDITO.
CRM. Es el sistema que permite la administración de la información de los clientes. Así mismo en este se realiza el estudio de crédito de los
clientes, antes de la pre aprobación de productos.
CredicardIntegratedSystem. Este sistema permite el almacenamiento y administración de la información asociada a tarjetas de crédito.
LoansCreditSystem. Este sistema permite el almacenamiento y administración de la información asociada a los créditos de libre inversión.
SavingSystems. Este sistema permite el almacenamiento y administración de la información asociada a las cuentas de ahorros.
6.1.4 ZONA DE DATOS
Esta zona agrupa las bases de datos asociadas a cada una de las aplicaciones proveedoras del Banco. Estas bases de datos son categorizadas en dos grupos:
OLTP y OLAP.

OLTP (OnLine Transaction Processing). Estas facilitan y administran aplicaciones transaccionales, usualmente para entrada de datos y recuperación
y procesamiento de transacciones.

OLAP (OnLine Analytical Processing). Utilizada para agilizar la consulta de grandes cantidades de datos. Para ello utiliza estructuras
multidimensionales (o Cubos OLAP) que contienen datos resumidos de grandes Bases de datos o Sistemas Transaccionales (OLTP). Se usa en
informes de negocios de ventas, marketing, informes de dirección, minería de datos y áreas similares.
6.2.6 DIALECTO DE DATOS CANONICO
En la siguiente tabla se identifican los tipos de datos propuestos para los canales, al momento en que estos se autentican y entran en contacto con la zona de
servicios.
Sistema / Canal
ATM
IVR
Portal
Dato Propietario
Base 24
Remoting
HTTP
Mensaje
Dato Canónico
Destino
Cambio de Clave
XML (SOAP)
Servicio Activar
Producto
Bloqueo de Producto
XML (SOAP)
Servicio Activar
Producto
Cambio de Clave
XML (SOAP)
Servicio Activar
Producto
Activación de Producto
XML (SOAP)
Servicio Activar
Producto
Bloqueo de Producto
XML (SOAP)
Servicio Activar
Producto
Actualización de Información
XML (SOAP)
Servicio Activar
Producto
Cambio de Clave
XML (SOAP)
Servicio Activar
Producto
Activación de Producto
XML (SOAP)
Servicio Activar
Producto
Bloqueo de Producto
XML (SOAP)
Servicio Activar
Producto
Actualización de Información
XML (SOAP)
Servicio Activar
Producto
En cuanto a la estructura de los mensajes se definieron los siguientes XSD que soportan ENTIDADES y MENSAJES


XSD Cliente
XSD Producto


6.3
XSD Consultar Listas Negras
XSD Activar Producto
BLUEPRINT DE ARQUITECTURA NIVEL 2
6.4 DOCUMENTACIÓN DE SERVICIOS Y ADAPTADORES (RNF)
6.4.1 SERVICIOS NO FUNCIONALES
Estos servicios son utilizados por los sistemas del Banco para soportar su operación. Estos son transversales y pueden ser invocados en cualquier momento:



Registrar Log de Auditoria (S11). Nos permite registrar eventos y actividades de determinadas acciones realizadas en el sistema, con datos como la
fecha, hora quien hizo la acción sobre q sistema y que acción.
Registro de Eventos en el Dashboard (S07). Por medio de este servicio el sistema permite el registro de información importante para la toma de
decisiones en la gerencia de la organización
Localizar Servicios – UDDI (S10). Se implementa la funcionalidad de búsqueda de los servicios de acuerdo a unos tags que recibe como parámetro para
ser usados en la implementación de estos.
6.4.2 SERVICIOS TIPO ADAPTADOR (ABCS)
Estos servicios son utilizados por los canales para acceder a los servicios de las aplicaciones del Banco.

Procesar pedido ATM. Este conector permite que el canal correspondiente a los cajeros del banco que envían datos propietarios Base 64 puedan pasar
a un tipo de datos canónico que se puede manejar en la zona SOA. Este servicio permitirá redireccionar los mensajes que se lean desde los cajeros, en
lo concerniente a bloqueo de productos y cambios de clave que soliciten los clientes del Banco.

Procesar pedido Portal. Este conector permite que el canal correspondiente a los clientes que utilizan el portal del banco y que envían datos por el
protocolo HTTP, puedan pasar a un tipo de datos canónico que se puede manejar en la zona SOA. Este servicio permitirá redireccionar los mensajes
que se lean desde el portal del banco, en lo concerniente a actualización de datos, activación de productos, bloqueo de productos y cambios de clave.

Procesar pedido IVR. Este conector permite que el canal correspondiente a las llamadas que ingresan al sistema de audio respuesta y que envían datos
propietarios Remoting, puedan pasar a un tipo de datos canónico que se puede manejar en la zona SOA. Este servicio permitirá redireccionar los
mensajes que se lean desde el portal del banco, en lo concerniente a actualización de datos, activación de productos, bloqueo de productos y cambios
de clave.
6.4.3 SOPORTE DE LOS REQUERIMIENTOS NO FUNCIONALES
En la arquitectura se plantean varios componentes que soportan los requerimientos no funcionales tales como multicanalidad, transaccionalidad, seguridad y
manejo de excepciones.

Multicanalidad. Esta es soportada por los conectores que se encuentran en su correspondiente zona. La idea es que estos conectores transformen los
datos propietarios de cada uno de los canales a datos canónicos que puedan ser entendidos por los procesos que se encuentran en la zona SOA.

Transaccionalidad. En el blueprint se pueden apreciar en que zonas se encuentran identificadas las transacciones que son procesadas por los sistemas
del banco (En el blueprint se pueden apreciar los componentes TX).
o
o
o
o
o
Transacciones para la creación de parámetros de segmentación
Transacciones para la actualización de registros en las listas negras
Transacciones para la creación, actualización y modificación de los datos de los clientes
Transacciones para la aprobación de productos
Transacciones para la activación de productos
Así mismo se tiene la identificación de los puntos en donde se debe exigir el enfoque Two Phase Commit (2PC). Este enfoque nos permitirá manejar
confirmación para el registro efectivo de las transacciones en las bases de datos si todos los eventos de registro fueron exitosos. La idea es que si en un
evento que requiere aplicar cambios sobre dos o más tablas este se haga completamente y no parcialmente, garantizando la integridad de la información
del sistema. Para nuestro caso particular se tienen los siguientes





2PC. Controlar la actualización de la información del cliente en lo referente a los eventos en los que se tiene que actualizar el estado de los productos
del cliente tanto en el CRM como en los sistemas de tarjeta de crédito, crédito de libre inversión y cuenta de ahorros.
2PC(1). Controlar la actualización de la información del los productos de tarjeta de crédito en lo referente a los eventos en los que se tiene que
actualizar el estado de los productos y de la información del cliente en el CRM.
2PC(2). Controlar la actualización de la información del los productos de crédito de libre inversión, en lo referente a los eventos en los que se tiene que
actualizar el estado de los productos y de la información del cliente en el CRM.
2PC(3). Controlar la actualización de la información del los productos de cuenta de ahorros, en lo referente a los eventos en los que se tiene que
actualizar el estado de los productos y de la información del cliente en el CRM.
Seguridad. Esta es soportada por el servicio denominado Autenticar LDAP cuya finalidad es centralizar mediante un directorio común de acceso a
cualquier aplicación, la autenticación del usuario para permitir validar el perfil y el nivel de acceso que este puede adoptar.

Manejo de Excepciones. . En el blueprint se pueden apreciar en que zonas se encuentran identificadas las generaciones de excepciones (G), que se
pueden dar como producto de la no finalización de una transacción. Para nuestro caso, identificamos los siguientes:
o Excepciones a nivel de CustomerScoringSystem. Esta puede aparecer al momento de registrar los parámetros de segmentación de prospectos.
Su propagación deberá hacerse hasta el proceso que lo origino con el fin de que una persona la vea y tome alguna acción.
o Excepciones a nivel de BlackListSystem. Esta puede aparecer al momento de registrar en la base de datos de listas negras y centrales de
riesgo. Su propagación deberá hacerse hasta el proceso que lo origino con el fin de que una persona la vea y tome alguna acción.
o Excepciones a nivel de CRM. Esta puede aparecer al momento de registrar en la base de datos del CRM modificaciones a los registros de los
clientes. Su propagación deberá hacerse hasta el proceso y/o canal que lo origino con el fin de que una persona la vea y tome alguna acción.
o Excepciones a nivel de CreditCardIntegratedSystem. Esta puede aparecer al momento de registrar en la base de datos del sistema de tarjeta
de crédito modificaciones a los registros de los productos. Su propagación deberá hacerse hasta el proceso y/o canal que lo origino con el fin
de que una persona la vea y tome alguna acción.
o Excepciones a nivel de CreditCardIntegratedSystem. Esta puede aparecer al momento de registrar en la base de datos del sistema de tarjeta
de crédito modificaciones a los registros de los productos. Su propagación deberá hacerse hasta el proceso y/o canal que lo origino con el fin
de que una persona la vea y tome alguna acción.
o Excepciones a nivel de LoanCreditSystem. Esta puede aparecer al momento de registrar en la base de datos del sistema de crédito de libre
inversión modificaciones a los registros de los productos. Su propagación deberá hacerse hasta el proceso y/o canal que lo origino con el fin
de que una persona la vea y tome alguna acción.
o Excepciones a nivel de SavingsSystem. Esta puede aparecer al momento de registrar en la base de datos del sistema de cuentas de ahorros,
modificaciones a los registros de los productos. Su propagación deberá hacerse hasta el proceso y/o canal que lo origino con el fin de que una
persona la vea y tome alguna acción.
o Excepciones a nivel de PartnerFileLoaderSystem. Esta puede aparecer al momento de cargar los listados entregados por los proveedores en la
base de datos del sistema de cargue de archivos. Su propagación deberá hacerse hasta el proceso que lo origino con el fin de que una persona
la vea y tome alguna acción.
7
LECCIONES APRENDIDAS
1.
2.
3.
4.
5.
6.
7.
8.
9.
El trabajo en equipo es fundamental para analizar un problema desde varios puntos de vista
Es importante adoptar estándares comunes entre todos los miembros de un equipo de trabajo
No desechar observaciones y puntos de vista distintos a los propios
Organizar el trabajo a través de métodos de registro de información y planeación, seguimiento y control del mismo, nos disciplina y ayuda a conducir
nuestro trabajo de una forma clara y precisa.
Por medio de la utilización de repositorios comunes se puede agilizar en procesos de integración de información
Definir desde el principio claramente las tareas de cada miembro del grupo de trabajo
Los entregables deben estar listos al menos con un día de anticipación para evitar confusiones y extravíos de información a la hora de las entregas
Es importante tener bien identificados los procesos de negocios para que la solución planteada sea acorde y verdaderamente cumpla las expectativas
del cliente
Se debe tener una vista general de todo el proyecto para que se pueda atacar con varios puntos de vista
8. CONCLUSIONES
1.
2.
3.
4.
5.
6.
7.
Por medio de un análisis detallado y muy lógico del problema presentado se puede abstraer en diferentes vistas cada uno de los componentes de un
problema
La adopción de metodologías es importante para esquematizar y descomponer un problema complejo.
Se requiere un gran conocimiento de diferentes tecnologías y aplicaciones para definir las aplicaciones o soluciones necesarias para llegar a la solución
propuesta
La utilización de diferentes puntos de vista para la especificación de un estilo de arquitectura, permite consolidar en ultimas un modelo integral de
arquitectura más aproximado a una solución optima.
La utilización de varios enfoques al momento de definir servicios, nos permite abordar con mayor precisión la tarea de la identificación de servicios
Los diagramas de arquitectura (blueprint) deben ser los suficientemente claros como para prever el comportamiento futuro de nuestra solución.
El análisis detallado de todos los elementos de una vista o arquitectura nos permite identificar con mayor exactitud el verdadero objetivo y utilidad de
tales elementos dentro de una solución.
9. BIBLIOGRAFÍA
-
http://www.opengroup.org/architecture/togaf9-doc/arch/
http://wikipedia.org/
http://msdn.microsoft.com/es-es/library/kwdt6w2k(VS.80).aspx
http://es.wikipedia.org/wiki/Cajero_autom%C3%A1tico
http://es.wikipedia.org/wiki/Enterprise_service_bus
http://www.w3schools.com/soap/soap_intro.asp
Java(TM) Message Service Specification Final Release 1.1 extraido de la URL: https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDSCDS_Developer-Site/en_US/-/USD/ViewFilteredProducts-SimpleBundleDownload
http://es.wikipedia.org/wiki/Java_Message_Service
http://es.wikipedia.org/wiki/OLAP
Documentos relacionados
Descargar