• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Introducción a SOA
 

Introducción a SOA

on

  • 377 views

Pequeña introducción al mundo SOA

Pequeña introducción al mundo SOA

Statistics

Views

Total Views
377
Views on SlideShare
377
Embed Views
0

Actions

Likes
0
Downloads
23
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introducción a SOA Introducción a SOA Presentation Transcript

    • Introducción aSOA
    • Introducción Una arquitecturaorientada a servicios,más conocida por suacrónimo en inglés(SOA), es un medioarquitectónico demirar al mundo, y unmedio para crear unplan llamadoesquema global de laSOA.D
    • Arquitectura de Software El nivel conceptual másalto de un sistema en suambiente Organizaciónfundamental de unsistema descrita en: suscomponentes, larelación entre ellos y conel ambiente. Principios que guían sudiseño y evoluciónD
    • ¿Qué es SOA? Cuando adopta unavisión orientada aservicios, todo cobraforma de servicio. Losservicios son losladrillos con los que seconstruye una SOA.Son un medio paraacceder a lascapacidades que serepiten en un negocio.D
    • ¿Qué es SOA? Unidad de softwarecon unafuncionalidadatómica, con lassiguientescaracterísticas: Interfaz Definida oContrato de Servicio Reutilizable DesacopladoD
    • Servicio Una función sin estado, auto-contenida,que acepta llamadas y respondemediante una interfaz bien definida. Los servicios pueden también ejecutarunidades discretas de trabajo comoserían editar y procesar unatransacción. Los servicios no dependen del estadode otras funciones o procesos. La tecnología concreta utilizada paraprestar el servicio no es parte de estadefinición. Existen servicios asíncronos en los queuna solicitud a un servicio crea, porejemplo, un archivo, y en una segundasolicitud se obtiene ese archivo.D
    • Orquestación Secuenciar losservicios y proveerla lógica adicionalpara procesardatos. No incluye lapresentación de losdatos.D
    • Proveedor La función que brindaun servicio enrespuesta a unallamada o peticióndesde un consumidor.D
    • Consumidor La función queconsume el resultadodel servicio provistopor un proveedorD
    • Sin Estado No mantiene ni dependede condición pre-existentealguna. Reciben en lallamada toda lainformación que necesitanpara dar una respuesta.Debido a que los serviciosson "sin estado", puedenser orquestados entuberías o pipelines pararealizar la lógica delnegocio.
    • Servicio Define Explícitamente Lo que el servicio hace por usted. Un servicio proporciona una capacidad parasu consumidor, como por ejemplo, procesar elcambio de dirección de un cliente de unbanco. Cómo se utiliza. Un servicio cuenta con un método específicopara poder usarlo, lo que se llama invocación.Presenta una interfaz bien definida para poderacceder a sus prestaciones.
    • NO se define explícitamente Lo que no se define explícitamente en un servicio de SOA es: Dónde está ubicado el servicio. Se puede acceder a los servicios de forma remota, es decir,que puede llamarlos desde cualquier punto de una red. Cómo funciona. Los servicios son opacos, lo que significa que ni se sabe, niimporta, cómo realizan su trabajo. Los servicios de SOA pueden acoplarse para construir otrosnuevos, y ensamblarse en secuencias para construir procesos(orquestacion).
    • Que define la arquitectura SOA La arquitectura de la SOAdefine los siguientesaspectos: Como localizar unservicio. Como conseguir que secomuniquen los diferentesservicios. Como encaja cada unode los servicios en todo elsistema.
    • Construcción SOA Cuando trabaja con piezas de unaconstrucción, sólo tiene que localizar laspiezas en la caja, ensamblarlas en lospequeños pivotes, y montar el conjunto segúnse describe en el dibujo proporcionado. En una SOA, los servicios se encuentran enun repositorio denominado registro, seensamblan mediante las llamadasaplicaciones compuestas, y el plano que lesirve de guía es lo que se conoce comoesquema global de la SOA.
    • SOA Equivale a Negocio La potencia de unaSOA radica en sucapacidad paraexpresarcapacidadestécnicas en términosde negocio, y depermitir a lasempresasrecombinarlos conrapidez para crearnuevas soluciones.
    • Terminología Granularidad gruesa Interfaz frente a implementación Los contratos Acoplamiento débil
    • Granularidad Gruesa En SOA prefiere los componentes demayor tamaño (de grano grueso) oservicios de negocio. Las piezas más grandes favorecen queel personal de la empresacomprenda, reutilice y maneje losservicios de la SOA
    • Interfaz frente aimplementación diferencia entre lo quehace un servicio decómo lo hace.
    • Contratos definen las obligacionesentre el proveedor y elconsumidor del servicio.Pueden contemplarexpectativas sobre elservicio tales comodisponibilidad, fiabilidad,indicadores clave derendimiento, costes yasistencia.
    • Acoplamiento Débil es el modo dediseñar servicios másflexibles y menosdependientes unosde otros. Con ello sefacilita el ensamblajede los servicios y surecombinación ennuevos contextos.
    • Ejemplo SOA Consultar la hora Calcular tasa cambiaria Consultar Cliente Consultar datos básicos Consultar Cartera
    • EjecutarOrdenConsultarCliente(CRM)ConsultarInventario(ERP)Solicitar Envío(SCM)
    • Diferencias de otrasArquitecturas Al contrario de las arquitecturas orientado a objetos, lasSOAs están formadas por servicios de aplicacióndébilmente acoplados y altamente interoperables. Paracomunicarse entre sí, estos servicios se basan en unadefinición formal independiente de la plataformasubyacente y del lenguaje de programación(p.ej., WSDL). La definición de la interfaz encapsula(oculta) las particularidades de una implementación, loque la hace independiente del fabricante, del lenguaje deprogramación o de la tecnología de desarrollo(como Plataforma Java o Microsoft .NET). Con estaarquitectura, se pretende que los componentes desoftware desarrollados sean muy reutilizables, ya que lainterfaz se define siguiendo un estándar; así, unservicio C# podría ser usado por una aplicación Java. Eneste sentido, ciertos autores definen SOA como unaSúper-Abstracción.
    • Beneficios Mejora en los tiempos de realización decambios en procesos. Facilidad para evolucionar a modelos denegocios basados en tercerización. Facilidad para abordar modelos de negociosbasados en colaboración con otros entes(socios, proveedores). Poder para reemplazar elementos de la capaaplicativa SOA sin disrupción en el proceso denegocio. Facilidad para la integración de tecnologíasdisímiles.
    •  “Unless you use SOA in the context ofwhat you’re trying to do with thebusiness, you can end up with just thenew spaghetti to replace the oldspaghetti.”Marc Smith
    • Preguntas
    • Bibliografia • IBM SOA glossary, http://www-306.ibm.com/software/solutions/soa/glossary/index.html Thomas Erl, Service-Oriented Architecture:concepts, technology and design. • Thomas Erl, Service-Oriented Architecture: afield guide to integrating XML and webservices. • ObjectWeb, http://middleware.objectweb.org/ • OMG, http://www.omg.org/ Introducción a SOA - Acis, Jorge Mario Calvo2009