Arquitecturas Orientadas a Servicios: Service Oriented Modeling
Transcripción
Arquitecturas Orientadas a Servicios: Service Oriented Modeling
Arquitecturas Orientadas a Servicios: Service Oriented Modeling Framework SOMF ISIS 4707 Darío Correal ([email protected]) SOMF “El modelado Orientado a Servicios es una prácica del desarrollo de software que emplea disciplinas y lenguajes de modelado para proveer soluciones estratégicas y tácticas a problemas empresariales …. Es un análisis, diseño y arquitectura de todas las entidades organizacionales, concibiéndolas como activos llamados Servicios.” Service-Oriented Modeling - Michael Bell 2 SOMF • Cómo modelar los servicios? – Usar como punto de partida el ciclo de vida de los servicios – Usar los motivadores de negocio – Usar los escenarios de calidad – Utilizar un marco de referencia Conceptualizar 3 Analizar Diseñar Marco de Modelado de Servicios Tomado de [1] página 24 4 • Conceptualización Orientada a Servicios – C ó m o d e s c u b r i r y e s t a b l e c e r l a s i d e a s empresariales? – Algunas ideas para comenzar • Entender y separar preocupaciones y requerimientos de tecnología y de negocio • Descubrir servicios conceptuales que pueden ser usados dentro de una solución • Establecer una taxonomía y un portafolio de servicios conceptuales de la organización 5 Conceptualización • Análisis de Atributos – Cuáles son los procesos de negocio y los eventos que preceden la identificación de conceptos? – Cómo extraer conceptos de los procesos de negocio? – Cómo establecer atributos en los que estarán basados los servicios? 6 Conceptualización • 1. Establecer Atributos Fundamentales – Analizar los requerimientos de negocio – Traducir esos requerimientos en entidades de software y servicios – Extraer los atributos de los productos propuestos Estudiar los Requerimientos del Negocio 7 Separar las ideas de negocio Estableccer atributos básicos para cada producto Conceptualización • 2. El modelo de atributos – Provee un modelo visual para ilustrar las relaciones entre los atributos – Se utiliza un modelo de red – Los nodos son los diferenes atributos – Se agrupan en niveles de jerarquías – El primer nivel proviene de los atributos obtenidos en el paso anterior – Los subsiguientes niveles modelan variaciones y puntos de convergencia 8 Conceptualización Ejemplo: “Inversiones Los Alpes” Inversiones Los Alpes es una empresa dedicada al manejo de capitales de inversión. Para ello, la empresa ofrece un portafolio básico de inversiones a sus clientes, tales como acciones en pesos, acciones en dólares, acciones Japón, CDTs y TES. Debido a los últimos acontecimientos en los mercados financieros nacionales e internacionales y a la creciente competencia, la empresa considera prioritario poder crear rápidamente nuevos productos en el portafolio de servicios que ofrece a sus clientes. La empresa desea poder ofrecer diferentes productos de acuerdo a varios perfiles de riesgo de sus clientes. Igualmente, se desea poder ofrecer productos con diferentes tiempos de retorno a la inversión, así como rentabilidad y liquidez variables. 9 Adicionalmente se desea que en un futuro cercano, los clientes puedan generar reportes y consolidados sobre el rendimiento obtenido en sus inversiones, simular nuevos tipos de inversión y crear certificaciones de afiliación y constancias de saldo. Conceptualización Ejemplo: “Inversiones Los Alpes” Por dónde comenzar? - Cuáles son los motivadores del negocio? - Cuálos son los atributos de calidad y los escenarios de calidad relevantes? -Cuáles atributos podrían caracterizar esta solución? 10 Flexibilidad Utilidad Seguridad 11 (h,h) Se debe poder adicionar un nuevo producto al portafolio en menos de 24 horas Conceptualización Ejemplo 12 Conceptualización 13 Ejemplo 14 Conceptualización Conceptualización 15 Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios 16 Perfilamiento de Servicios Descubrimiento y Análisis Fuente del Servicio • Abstracto • Legado • Portafolio 17 Estructura del Servicio Contexto del Servicio • Atómico • Compuesto • Cluster • Negocio • Tecnológico Descubrimiento y Análisis Tipo Abstracto Conceptos Organizacionales Conceptos Documentados 18 Conceptos Indocumentados Procesos Organizacionales Procesos Documentados Proceos Indocumentados Descubrimiento y Análisis Tipo Legado Servicios Existentes 19 Aplicaciones Existentes Aplicaciones de Socios Consumidores de Servicios Descubrimiento y Análisis Tipo Portafolio Depósitos con Información 20 Inventarios Organizacionales Descubrimiento y Análisis Fuente del Servicio • Abstracto • Legado • Portafolio 21 Estructura del Servicio Contexto del Servicio • Atómico • Compuesto • Cluster • Negocio • Tecnológico Conceptualización • El objetivo es determinar las asociaciones y estructura de cada servicio • Servicios Conceptuales Atómicos – Entidades indivisibles • Servicios Conceptuales Compuestos – Agregación de otros conceptos – Jerárquicos por naturaleza • Servicios Conceptuales Cluster 22 Descubrimiento y Análisis • Tipos de Servicios Atómico – Unidad de software inseparable – Funcionalidad técnica y de negocio limitada 23 Descubrimiento y Análisis • Tipos de Servicios Compuestos – Compuesto de otros servicios – Colaboran para lograr objetivos tecnológicos y de negocios – Poseen una jerarquía interna y relaciones de servicios 24 Descubrimiento y Análisis • Tipos de Servicios Cluster – A g r u p a c i o n e s d e s e r v i c i o s q u e c o m p a r t e n características tecnológicas o de negocio – Ideas de negocio – Líneas de negocio – Productos de Software – Operaciones de negocio 25 Descubrimiento y Análisis Fuente del Servicio • Abstracto • Legado • Portafolio 26 Estructura del Servicio Contexto del Servicio • Atómico • Compuesto • Cluster • Negocio • Tecnológico Descubrimiento y Análisis • Servicios de tipo Negocio – El servicio provee soluciones de negocio a problemas existentes de la empresa? – Cuáles son los problema que el servicio propone resolver? – Soluciona requerimientos del negocio? – Cuál es la principal justificación y motivación detrás de la construcción de dicho servicio? 27 – También llamados Task Services Descubrimiento y Análisis • Servicios de tipo Negocio - Ejemplos – Reclamaciones de seguros – Transacciones de acciones y valores – Cálculo de comisiones – Amortización de crédito 28 Descubrimiento y Análisis • Servicios de tipo Tecnológico – El servicio ofrece un valor de negocio? – Está orientado sólo a las operaciones de IT? – Ofrece soporte al negocio o provee implementaciones a procesos de negocio? – Ejecuta transacciones de negocio o se encarga de la coordinación? – También llamados Utility Services – Ejemplos 29 • • • • Descarga de archivoso Transformación de datos Conversión de protocolos Localización de otros servicios Descubrimiento y Análisis • Espacios de Nombres Notación recomendada para expresar servicios – Basados en los elementos de estructura • Source, Structure, Context – Se delimitan mediante ‘/’ – Se usa ‘ . ‘ para crear subcategorías dentro de un grupo – Se sigue el formato • Source / Structure / Context – Source • Abstraction, Legacy, Portfolio – Structure • Atomic, Composite, Cluster – Context 30 • Business, Technical Descubrimiento y Análisis Ejemplos de nombres de servicios Legacy /composite /business Legacy/atomic/business.reclamaciones.servicio_registro Abstraction/cluster/business.prestamos.servicio_verificación 31 Portafolio de Servicios Legacy Atomic Technical 32 Business Abstraction Composite Technical Atomic Business Composite Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios 33 Perfilamiento de Servicios Descubrimiento y Análisis • Perfilamiento de Servicios – Investigar la habilidad de los servicios para cumplir con los requerimientos contractuales • Tiempo de respuesta • Acceso • Disponibilidad Perfilamiento Negocio 34 Tecnología Descubrimiento y Análisis 35 Descubrimiento y Análisis 36 Criterio Descripción Propiedad Identifica Usuarios (stakeholders), patrocinadores y responsables del servicio Contribución al Negocio Especifica las contribuciones principales al negocio Contratos y Compromisos Detalle de los niveles de servicio y compromisos realizados con los consumidores y servicios Financiación Existe un presupuesto para el servicio? Monto? Impacto en la Organización Cuáles grupos, personas o divisiones de la organización se beneficiarán del servicio? ROI Cuál es el retorno a la inversion actual o previsto del servicio? Descubrimiento y Análisis 37 Descubrimiento y Análisis 38 Criterio Descripción Reutilización Especifica el número de consumidores y/o servicios pares que actualmente consumen el servicio Consumo Ratas de transacción y volúmenes de consumo simultáneo Acuerdo de Nivel de Servicios (SLA) Compromisos técnicos adquiridos. Bajo Acoplamiento y Dependencias Identifique las dependencias y relaciones con otros servicios Granularidad Califique la granularidad del servicio Interoperabilidad Ambiente tecnológico en el cual opera el servicio Seguridad Requesitos de seguridad del servicio Descubrimiento y Análisis 39 Descubrimiento y Análisis 40 Descubrimiento y Análisis 41 Descubrimiento y Análisis • Análisis de Granularidad / Estrategia de Evolución 42 Descubrimiento y Análisis 43 Descubrimiento y Análisis 44