Sie sind auf Seite 1von 44
Arquitecturas Orientadas a Servicios: Service Oriented Modeling Framework SOMF ISIS 4707 Darío Correal

Arquitecturas Orientadas a Servicios:

Service Oriented Modeling Framework SOMF

ISIS 4707

Darío Correal (dcorreal@uniandes.edu.co)

SOMF

SOMF “El modelado Orientado a Servicios es una prácica del desarrollo de software que emplea disciplinas

“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

SOMF

SOMF •   Cómo modelar los servicios? –   Usar como punto de partida el ciclo

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 Analizar
Conceptualizar
Analizar
Diseñar
Diseñar
Marco de Modelado de Servicios Tomado de [1] página 24 4

Marco de Modelado de Servicios

Tomado de [1] página 24
Tomado de [1] página 24
•   Conceptualización Orientada a Servicios –   Cómo descubrir y empresariales? establecer las ideas

Conceptualización Orientada a Servicios

Cómo

descubrir

y

empresariales?

establecer

las

ideas

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

servicios

Establecer

una

taxonomía

y

un

portafolio

de

conceptuales de la organización

Conceptualización •   Análisis de Atributos –   Cuáles son los procesos de de conceptos?

Conceptualización • Análisis de Atributos

Cuáles son los procesos de

de

conceptos? – Cómo extraer conceptos de los procesos de negocio? – Cómo establecer atributos en los que estarán basados los servicios?

negocio y los

eventos

preceden

la

identificación

que

establecer atributos en los que estarán basados los servicios? negocio y los eventos preceden la identificación
Conceptualización •   1. Establecer Atributos Fundamentales –   Analizar los requerimientos de negocio –

Conceptualización • 1. Establecer Atributos Fundamentales

Analizar los requerimientos de negocio

Traducir esos requerimientos en entidades de software y servicios

Extraer propuestos

productos

los

atributos

de

los

Estudiar los Requerimientos del Negocio Separar las ideas de negocio
Estudiar los
Requerimientos
del Negocio
Separar las
ideas de
negocio
Estableccer atributos básicos para cada producto
Estableccer
atributos
básicos para
cada producto
Conceptualización •   2. El modelo de atributos –   Provee un modelo visual para

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

y

subsiguientes

niveles

modelan

variaciones

puntos de convergencia

9

9 Conceptualización Ejemplo: “Inversiones Los Alpes” Inversiones Los Alpes es una empresa dedicada al manejo de

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.

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

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?

(h,h) Se debe poder adicionar un nuevo producto al portafolio en menos de 24 horas
(h,h) Se debe poder adicionar un nuevo producto al portafolio en menos de 24 horas
(h,h) Se debe poder
adicionar un nuevo
producto al portafolio en
menos de 24 horas
Flexibilidad
Flexibilidad
Utilidad Seguridad
Utilidad
Seguridad
(h,h) Se debe poder adicionar un nuevo producto al portafolio en menos de 24 horas Flexibilidad

12

Conceptualización

Ejemplo

12 Conceptualización Ejemplo
12 Conceptualización Ejemplo

13

13 Conceptualización
Conceptualización
Conceptualización

14

Ejemplo

14 Ejemplo Conceptualización
Conceptualización
Conceptualización

15

Conceptualización

15 Conceptualización
15 Conceptualización
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 16

Descubrimiento y Análisis

Categorización de los Servicios
Categorización
de los
Servicios
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 16
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 16
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 16
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 16
Tipificación de Servicios
Tipificación de
Servicios
Perfilamiento de Servicios
Perfilamiento de
Servicios
Descubrimiento y Análisis Fuente del Servicio •   Abstracto •   Legado •   Portafolio

Descubrimiento y Análisis

Fuente del Servicio •   Abstracto •   Legado •   Portafolio
Fuente del
Servicio
•   Abstracto
•   Legado
•   Portafolio
•   Abstracto •   Legado •   Portafolio Estructura del Servicio •   Atómico •
Estructura del Servicio •   Atómico •   Compuesto •   Cluster
Estructura
del Servicio
•   Atómico
•   Compuesto
•   Cluster
Contexto del Servicio •   Negocio •   Tecnológico
Contexto del
Servicio
•   Negocio
•   Tecnológico
Descubrimiento y Análisis Tipo Abstracto Conceptos Procesos Organizacionales Organizacionales Conceptos Conceptos

Descubrimiento y Análisis

Descubrimiento y Análisis Tipo Abstracto Conceptos Procesos Organizacionales Organizacionales Conceptos Conceptos
Tipo Abstracto Conceptos Procesos Organizacionales Organizacionales Conceptos Conceptos Procesos Proceos
Tipo Abstracto
Conceptos
Procesos
Organizacionales
Organizacionales
Conceptos
Conceptos
Procesos
Proceos
Documentados
Indocumentados
Documentados
Indocumentados
Descubrimiento y Análisis Tipo Legado Servicios Aplicaciones Existentes Existentes Aplicaciones de Socios

Descubrimiento y Análisis

Tipo Legado Servicios Aplicaciones Existentes Existentes Aplicaciones de Socios Consumidores de Servicios
Tipo Legado
Servicios
Aplicaciones
Existentes
Existentes
Aplicaciones
de Socios
Consumidores
de Servicios
Descubrimiento y Análisis Tipo Portafolio Depósitos con Información Inventarios Organizacionales 20

Descubrimiento y Análisis

Tipo Portafolio Depósitos con Información Inventarios Organizacionales
Tipo Portafolio
Depósitos con
Información
Inventarios
Organizacionales
Descubrimiento y Análisis Fuente del Servicio •   Abstracto •   Legado •   Portafolio

Descubrimiento y Análisis

Fuente del Servicio •   Abstracto •   Legado •   Portafolio
Fuente del
Servicio
•   Abstracto
•   Legado
•   Portafolio
Estructura del Servicio •   Atómico •   Compuesto •   Cluster
Estructura
del Servicio
•   Atómico
•   Compuesto
•   Cluster
•   Atómico •   Compuesto •   Cluster Contexto del Servicio •   Negocio •
Contexto del Servicio •   Negocio •   Tecnológico
Contexto del
Servicio
•   Negocio
•   Tecnológico

Conceptualización

Conceptualización •   El objetivo es determinar las asociaciones y estructura de cada servicio •  

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

Descubrimiento y Análisis •   Tipos de Servicios Atómico –   Unidad de software inseparable

Descubrimiento y Análisis

Tipos de Servicios Atómico

Unidad de software inseparable – Funcionalidad técnica y de negocio limitada

de Servicios Atómico –   Unidad de software inseparable –   Funcionalidad técnica y de negocio
Descubrimiento y Análisis •   Tipos de Servicios Compuestos –   Compuesto de otros servicios

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

para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
para lograr objetivos tecnológicos y de negocios –   Poseen una jerarquía interna y relaciones de
Descubrimiento y Análisis •   Tipos de Servicios Cluster –   Agrupaciones de servicios que

Descubrimiento y Análisis

Tipos de Servicios Cluster

Agrupaciones

de

servicios

que

comparten

características tecnológicas o de negocio

Ideas de negocio – Líneas de negocio – Productos de Software – Operaciones de negocio

  Ideas de negocio –   Líneas de negocio –   Productos de Software –  
Descubrimiento y Análisis Fuente del Servicio •   Abstracto •   Legado •   Portafolio

Descubrimiento y Análisis

Fuente del Servicio •   Abstracto •   Legado •   Portafolio
Fuente del
Servicio
•   Abstracto
•   Legado
•   Portafolio
Estructura del Servicio •   Atómico •   Compuesto •   Cluster
Estructura
del Servicio
•   Atómico
•   Compuesto
•   Cluster
Contexto del Servicio •   Negocio •   Tecnológico
Contexto del
Servicio
•   Negocio
•   Tecnológico
•   Atómico •   Compuesto •   Cluster Contexto del Servicio •   Negocio •
Descubrimiento y Análisis •   Servicios de tipo Negocio –   El servicio provee soluciones

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?

También llamados Task Services

Descubrimiento y Análisis •   Servicios de tipo Negocio - Ejemplos –   Reclamaciones de

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

Descubrimiento y Análisis •   Servicios de tipo Tecnológico –   El servicio ofrece un

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

Descubrimiento y Análisis •   Espacios de Nombres Notación recomendada para expresar servicios –   Basados

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

Descubrimiento y Análisis Ejemplos de nombres de servicios Legacy / composite / business Legacy /

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

32

32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business

Portafolio de Servicios

32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business

Legacy

Abstraction

32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business

Atomic

Composite

Atomic

Composite

32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business

Technical

Business

Technical

Business

32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
32 Portafolio de Servicios Legacy Abstraction Atomic Composite Atomic Composite Technical Business Technical Business
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 33

Descubrimiento y Análisis

Categorización de los Servicios
Categorización
de los
Servicios
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 33
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 33
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 33
Descubrimiento y Análisis Categorización de los Servicios Tipificación de Servicios Perfilamiento de Servicios 33
Tipificación de Servicios
Tipificación de
Servicios
Perfilamiento de Servicios
Perfilamiento de
Servicios
Descubrimiento y Análisis •   Perfilamiento de Servicios –   Investigar la habilidad de los

Descubrimiento y Análisis

Perfilamiento de Servicios

Investigar la habilidad de los servicios para cumplir con los requerimientos contractuales

34

Tiempo de respuesta • Acceso • Disponibilidad

Perfilamiento
Perfilamiento
contractuales 34 •   Tiempo de respuesta •   Acceso •   Disponibilidad Perfilamiento Negocio Tecnología
contractuales 34 •   Tiempo de respuesta •   Acceso •   Disponibilidad Perfilamiento Negocio Tecnología
contractuales 34 •   Tiempo de respuesta •   Acceso •   Disponibilidad Perfilamiento Negocio Tecnología
contractuales 34 •   Tiempo de respuesta •   Acceso •   Disponibilidad Perfilamiento Negocio Tecnología
Negocio
Negocio
Tecnología
Tecnología
Descubrimiento y Análisis 35

Descubrimiento y Análisis

35

Descubrimiento y Análisis 35
Descubrimiento y Análisis Criterio Descripción Propiedad Identifica Usuarios (stakeholders), patrocinadores y

Descubrimiento y Análisis

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

Descubrimiento y Análisis 37
Descubrimiento y Análisis Criterio Descripción Reutilización Especifica el número de consumidores y/o

Descubrimiento y Análisis

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

Descubrimiento y Análisis 39
Descubrimiento y Análisis 40

Descubrimiento y Análisis

Descubrimiento y Análisis 40
Descubrimiento y Análisis 41

Descubrimiento y Análisis

Descubrimiento y Análisis 41
Descubrimiento y Análisis •   Análisis de Granularidad / Estrategia de Evolución 42

Descubrimiento y Análisis

Análisis de Granularidad / Estrategia de Evolución

42

Descubrimiento y Análisis •   Análisis de Granularidad / Estrategia de Evolución 42
Descubrimiento y Análisis 43

Descubrimiento y Análisis

43

Descubrimiento y Análisis 43
Descubrimiento y Análisis 44

Descubrimiento y Análisis

44

Descubrimiento y Análisis 44