30
Introducción a la Arquitectura Orientada a Servicios Mag. Javier Lacherre Mag. Joel Moreno CROSSNET www.crossnet.ws

CROSSNET - Introduccion SOA

Embed Size (px)

DESCRIPTION

Introducción a SOA

Citation preview

Page 1: CROSSNET - Introduccion SOA

Introducción a la Arquitectura Orientada a

Servicios

Mag. Javier Lacherre

Mag. Joel Moreno

CROSSNET

www.crossnet.ws

Page 2: CROSSNET - Introduccion SOA

Agenda

• Definición de Arquitectura Orientada a

Servicios

• El concepto de Servicio

• Enfoque Tradicional vs Enfoque SOA

• Escenarios para introducción de SOA

• Beneficios de SOA

• Rutas de aprendizaje con Oracle

University

Page 3: CROSSNET - Introduccion SOA

Arquitectura Orientada a Servicios

• SOA establece un modelo de arquitectura

que pretende incrementar la eficiencia,

agilidad y productividad de una empresa

posicionando los servicios como un

mecanismo esencial para el logro de las

metas estratégicas de la

organización(SOA: Principles of Service

Design by Thomas Erl)

Page 4: CROSSNET - Introduccion SOA

Arquitectura Orientada a Servicios

• Arquitectura orientada a servicios es una

estrategia de TI que organiza las

funciones contenidas en las aplicaciones

empresariales en servicios interoperables

basados en estándares que pueden

combinarse y reutilizarse rápidamente

para satisfacer las necesidades del

negocio (Definición de Oracle)

Page 5: CROSSNET - Introduccion SOA

Definición de Arquitectura de un Sistema

• Arquitectura: La organización básica de un sistema

formado por sus componentes, las relaciones, el

ambiente y los principios que guían su diseño y

evolución. (ANSI/IEEE 1471-2000:ISO/IEC 42010-

2007)

Page 6: CROSSNET - Introduccion SOA

Característica de Diseño

• Una característica de algo es simplemente

un atributo o una cualidad de una solución

• Ejemplos:• Acoplamiento: medida de la interdependencia entre

los componentes de un sistema (objetos, procedimientos, tablas)

• Reusabilidad: medida en la que un componente puede ser reusado

Page 7: CROSSNET - Introduccion SOA

Principio de Diseño

• Principio de diseño• Práctica aceptada por la industria

• Ejemplos:• Promover el bajo acoplamiento entre los

componentes

• Promover el reuso de los componentes

Page 8: CROSSNET - Introduccion SOA

Paradigma de Diseño

• Un paradigma de diseño es un enfoque

de gobierno para el diseño lógico de una

solución.

• Es un conjunto complementario de reglas

o principios que en conjunto definen el

enfoque representado por el paradigma

Page 9: CROSSNET - Introduccion SOA

Orientación a Servicios

• La Orientación a Servicios es un

Paradigma de Diseño o Modelo

Arquitectónico

• La aplicación de este paradigma resulta en

una Solución Orientada a Servicios.

• La unidad principal o bloque de

construcción de una solución orientada a

servicios es el Servicio

Page 10: CROSSNET - Introduccion SOA

¿Qué es un Servicio?

• Es una unidad de software independiente,

empaquetada en forma de componente reusable

y con relevancia empresarial.

• Expone un conjunto de capacidades (funciones)

a través de la red de una manera estándar (Por

ejemplo: WSDL)

• Las aplicaciones clientes invocan a las

capacidades del servicio a través de

mecanismos estándar de comunicación y de

intercambio de mensajes (Por ejemplo: HTTP y

SOAP)

Page 11: CROSSNET - Introduccion SOA

¿Qué es un Servicio?

• Simplificadamente, consta de dos partes: • Interfaz: capacidades (operaciones), parámetros de

entrada y salida (mensajes), la ubicación en la red (end point), protocolo de intercambio de mensajes, protocolo de comunicación

• Implementación: lógica de negocio + datos

• Las aplicaciones clientes solo tienen

conocimiento de la interfaz del servicio

Page 12: CROSSNET - Introduccion SOA

Servicios Web

• Es una tecnología que abarca un conjunto

de estándares que posibilitan la

publicación, el descubrimiento y provisión

de servicios a través de la web

• Los principales estándares son:• XML: Es un metalenguaje (lenguaje para definir otros lenguajes)

• SOAP: Estándar para el intercambio de mensajes (basado en XML)

• WSDL: Estándar para describir la interfaz de un servicio web (basado en XML)

• UDDI: Estándar publicar y localizar información de los Servicios Web en un directorio (basado en XML)

Page 13: CROSSNET - Introduccion SOA

Interacción de Servicios Web

Publicar el Servicio vía

UDDI

Conectar via SOAP.

Buscar el servicio via

UDDI

Recuperar ladescripcióndel Serviciovía WSDL

Registro de Servicios

(UDDI)

Service providerService requester

132

4

Page 14: CROSSNET - Introduccion SOA

Enfoque tradicional: Servicio de Atención de Denuncias

FormularioFormulario de de PresentacionPresentacion de de

DenunciasDenuncias

FormularioFormulario de de EvaluacionEvaluacionDenunciasDenuncias

FormularioFormulario de de ConsultaConsulta del del

ResultadoResultado

FormularioFormulario de de VerificacionVerificacionDenunciasDenuncias

Lógica de NegocioLógica de Negocio

Base de Base de DatosDatosDenunciasDenuncias N-tier

J2EEPL/SQL

Base de Base de DatosDatosDeclaracionDeclaracion

JuradaJurada

Base de Base de DatosDatosSistemaSistema ControlControl

Sistema de Atención de Denuncias

Page 15: CROSSNET - Introduccion SOA

Enfoque SOA: Enfoque SOA: Servicio de Atención de DenunciasServicio de Atención de Denuncias

DenunciaDenuncia OCIOCI Reglas de Reglas de AsignaciónAsignación

Reglas de Reglas de ValidaciónValidación

Proceso de DenunciaProceso de DenunciaRegistro de Registro de DenunciaDenuncia

Verificación Verificación de Denunciade Denuncia

Validación Validación de Denunciade Denuncia

Asignación Asignación de Denunciade Denuncia

Sistema de DenunciaSistema de Denuncia Sistema de Registro Sistema de Registro de Declaraciones de Declaraciones

JuradasJuradas

Sistema de ControlSistema de ControlGubernamentalGubernamental

Proceso de Registro de Proceso de Registro de Declaraciones JuradasDeclaraciones Juradas

Proceso de Proceso de Elaboración de Plan Elaboración de Plan

de Controlde Control

Plan de Plan de ControlControl

Portafolio de Servicios

Inventario o portafolio de servicios

Page 16: CROSSNET - Introduccion SOA

Enfoque SOA

Proveedores de Servicios

Aplicaciones Legacy Componentes J2EE Componentes .NET

Proveedor de Servicios de IT

• Correo

• Logging

• FTP

Servicios

PLATAFORMA SOA

Consumidores de Servicios

Aplicaciones Internas Aplicaciones Externas

Page 17: CROSSNET - Introduccion SOA

Finalmente….

• La aplicación de este paradigma o

enfoque de TI conduce:• Una colección de servicios, conocido como portafolio

de servicios

• Clasificada en tipos

• Organizada en capas

• Gobernada por principios y guías

Page 18: CROSSNET - Introduccion SOA

Algunos principios

• Los Servicios deben ser reusables:

Todo servicio debe ser diseñado y

construido pensando en su reutilización

dentro de la misma aplicación, dentro del

dominio de aplicaciones de la empresa o

incluso dentro del dominio público para su

uso masivo.

Page 19: CROSSNET - Introduccion SOA

Algunos principios

• Los Servicios deben tener bajo

acoplamiento: Es decir, se debe minimizar la

dependencia entre los servicios.

• Los Servicios deben permitir la composición:

Todo servicio debe ser construido de tal manera

que pueda ser utilizado para construir otros

servicios.

• Los Servicios deben tener un nivel adecuado

de abstracción

Los servicios deben publicar sólo información

esencial sobre sus capacidades

Page 20: CROSSNET - Introduccion SOA

SOA Escenario I – Integración de

Aplicaciones

Page 21: CROSSNET - Introduccion SOA

SOA Escenario II – Gestión de datos

maestros

Page 22: CROSSNET - Introduccion SOA

SOA Escenario III -

Optimización de Procesos de Negocio

Page 23: CROSSNET - Introduccion SOA

Beneficios de SOA

Agilidad

EficienciaFlexibilidad

Page 24: CROSSNET - Introduccion SOA

Beneficio principal para el Negocio

• Mayor Agilidad, Flexibilidad y

Eficiencia para el Negocio porque se

pueden desarrollar nuevos negocios

y modificar los existentes con mayor

rapidez y con un menor costo.

Page 25: CROSSNET - Introduccion SOA

Beneficio: Eficiencia

• Menores tiempos, esfuerzo y costos • Desarrollo

• Mantenimiento

• Integración

Page 26: CROSSNET - Introduccion SOA

Beneficio: Eficiencia

Page 27: CROSSNET - Introduccion SOA

Beneficio: Eficiencia

Page 28: CROSSNET - Introduccion SOA

Beneficio: Eficiencia

Page 29: CROSSNET - Introduccion SOA

El servicio como pieza clave

• Los beneficios de SOA solo se pueden

alcanzar si:• Los servicios son reusables

• Los servicios tienen bajo acoplamiento

• Los servicios participan en composiciones

Page 30: CROSSNET - Introduccion SOA

Preguntas de autoevaluación

• Qué es SOA?

• Qué es un Servicio?

• Servicio y Servicio Web es lo mismo?

• Cuál es el beneficio principal del enfoque

SOA?