Вы находитесь на странице: 1из 64

6/23/2014

Mentoring
Services

Francisco Fagas
Microsoft MVP ALM
Arquitecto SOA

6/23/2014

Mentoring
Services

Qu es Arquitectura de Software?

Qu es Arquitectura de Software?
Programacin en capas
Uso de Web Services
Varias capas fsicas Servidores
Es una forma de
pensar

6/23/2014

Arquitectura de Software
La arquitectura de software, tiene que ver con el diseo y la
implementacin de estructuras de software de alto nivel. Es el
resultado de ensamblar un cierto nmero de elementos
arquitectnicos de forma adecuada para satisfacer la mayor
funcionalidad y requerimientos de desempeo de un sistema,
as como requerimientos no funcionales, como la confiabilidad,
escalabilidad, portabilidad, y disponibilidad.

Evolucin
Aplicaciones
Monolticas

Aplicaciones
Componentizadas

Integracin de
Aplicaciones
heterogneas

Integracin de
Aplicaciones
Externas

Servicios

6/23/2014

Mentoring
Services

Tipos Arquitectura de Software

Tipos Arquitectura de Software


Arquitectura Punto a
Punto

Arquitectura
distribuida

Arquitectura Local

EIA

SOA

Computacin en la
nube

6/23/2014

Evolucin de la arquitectura de TI
1970s a
med 1980s

Pre 1950s
a 1960s

Arquitecturas
Monolticas

Sub-rutinas
/Remote
Procedure
Calls

1980s a
mid 1990s

Invocacin de
Objetos
Remotos

Med 1990s a
early 2000s

Message
Processing

Late 1990s

Enterprise
Application
Integration
(EAI)

Hoy

Services
(SOA)

Incremento de la Modularidad y logrando Flexibilidad

Contexto de situacin y antecedentes


Evolucin de la arquitectura:
Vertical

Horizontal

Ecosistema

Abstraccin

6/23/2014

Propiedades
Programacin
Estructurada

Objetos

Componentes

Servicios

Granularidad

Muy fina

Fina

Intermedia

Gruesa

Contrato

Definido

Privado/Publico

Publico

Publicado

Reusabilidad

Baja

Baja

Intermedia

Alta

Acoplamiento

Fuerte

Fuerte

Dbil

Muy dbil

Dependencias

Tiempo de
Compilacin

Tiempo de
Compilacin

Tiempo de
Compilacin

Run-Time

mbito de
Comunicacin

Intra-Aplicacin

IntraAplicacin

InterAplicaciones

Inter-Empresas

Arquitectura Punto a Punto


Caractersticas
Fcil de implementar
Bajo costo
Difcil de mantener
Casi imposible de
actualizar

Esquema
A

6/23/2014

Arquitectura Local
Caractersticas
Reutilizacin en un solo dominio de
negocio
Bajo nivel de componentizacin
Sin Gobernabilidad

Arquitectura Local
Cliente

Servidor Web
Cliente

Pginas
Lgica de Negocios

Otra App en Otro Servidor Web

Acceso a Datos

Pginas
Lgica de Negocios Cliente

Cliente

Sin
reutilizacin

Acceso a Datos

6/23/2014

Arquitectura Distribuida

Caractersticas
Permite reutilizacin dentro de la
organizacin
Facilita la composicin de aplicaciones
Reutilizacin de workflows y servicios
Alta Gobernabilidad

Arquitectura Distribuida
Cliente
Cliente

Servidor de Aplicaciones
Cliente
Lgica de Negocios

Servidor Web

Cliente

Pginas

BPM

Acceso a Datos

Servicios
Reutilizacin

Servicios

Workflows
Registro

Retorno

Cliente

Cuenta

Consulta

Lgica de Negocios

Arquitectura Distribuida

6/23/2014

Producto

Cmo lo implemento?
Productos a utilizar
Windows Server 2008 R2 o superior
IIS 7+
WAS Windows Process Activation Service
Windows AppFabric
WCF Windows Comunication Foundation
WF Workflow Foundation
Visual Studio

6/23/2014

SOA

Caractersticas
Reutilizacin a nivel inter empresarial
Facilita el mantenimiento
Permite desarrollar nuevas caractersticas
de forma rpida
Gobernabilidad Extensa

SOA - ESB
A

Enterprise Service Bus - ESB

10

6/23/2014

Cmo lo implemento?
Productos a utilizar
Biztalk Server
Windows Server 2008 R2
IIS 7+
WCF

SOA Sustituye la Arquitectura Distribuida?

Arquitectura Distribuida

.NET

Arquitectura de Integracin

.NET
App Legacy

App Legacy

App Legacy

Se complementan

11

6/23/2014

Y la computacin en la nube?
Caractersticas
Reutilizacin del Hardware
Reduccin del riesgo
Reduccin de los costos

Cloud Computing

Cloud Computing
Consumo
9
8
7
6
5
4
3
2
1
0

Hardware Necesario
Hardware Subutilizado
Hardware ptimo

Consumo

12

6/23/2014

Integrar SOA y Cloud Computing


Caractersticas
Aplicaciones On Premises
Aplicaciones en la nube
Integracin sin alterar la arquitectura
actual

Integrar sin un bus de datos

13

6/23/2014

Integrar SOA y Cloud Computing


E

Enterprise ServiceEnterprise
Bus
Service Bus

Servicios y Cloud Computing

Relay Services
Permite interconectar clientes con
servicios on premises
Forma segura de exponer servicios

14

6/23/2014

Servicios y Cloud Computing

Enterprise Service Bus

Azure
Connect

Cliente

Servicio

Cmo lo implemento?

Productos a utilizar
Windows Azure
Azure Connect
Azure AppFabric
Windows Server 2008 R2+
WCF
Visual Studio

15

6/23/2014

Mentoring
Services

Definicin de SOA

Qu es SOA?
entonces SOA es
Implementar usando Web Services?
Integracin??
Entonces tiene que ser una estrategia de TI?
Una situacin que tristemente ocurre:
Desarrollador: Jefe!, ya tenemos listo el Web Service!
Jefe: Ah muy bien!!, entonces con eso ya tenemos
implementado SOA?

16

6/23/2014

Qu es SOA?
Desarrollador:

OK, si jefe ya tenemos SOA

Qu es SOA?
Nueva generacin de la computacin distribuida.
Brinda beneficios estratgicos a las organizaciones.
SOA es un estilo de arquitectura que enfatiza
el uso de servicios de red, seguros, compartibles,
que realizan tareas atmicas y desacoplados
para incrementar la flexibilidad del negocio de
una manera interoperable y agnstica tecnolgicamente.

17

6/23/2014

Qu es SOA?
Es un concepto de arquitectura de software que define la
utilizacin de servicios para dar soporte a los requisitos del
negocio.
Es una estrategia de TI que organiza funciones contenidas en las
aplicaciones empresariales, en servicios interoperables basados
en estndares que pueden combinarse rpidamente para
satisfacer las necesidades del negocio.
Organiza las funciones contenidas en aplicaciones empresariales
convirtindolas en servicios.

Qu es SOA?
Se aproxima a la estrategia de negocio de la empresa
Es un compromiso organizacional, que permite adoptar las
premisas de este paradigma y enmarcarlas dentro de la
estrategia de la empresa.
Implica un cambio de mentalidad tanto en las lneas directivas
como de las reas operativas de la empresa.

18

6/23/2014

Arquitectura Orientada a Servicios SOA


Significados diferentes para diferentes roles

Roles

Capacidades que un negocio desea exponer como un conjunto


de servicios a clientes y asociados de negocios

Negocios

Un Estilo de Arquitectura que require un proveedor de


servicios, un requiriente y una descripcin del servicio.
Contiene caractersticas tales como loose coupling, reuso e
implantaciones simples y compuestas

Arquitectura

Un modelo de Programacin completo con estndares,


herramientas, mtodos y tecnologas tales como los servicios
Web

Implantacin

Un conjunto de Acuerdos entre los proveedores y requirientes


del servicio que especifica la calidad del servicio e identifica las
mtricas clave de negocios y Tecnologa de informacin

Operaciones

Procesos de negocio
Un proceso de negocio es un conjunto de
actividades que generan un valor para la
empresa
La orientacin SOA permite modelar un
proceso como una orquestacin de
servicios

19

6/23/2014

BPM
Business Process Management
El BPM son las actividades que tienen como
objetivo el anlisis, diseo, ejecucin y
monitorizacin de los procesos de negocio

BPM
Caractersticas de BPM
Debe permitir gestionar el ciclo de vida de los
servicios
Simular procesos de negocio
Monitorizar KPIs de los procesos de negocio
Agilidad en el cambio de los procesos

20

6/23/2014

BPM
Relacin BPM, SOA y Web Services
Los Web Services son la tecnologa ms
adecuada para implementar arquitecturas SOA
Las arquitecturas SOA representan
adecuadamente procesos de negocio
El BPM permite la implantacin de un proceso
de negocio usando una arquitectura SOA.

BPM
Cmo genera valor el BPM?
La tecnologa debe dar soporte a los procesos
de negocio.
El mercado actual es muy cambiante. Los
cambios en los procesos deben ser rpidos
El BPM permite ver los procesos como una
sucesin funcionalidades atmicas.
Consecuencia: Es fcil y rpido cambiar los
procesos de negocio Ventaja competitiva

21

6/23/2014

BPM
Cmo empezar a utilizar BPM?
Empezar por un proceso que funcione mal
Intentar que la lgica de negocio cubra distintos
actores tanto internos como externos

BPM
Puntos clave de xito

La organizacin debe tener perfectamente definidos sus


procesos de negocio
Seleccionar los procesos de negocio susceptibles de usar
BPM
Definir correctamente los servicios (funcionalidad,
granularidad, etc)
Seleccionar las KPI adecuadas
Monitorizar, monitorizar, monitorizar,
Tener una orientacin de mejora continua de los
procesos

22

6/23/2014

BAM
Business Activity Monitoring
Son las actividades que van a permitir controlar
los procesos de negocio (monitorizacin).
Sus funciones principales son:
Seguimiento del proceso
Detectar cuellos de botella
Aumentar la capacidad de reaccin ante problemas

BAM
Qu debe hacer la monitorizacin?
La monitorizacin con BAM debe tener una
orientacin hacia el proceso de negocio.
Debe generar alarmas ante las KPI definidas para
el proceso de negocio.
Debe dar informacin en tiempo real y agregada
La informacin generada debe permitir la
mejora continua

23

6/23/2014

BPEL
Business Process Execution Language
Es el lenguaje mquina que permite la
implementacin del BPM.

Es un estndar soportado por la mayora de


fabricantes
Fsicamente es un fichero XML

BPEL
Qu aporta?
Es la unin entre negocio y tecnologa
Al ser un estndar usado por los fabricantes:
Permite elegir entre distintas plataformas
Permite la interoperabilidad
Fomenta la competitividad y la mejora de las
plataformas

24

6/23/2014

BPMN
Business Process Modeling Notation.

Modelado de procesos
Es el lenguaje del consultor de negocio.
Se usa para representar el proceso de negocio.
El modelo ser traducido posteriormente a
lenguaje mquina(BPEL) para ser ejecutado.
Ojo: Hay una tendencia a usar UML 2.0+ en vez
de BPMN.

BPM, BPEL, BAM, BPMN, SOA, Web Services


The Big Picture
BPM: es el proceso total
BPMN: es la parte que usa el consultor de negocio para
representar el proceso
BPEL: el cdigo ejecutable del proceso
BAM: la parte del BPM que permite la monitorizacin
SOA: la arquitectura que permite implementar BPM con
servicios. Su diseo es responsabilidad de los arquitectos
informticos.
Web Services: permiten que los servicios se integren en un
proceso de manera estndar. Responsabilidad de los
desarrolladores

25

6/23/2014

BPM, BPEL, BAM, BPMN, SOA, Web


Services(Cont.)
BPM
BPMN

BPEL

SOA

BAM

Mentoring
Services

Objetivos estratgicos y beneficios

26

6/23/2014

Los 7 objetivos estratgicos de la Computacin


Orientada a Servicios
Incrementar Interoperabilidad Intrnseca
Incrementar Federacin
Incrementar Alineacin de Negocio y tecnologa
Incrementar Diversidad de Vendors
Incrementar ROI
Incrementar Agilidad Organizacional

Reducir la carga de TI

Estratgico vs Tctico
Todos los objetivos son estratgicos en naturaleza, Objetivos
estratgicos brindado beneficios a largo plazo.
En comparacin, objetivos tcticos se basan en requerimientos
inmediatos a corto plazo.
Una caracterstica distintiva con la computacin orientada a
servicios es su naturaleza estratgica.
En contraste a la naturaleza tctica del desarrollo de
aplicaciones basadas en silos.

27

6/23/2014

Incrementar Interoperabilidad Intrnseca


Interoperabilidad representa la habilidad de los programas de
software de interactuar e intercambiar datos.
Integracin representa el esfuerzo requerido para lograr
interoperabilidad entre los programas de software.
Esfuerzo de integracin es usualmente requerido cuando los
programas de software no son compatibles y no son
interoperable.

Incrementar Interoperabilidad Intrnseca


El objetivo de la orientacin a servicios es establecer
interoperabilidad intrnseca o nativa entre servicios para reducir
la necesidad de integracin.
Esto significa que los servicios son diseados para ser
compatibles e interoperables, independientemente de cuando y
por quin son entregados.
Como resultado, la integracin como concepto empieza a
desaparecer cuando orientacin a servicios se aplica
ampliamente, porque la interoperabilidad intrnseca entre los
servicios se convierte en norma.

28

6/23/2014

Incrementar Interoperabilidad Intrnseca

sin la necesidad de
integracin

Incrementar Federacin
Federacin es la unificacin de ambientes separados
permitiendo a esos ambientes ser independientemente
gobernado.
SOA tiene como objetivo establecer una perspectiva federada
de una empresa a travs de la amplia difusin de los servicios de
implementacin estandarizada y componibles.
Cada servicio establece una interfaz tcnica estandarizada o
endpoint que representa un segmento de la empresa expresada
de una manera consistente.

29

6/23/2014

Incrementar Federacin

endpoint

perspectiva de

Incrementar Diversidad de Vendors


Diversidad de vendors representa la opcin de re-factorizar o
extender partes de una empresa con nuevos productos y
tecnologas de un vendor.
Esto puede ser archivado por el diseo de SOA en alineacin
neutral a las plataformas de proveedores y mediante la colocacin
de servicios como criterio de valoracin estandarizada para que
los detalles de implementacin propietarias pueden abstraerse.
Diversificacin del vendor no siempre es deseable pero es
importante tener la opcin de diversificacin cuando es necesario.

30

6/23/2014

Incrementar Diversidad de Vendors

Incrementar Alineacin de Negocio y tecnologa


Alineacin de Negocio y tecnologa representa el grado en que
los sistemas automatizados y la TI de la empresa pueden reflejar
y evolucionar con el negocio.
El incremento de alineacin de negocio y tecnologa puede ser
logrado mediante la colaboracin de expertos de negocio y
tecnologa durante las fases de anlisis y modelamiento.
Computacin orientada a servicios introduce un paradigma de
diseo que promueve la abstraccin y encapsulacin, y la
expresin de la lgica de negocio.

31

6/23/2014

Incrementar Alineacin de Negocio y tecnologa

Incrementar ROI
ROI ( Retorno de la Inversin) representa el valor tangible y y el
ahorro de costes que ofrece algo en comparacin con el costo de
producir y gobernar.
La computacin orientada a servicios fomenta la creacin de lgica
de negocio agnstica- lgica que es agnstico a cualquier propsito
y, por tanto, de mltiples usos.
Tcnicas de diseo que se originaron con el diseo de productos
comerciales se aplican para convertir lgica agnstica en lgica
altamente reutilizable completamente capaz de aprovechar la
interoperabilidad intrnseca para proporcionar un mayor ROI.

32

6/23/2014

Incrementar ROI

Incrementar Agilidad Organizacional


La mejor comparacin de agilidad es capacidad de respuesta.
Algunas veces mayor capacidad de respuesta para reaccionar y
adaptarse al cambio mas eficiente y eficaz.
Servicios agnsticos se convierten en activos de TI reutilizables
que se pueden ser repetidamente compuestos en diferentes
configuraciones.
Como resultado, una vez que un conjunto de servicios agnstico
maduros est disponible, el tiempo y el esfuerzo requeridos
para cumplir nuevos o modificar los requisitos de negocio se
reduce drsticamente.

33

6/23/2014

Incrementar Agilidad Organizacional

Reducir la carga de TI
La aplicacin consistente de una orientacin de servicios da como
resultado una TI con:
Reduccin de desperdicios y redundancia
Reduccin del tamao y costo operacional
Reduccin de gastos generales relacionados con gobernabilidad
y evolucin
Tal IT puede beneficiar a una organizacin a travs de un
aumento espectacular en la capacidad de respuesta y la
rentabilidad.

34

6/23/2014

Reducir la carga de TI

Los 7 objetivos estratgicos de la Computacin


Orientada a Servicios
Beneficios estratgicos

Incrementar
Federacin

Incrementar
Interoperabilidad
Intrnseca

Incrementar
Diversidad de
Vendors

Incrementar
Alineacin de
Negocio y
tecnologa

Incrementar
ROI

Incrementar
Agilidad
Organizacional

Reducir la
carga de TI

Objetivos estratgicos

35

6/23/2014

Mentoring
Services

Conceptos y terminologa

SOA una evolucin


Evolucin de la industria en
metodologas, tecnologa,
estndares.
Nueva generacin de la
computacin distribuida.
Brinda beneficios estratgicos
a las organizaciones

Objetivos
estratgicos

Soporta

Influye
Establece

Principios
de diseo

Se fundamenta

SOA

Son launidadde

Servicio

Sonaplicadosa

Ayudaa realizar

Define
Soporta

Modelode
arquitectura

Patrones
Soporta

Soporta

36

6/23/2014

Lingstica orientada a servicios


Service-Oriented Architecture
Service-Orientation
Service
Service Composition

Service-Oriented Solution Logic


Service Inventory
Service-Oriented Computing
Platform

Caractersticas de SOA
Business-Driven
Vendor-Neutral
Enterprise-Centric
Composition- Centric

37

6/23/2014

Tipos de Arquitecturas Orientadas a Servicios


Existen cuatro principales tipos de arquitecturas orientadas a
servicios, cada uno Asociado con un alcance especfico:
Service Architecture(circulo interior)
Service Composition arquitecture
Service Inventory Architecture
Service-Oriented Enterprise
Architecture ( outer circle)

Arquitectura Orientada a Servicios

Ejemplo de consideraciones para una arquitectura de inventario de servicios

38

6/23/2014

Orientacin a Servicios
La orientacin a servicios es un paradigma de diseo destinado
a la creacin de unidades lgicas de solucin que se da forma
individual para que puedan ser utilizados de manera colectiva y
en repetidas ocasiones en apoyo de la realizacin de un
conjunto especfico de objetivos estratgicos y beneficios
asociados a SOA y la computacin orientada a servicios .
Lgica de Solucin diseada de acuerdo con la orientacin a
servicios puede ser calificado con orientado a servicio", y la
unidad de la lgica solucin orientada a servicios se denominan
servicios.

Orientacin a Servicios
Orientacin a servicios es un enfoque de diseo (o paradigma
de diseo) utilizado para construir soluciones orientadas a
servicios.
El resultado de la aplicacin de la orientacin a servicios es la
creacin de caractersticas de diseo especficas, los cuales
fomentan la consecucin de los objetivos estratgicos asociados
a la computacin orientada a servicios.
Un correcto entendimiento de orientacin a servicios es
requerido para construir soluciones orientadas a servicios.

39

6/23/2014

Orientacin a Servicios

Orientacin a Servicios
El paradigma del diseo orientado a servicios ha sido
influenciado por algunas plataformas de diseo e innovaciones
tecnolgicas.

40

6/23/2014

Servicios
Un Servicio es la ms
fundamental unidad de lgica
orientada a servicios.
Es un contenedor de una o
varias capacidades.
Diseado con capacidades
reutilizables.
Servicios como: Web Services,
Components, REST Services.

Servicios
Componentes de granularidad gruesa llamados servicios.
Cada servicio expone procesos y comportamientos a travs de contratos.

41

6/23/2014

Servicios
Los problemas comunes de diseo de servicios incluyen:
Granularidad
Diseo de contratos
Diseo agnstico vs no agnstico
Encapsulacin legacy
Seguridad

Gobernabilidad

Servicios Agnsticos
El objetivo principal de la orientacin a servicios es producir una
gran cantidad de servicios con un contexto funcional agnstico.

42

6/23/2014

Contratos de Servicios
El contrato expresa informacin acerca del servicio, sus capacidades y
tipos de datos.
Un servicio consumidor debe cumplir con los requerimientos expuestos
en el contrato.
La parte fundamental del contrato del servicio es su interface tcnica.
El contrato del servicio se puede complementar con un documento de
SLA que describa informacin adicional como QoS, caractersticas y
limitaciones.
El cmo se diseen y existan fsicamente los servicios depende sobre qu
tecnologa es utilizada para crear el servicio.

Consumidores de Servicio
Cuando un programa invoca e interacta con un servicio este es
etiquetado como un consumidor de servicio.
Es importante entender que este trmino se refiere a un rol de
ejecucin temporal asumido por el programa al tiempo que est
invocando a un servicio para intercambiar informacin.
Un consumidor de servicio puede o no puede ser otro servicio.
La capacidad de que un servicio invoque ( consuma) otro
servicio es la forma bsica de composicin de servicio.

43

6/23/2014

Consumidores de Servicio

Capacidades de Servicio
Cada Servicio tiene asignado su propio contexto
funcional y tiene un conjunto de funciones
relacionadas a este contexto.

Purchase Order
oSubmitOrder
oCheckOrderStatus
oChangeOrder
oCancelOrder

Dichas funciones son conocidas como capacidades


del servicio, hasta es conocido como lo que se debe construir en
en el servicio.

44

6/23/2014

Capacidades de Servicio
Un Servicio puede tener uno o ms capacidades.
Las capacidades de un servicio son expresadas en el contrato
del servicio.
Un consumidor de servicio puede invocar una capacidad
especfica.
El trmino capacidad de servicio es comnmente utilizado
cuando el servicio es primeramente modelado.

Composicin de Servicios
Una composicin de servicios es un agregado de los servicios
colectivamente compuestas para automatizar una tarea o proceso
de negocio en particular.
Para calificar como un composicin, al menos, dos servicios que
participan adems de un iniciador de la composicin que tenga
que estar presente. de otro modo, la interaccin de servicios slo
representa un cambio de punto a punto.

45

6/23/2014

Composicin de Servicios
La composicin de servicios es muy importante para el xito de
una iniciativa SOA porque los beneficios estratgicos de
incrementar ROI y agilidad organizacional confan en la
habilidad de componer y recomponer servicios.

Composicin de Servicios
La composicin de servicios
confa en la habilidad de un
Servicio de consumir otros
servicios.

En este diagrama, El servicio A


acta como consumidor de los
servicios B, C y D.

46

6/23/2014

Composicin de Servicios
Consideraciones

Administracin de instancias en run-time


Transacciones cross-service
Intercambio de datos fiable
Requerimientos de Seguridad
Evitar transformacin
Rendimiento

Lgica de solucin Orientada a Servicios


Existen dos tipos bsicos de lgica de solucin orientada a
servicios: servicios y composicin de servicios.
Una solucin orientada a servicios puede abarcar una o ms
composiciones de servicios.

47

6/23/2014

Inventario de Servicios
Un inventario de servicios es una coleccin estandarizada y
gobernada de forma independiente de los servicios
complementarios dentro de un lmite que representa la empresa o
un segmento significativo.
Cuando una organizacin tiene mltiples inventarios de servicios,
este trmino se califica adems como inventario de servicios de
dominio.

Inventario de Servicios
Idealmente, todos los servicios son entregados como parte del
mismo inventario de servicios empresarial.
En entornos ms grandes, la estandarizacin en toda la empresa
puede ser inalcanzable. En este caso puede ser necesario formar
inventarios de servicio de dominio.
Planos de inventarios Servicio suelen definirse con antelacin
como parte de la fase de anlisis por adelantado.
Parte de esta fase de anlisis se centra en evitar el solapamiento
entre los servicios de inventario en un esfuerzo por lograr la
normalizacin del servicio.

48

6/23/2014

Inventarios de Servicio de Dominio


Mltiples inventarios de Servicio
de dominio pueden ser creados
para una empresa.
El alcance de cada dominio
est asociado un dominio de
negocio.
En cada dominio, el inventario
de servicios estn
estandarizados y gobernado
independientemente.

Normalizacin de Servicios

49

6/23/2014

Modelo de Servicio y Capas de Servicio


Dentro del inventario, los servicios se clasifican usando modelos
de servicio y se organizan dentro de capas lgicas
Consideraciones:

Task

Alcance

Entity

Estandarizacin

Utility

Escalabilidad
Plataformas de ejecucin

Infraestructura
Gobernabilidad

Re-Composicin dinmica
Servicios agnsticos dentro de un inventario de servicios estn
constantemente disponibles para la composicin repetida.

50

6/23/2014

Arquitectura Empresarial Vs SOA

51

6/23/2014

Mentoring
Services

Principios de Diseo Orientado a


Servicios

Recursos de Notacin - Introduccin


Recursos de Visio disponibles en
http://www.arcitura.com/notation
CCP ( Cloud Computing) y SOACP ( SOA

52

6/23/2014

Recursos de Notacin Introduccin


Documento oficial

Orientacin a Servicios
Los ocho principales principios de
diseo orientado a servicios son:
Contrato de Servicio estandarizado
Servicio de bajo acoplamiento
Abstraccin de servicio
Reusabilidad de servicio
Autonoma de servicios
Servicios sin estado
Descubrimiento de servicios
Composicin de servicios

53

6/23/2014

Contrato de Servicio estandarizado


Servicios dentro del mismo
inventario de servicios deben
cumplir las mismas normas de
diseo del contrato.
El uso de los documentos del
contrato de servicios Web (WSDL,
esquemas XML y las definiciones
de WS-Policy) como ejemplo, esta
ilustracin se destacan las reas
que normalmente se ven afectados
por la aplicacin de este principio
de diseo.

Servicio de bajo
acoplamiento
Los contratos de servicios imponen
requisitos de bajo consumo de
acoplamiento y son ellos mismos se
desacopla de su entorno.

54

6/23/2014

Abstraccin de servicio
Los contratos de servicio
contienen nicamente las
informaciones esenciales
acerca de los servicios, se
limita a lo que se publica en
los contratos de servicios.

Reusabilidad de servicio
Servicios contienen y
expresan la lgica agnstico y
pueden ser posicionados
como recursos empresariales
reutilizables.

55

6/23/2014

Autonoma de servicios
Autonoma en un nivel de
servicio plantea caractersticas
de diseo clave que son
especialmente relevantes
cuando los servicios
individuales se ensamblan en
composiciones complejas. En
este ejemplo los servicios
dentro de una jerarqua de
composicin se identifican de
acuerdo con sus respectivos
modelos de servicio.

Servicios Sin Estado


La incorporacin de una
medida equilibrada y
selectiva de gestin del
estado puede mejorar
significativamente la
escalabilidad de los servicios
individuales, una
consideracin importante en
el diseo de los servicios que
se comparten a travs de
mltiples composiciones.

56

6/23/2014

Descubrimiento de servicios
La aplicacin de este
principio de diseo da como
resultado la mejora de la
capacidad de descubrimiento
de un servicio y la
interpretacin como
resultado del aumento de la
calidad de las
comunicaciones de todo el
servicio de informacin de
metadatos publicados.

Composicin de Servicios
El principio de diseo de composicin
de servicio ayuda a determinar cmo
llevar a cabo una separacin de
intereses en favor de la orientacin a
servicios.
Los servicios que resultan de la
descomposicin de la lgica ilustrada
solucin se montan para resolver el
Problema A. Sin embargo, el beneficio
ltimo y estratgico viene con la
posibilidad de recomponer
continuamente estos servicios para
ayudar a resolver los problemas
adicionales en el futuro.

57

6/23/2014

Principales estndares para SOA


Estndares
de Semntica

Estndares de SOA y Web Services


Business Services: Service Offerings and Components
e.g. Book Flight, Low Fare Search, Update PNR Data

Evolving Industry Semantics


Service Interaction Components (WSRP, JSR 168)
Service Orchestration (WS-BPEL)

Service Description (WSDL, RAS)


XML (Infoset, Namespace, Schema)
Network Protocol (HTTP, SMTP, Other)

Management

Service Invocation & Messaging (WS-I, SOAP)

Transactions (WS-Tx)

Service Discovery (WSIL, UDDI, RAS)

Security (WS-SEC)

Estandares de Infraestructura

(ACORD, SWIFT, FIXML, OTAXML, UCCNet)

Roadmap de SOA: Plan para adoptar SOA


Meta de SOA
Retorno de Mercado a travs de la transformacin: Tiempo ms rpido a
produccin, disminucin de costos, diferenciacin competitiva

Ingresos y Utilidades

Retorno de mercado por transformacin

Visin Estratgica

Adopcin Incremental

Time

Dos Perspectivas primarias del Roadmap

Visin estratgica
Definicin de Direccin del negocio y de TI que pueden ser usados como una gua para la toma de decisiones, venta interna
organizacional y estndares de adopcin

Planes de Proyectos
Proyectos de implantacin para alcanzar las necesidades inmediatas de los motores de negocio actuales

58

6/23/2014

Roadmaps: Construyendo planes

Imperativos y metas de negocios

Dominio de Capacidad

Servicios de
Funcin de
Negocios
Servicios de
Informacin
Servicios
comunes de TI
Servicios de
Infraestructura
Discreto

Integracin
Parcial

Integracin
de la Empresa

Colaboracin de los
Socios

Colaboracin
Dinmica delos
socios de negocios

Scope of Services

Determinar
estado futuro

Evaluar estado
actual

Identificar las
capacidades
requeridas e
iniciativas

Desarrollar los
Roadmaps

Service Integration Maturity Model (SIMM)

Silo
Vista de Negocio Orientado a
Funciones

Integrado

Componentizado

Servicios

Servicios
Compuestos

Servicios
Virtualizados

Servicios
Dinmicamente
Re-Configurables

Orientado a
Funciones

Orientado a
Funciones

Orientado a
Servicios

Orientado a
Servicios

Orientado a
Servicios

Orientado a
Servicios

Gobernabilidad de
TI Ad hoc

Gobernabilidad de
TI Ad hoc

Gobernabilidad
emergente de SOA

Alineamiento de la
gobernabilidad de
TI y SOAt

Alineamiento de la
gobernalibilidad de
TI y SOA

Alineamiento de la
Gobernabilidad de
TI y SOA

Modelamiento
Orientado a
Objetos

Desarrollo basado
en componentes

Modelamiento
orientado a
servicios

Modelamiento
Orientado a
Servicios

Modelamiento
orientado a
Servicios

Modelamiento
orientado a la
Gramtica

Aplicaciones Mdulos

Objetos

Componentes

Servicios

Integracin de
procesos via
servicios

Integracin de
procesos via
servicios

Ensamblaje
dinmico de la
aplicacin

Arquitectura
Arquitectura Monoltica

Arquitectura por
capas

Arquitectura por
componentes

SOA Emergente

SOA

SOA habilitado por


Grilla

Arquitectura
reconfigurable
dinmicamente

Plataforma
Especfica

Plataforma
Especfica

Plataforma
Especfica

Plataforma
Especfica

Plataforma
Neutral

Sensar y responder
dinmicamente

Organizacin Gobernabilidad de
TI Ad hoc

Diseo y anlisis
Mtodos estructurado

Plataforma
Infraestructura Especfica

Nivel 1

Nivel 2

Nivel 3

Nivel 4

Nivel 5

Nivel 6

Nivel 7

59

6/23/2014

Consideraciones de adopcin de SOA


Motores del Negocio

Acelerar el tiempo al mercado


Reducir costos
Incrementar ingresos
Reducir riesgos y exposiciones

Preparacin Organizacional
Soporte y auspicio ejecutivo
Habilidades

Arquitectura y entorno actuales


Construccin y Produccin
Grado de Heterogeneidad

Preparacin operacional

Habilidad para monitorear y gestionar las operaciones actuales


Integracin de funciones de monitoreo en ambientes de produccin

Mentoring
Services

SOA: Conceptos de tecnologas

60

6/23/2014

SOA: Conceptos de tecnologas

XML - Historia
XML proviene de un lenguaje inventado por IBM en los aos
setenta, llamado GML (Generalized Markup Language)
Este lenguaje gust a la ISO, por lo que en 1986 trabajaron para
normalizarlo, creando SGML (Standard Generalized Markup
Language), capaz de adaptarse a un gran abanico de
problemas. A partir de l se han creado otros sistemas para
almacenar informacin.

61

6/23/2014

XML - Introduccin
Es un lenguaje de marcas desarrollado por el World Wide Web
Consortium (W3C) utilizado para almacenar datos en forma
legible.
Es la forma ms comn de representacin de datos para SOA.

XML - Introduccin
XML es metadata.
Un document XML contiene
la data y XML metadata que
describe la data.

62

6/23/2014

XML Conceptos Bsicos


Como HTML, XML fue desarrollada por la W3C
Como con HTML, XML esta compuesto por elementos.
A diferencia del HTML, los elementos del XML no son
predefinidos.
Como resultado, los elementos pueden personalizables.
HTML: <b>Jhon</b>
XML: <name>Jhon</name>

XML Conceptos Bsicos


Document Type Definitions
(DTD)
XML Schema Definition
Language (XSD)
XML Style Sheet Language
Transformation (XSLT)
XML Query Language (
Xquery)
XML Path Language (Xpath)

63

6/23/2014

Recursos Recomendados
Service-Oriented Architecture Tomas Erl
www.whatissoa.com
www.soa-manifiesto.org
www.soa-manifiesto.com

64

Вам также может понравиться