Está en la página 1de 1

Estandarizacin de los Contratos de Servicios

"Los servicios dentro de un mismo inventario cumplen con los mismos estndares de diseo de contratos." Cuando un servicio es implementado como un Servicio Web, el contrato del servicio puede estar compuesto por una definicin WSDL y mltiples definiciones de Esquemas XML y polticas, al igual que con documentos complementarios, tal como un ANS.

Bajo Acoplamiento de los Servicios


"Los contratos de los servicios imponen requerimientos de bajo acoplamiento con el consumidor y son ellos mismos, desacoplados de su entorno." Un contrato de servicio, que se deriva de su ambiente subyacente, puede terminar formando tipos negativos de acoplamiento sobre las partes del ambiente.
el contrato del servicio y cualquier lgica subyacente pueden estar acoplados con un proceso de negocio padre contrato del servicio si el contrato del servicio est acoplado con la lgica del servicio, ste puede asumir caractersticas de acoplamiento relacionadas con la lgica

Abstraccin en los Servicios


"Los contratos del servicio slo contienen la informacin esencial, y la informacin sobre los servicios se limita a lo que es publicado en los contratos de servicio." Cuando se determina cul informacin debera abstraerse acerca de un servicio, se utiliza para categorizar los metadatos del servicio en distintas categoras. La aplicacin de este principio puede afectar la abstraccin de cada uno de esos tipos de meta informacin de manera diferente.

Reutilizabilidad de los Servicios


"Los servicios contienen y expresan lgica agnstica y pueden ser ubicados como recursos empresariales reutilizables." Dentro de la orientacin a Vendedor de Productos servicios, la reutilizabilidad Comerciales representa una ciclo de vida Paso 1 caracterstica primaria para la Paso 2 entrega de y central del diseo Paso 3 un producto ... comercial que est ligada a la meta de alcanzar un RDI (ROI) repetido para los servicios agnsticos. Este principio combina tcnicas del diseo de productos comerciales tradicionales con la entrega tradicional de proyectos empresariales.
productos comerciales para mercado de masa y con alto potencial de reuso

Autonoma de los Servicios


"Los servicios ejercen un alto nivel de control sobre su ambiente de ejecucin subyancente en tiempo de ejecucin." Entre ms control tiene un servicio sobre su implementacin subyacente en tiempo de ejecucin, ms predecible ser su comportamiento en tiempo de ejecucin. Reducir el acceso compartido a los recursos e incrementar el aislamiento fsico del servicio pueden incrementar la habilidad del servicio para funcionar autnomamente.
Servicio A Servicio A Servicio B Servicio C

Carencia de Estado en los Servicios


"Los servicios minimizan el consumo de recursos posponiendo, segn la necesidad, el manejo de la informacin acerca de los estados." Dependiendo de la naturaleza de su lgica y su rol dentro de una composicin, un servicio puede necesitar la transicin a travs de diferentes estados y puede necesitar de manejar diferentes tipos y cantidades de datos del estado.
datos del context data contexto reglas del context rules contexto

Descubribilidad del Servicio


"Los servicios son complementados con metadatos comunicativos con los cuales pueden ser efectivamente descubiertos e interpretados. De los cuatro tipos de meta informacin del servicio, los datos funcionales y de calidad del servicio son ms relevantes cuando se enfocan en la calidad de las comunicaciones de los servicios, para lograr los propsitos de descubribilidad e interpretabilidad.

Compuestabilidad de los Servicios


"Los servicios son participantes efectivos de las composiciones, sin importar el tamao y la complejidad de la composicin." La orientacin a servicios es un paradigma de diseo con un enfoque distinto para realizar una separacin de intereses.

Empresa Tradicional
ciclo de vida para la entrega de un producto de desarrollo a la medida Paso 1 Paso 2 Paso 3 ...

Funcional

Tecnologa

Funcional

Tecnologa

Servicio

Servicio

Programtica

Calidad del Servicio

contexto context sesin session


stateful con estado

Programtica

Calidad del Servicio

WSDL

Esquema XML

WS Policy

Acuerdo de Nivel de Servicio (ANS)

contrato tcnico del servicio Web contrato del servicio

proceso de negocio padre

la lgica del servicio puede estar acoplada con el contrato del servicio

el contrato del servicio puede estar acoplado con la lgica del servicio

la lgica del servicio ser implementada (y por lo tanto, acoplada) con la tecnologa propietaria del vendedor

aplicaciones a la medida para usuarios empresariales espec cos y con poco o ningn potencial de reuso

negocio activo active


passive pasivo

sin estado stateless

contrato del servicio optimizado servicio

detalles de diseo e implementacin del servicio

Este principio impulsa el enfoque del contrato primero para la entrega del servicio, por el cual los contratos se desarrollan de forma personalizada (antes del desarrollo de la lgica del servicio) de acuerdo con los estndares de diseo que aplican a todos los servicios dentro de un inventario dado de servicios.
Importar

lgica del servicio miembros de la composicin del servicio WS J2EE diseador del potencial programa consumidor del servicio

.NET

Este principio aboga por el ocultamiento deliberado de metadatos del servicio, de tal forma que una mnima cantidad de informacin sobre un servicio es accedida por el mundo exterior.

La aplicacin de este principio soporta un proceso estandarizado de descubrimiento del servicio y de interpretacin dentro de una organizacin a travs del uso de un registro de servicios como el repositorio central de los metadatos del servicio.
1 El humano busca en el registro de servicios para localizar un servicio con la funcionalidad deseada. contiene meta informacin acerca de cada servicio en el inventario de servicios, al igual que un apuntador a cada contrato de servicio inventario de servicios

Los servicios capaces de direccionar problemas agnsticos o transversales pueden ser reutilizados para solucionar mltiples problemas.
Problema Pequeo Problema Pequeo

Problema Grande A

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

los problemas pequeos, en conjunto, representan el problema grande

tecnologa del vendedor

Paso 1: Personalizar el diseo del contrato del servicio Web.

Paso 2: Importar el contrato del servicio Web en un ambiente de desarrollo.

Paso 3: Construir la lgica de la solucin subyacente, como soporte del contrato pre-de nido del servicio Web.

la lgica del servicio puede estar acoplada con mltiples servicios y esto puede necesitar de la composicin implementacin

la lgica del servicio puede estar acoplada con varios recursos que hacen parte del ambiente completo de implementacin

Las polticas y los esquemas estandarizados se pueden centralizar, de tal forma que, una definicin representa un conjunto oficial de aserciones de polticas o de tipos complejos, que pueden ser referenciados por mltiples definiciones WSDL. La centralizacin de los documentos del contrato del servicio es, por s misma, un estndar de diseo Politica Seguridad.xml relacionado con el contrato.

Politica Reclamaciones.xml

El acomplamiento Logica-a-contrato se considera una forma positiva de acoplamiento porque representa la creacin independiente de un contrato que est desacoplado del ambiente del servicio. Los programas Los diseadores de los consumidores de servicios consumidores del servicio requieren de acoplarse pueden no ser consciencon un contrato de servicio. tes del hecho de consumidores del servicio Como resultado, ellos que la dependencia heredan cualesquiera formas del contrato, que su prode acoplamiento positivo grama est formando, est o negativo que residan acoplada negativamente. en el contrato del servicio. Esto puede originar muchas formas de acoplamiento indirecto o no intencional.
contrato del servicio

Los procedimientos de control de acceso, por consiguiente, se pueden convertir en un requerimiento, el cual necesitara ser orientado sobre un nivel organizacional, a travs de la introduccin de procesos nuevos o modificados.

especi caciones de diseo, cdigo fuente, etc.

Posicionar los servicios como recursos empresariales reutilizables se relaciona con el patrn de diseo Centralizacin de la Lgica, el cual indica que cada servicio reutilizable debe ser el nico punto de acceso para el cuerpo de la lgica que La Centralizacin de la Lgica ste representa.
1

estado primario
La Empresa Orietada a Servicios
ciclo de vida de la entrega de servicios Paso 1 Paso 2 Paso 3 ...
Servicio A Servicio B Servicio C Servicio A Servicio B Servicio C

condiciones primarias del estado

tipos de informacin del estado

tipos de datos del contexto

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

Problema Pequeo

asegura que los consumidores del servicio slo tienen un punto de acceso para cualquier cuerpo dado de lgica
inventario de servicos para una empresa espec ca con alto potencial de reutilizacin

servicio con capacidades de procesamiento redundantes para factura

La gestin de datos del estado consume recursos del sistema y puede resultar en un gasto significativo de recursos cuando mltiples instancias de los servicios son invocadas concurrentemente, especialmente con servicios agnsticos que estn involucrados en la automatizacin de mltiples procesos de negocios. Por lo tanto, la delegacin temporal y el aplazamiento de la gestin del estado pueden incrementar la escalabilidad del servicio y soportar un amplio rango de re-utilizacin y recomposicin en el tiempo.
datos de los estados en memoria

registro de servicios

unidades de la lgica de la solucin, donde cada una direcciona (soluciona) un problema pequeo

ProcFac

dueos del servicio diseadores del programa consumidor del servicio servicio o cial de entidad Factura Factura consumidor del servicio

acceso abrierto

acceso controlado

sin acceso

lgica subyacente del servicio

La aplicacin de este principio puede convertir, efectivamente, a un servicio en una caja negra, donde la nica informacin que est disponible acerca del servicio es la que est publicada en su contrato (la cual puede acompasarse con lo que tambin est publicado en un registro de servicio). Por lo tanto, el contenido del contrado del servicio, en s mismo, es el punto primario de enfoque para el cual existen diferentes niveles de abstraccin.
A

La Centralization del Contrato asegura que los consumidores de servicios slo acceden a un servicio a travs del contrato publicado del servicio

Cuando se combinan, la Centralizacin de la Lgica y del Contrato, resultan en un inventario de servicios altamente estandarizado y normalizado como soporte completo para maximizar el potencial de reutilizabilidad y el bajo acoplamiento de de los consumidores.

La autonoma de los servicios inviduales es especialmente importante para la efectividad de las composiciones del servicio. Debido a que un servicio que compone a otro automticamente pierde autonoma, el nivel de autonoma que un controlador de composicin puede aadir, a menudo, est limitado a los niveles de autonoma colectiva de los miembros de su composicin.
nivel tpico de autonoma bajo servicio de tarea A

el humano dueo de un programa plani cado para ser consumidor del servicio

servicio descubierto

se trasladan los datos del estado desde la memoria hacia la base de datos

Ejecutar Proyecto Lab Iniciar

Los datos del estado son aplazados comnmente en tiempo de ejecucin, permitiendo que un servicio permanezca activo y sin estado mientras ocurren otros procesamientos.
Formulas AgregarBase Obtener Simular

Proceso Reclamos.wsdl

Reclamos.wsdl

Validar Reportes.wsdl

Reportes.wsdl

proceso de negocio padre

Encabezado Reclamos.xsd

Detalle Reclamos.xsd

Encabezado Reporte.xsd

Detalle Reporte.xsd
miembros de la composicin del servicio

La proliferacin del acoplamiento negativo es indeseable porque da lugar a un inventario de servicios frgil e inflexible, como recuerdo de anteriores arquitecturas de integracin.
tecnologa de vendedor WS J2EE

detallado

conciso

optimizado

Los procesos de entrega normalmente necesitan cambiarse como resultado de la incorporacin consistente de este principio, de No construiremos nueva tal manera que aseguren que lgica para procesamiento de facturas porque se la Centralizacin de la Lgica requiere que utilicemos el servicio existente siempre sea de Factura. respetada y que el potencial de reutilizacin de los servicios Buscaremos en el inventario existente agnsticos sea para con rmar que no existe ningn servicio que proporcione maximizado. esta lgica. Luego construiremos El obstculo ms grande para alcanzar este principio est asociado normalmente con superar la resistencia cultural a estos cambios.
un servicio PO de tal manera que pueda ser reutilizado por otros en el futuro.

A nuestro equipo de proyectos se le requiere automatizar un nuevo proceso de negocio que involucra la funcionalidad de facturacin que ya existe dentro del servicio Factura.

servicio de entidad A

servicio de entidad B autonoma independiente

base de datos de estados

activo y sin estado

autonoma dependiente A nuestro equipo de proyectos se le requiere automatizar una tarea de procesamiento PO cuya lgica de solucin no existe an. alto servicio de utilidad A servicio de utilidad B alto potencial de autonoma

lgica del servicio

Los estndares de diseo del contrato pueden afectar y dar forma a muchas definiciones de elementos y a la estructura completa de los documentos WSDL, Esquema XML y definicin de polticas.

.NET

<de nitions> <types> ... </types> <message> <part/> ... </message> <portType> ... </portType> ... </de nitions>

<Policy> <ExactlyOne> <All> assertions ... </All> <All> assertions ... </All> </ExactlyOne> ... </Policy>

Como resultado de este principio, los diseadores del programa consumidor del servicio puede no ser conscientes que un servicio est componiendo a otros.

Existen diferentes niveles de carencia de estado que un diseo de servicio puede alcanzar, dependiendo de la frecuencia del aplazamiento del estado y de la cantidad de los datos del estado que estn siendo aplazados. Estos niveles, normalmente, son especficos para cada capacidad del servicio.
preinvocacin activo + con estado comienza pausa contina pausa naliza participacin participacin participacin participacin participacin en actividad en actividad en actividad en actividad en actividad postinvocacin

Una meta primordial de este principio es habilitar un amplio rango de miembros del equipo de proyectos para llevar a cabo efectivamente el proceso de descubrimiento y no limitarlo a aquellos con experiencia tcnica. Tanto los contratos de los servicios como los registros dentro de un registro de servicios contienen meta informacin con caractersticas de descubribilidad e interpretabilidad. Mucha de esta informacin se relaciona y origina con el documento del perfil del servicio, el cual pudo haber sido creado y mantenido desde que el servicio fue conceptualizado por primera vez durante la fase de modelado del servicio (ver Captulo 15 y Apndice B).
contiene servicios con contratos que son idealmente descubribles e interpretables, independientemente del

El humano puede recuperar luego el contrato del servicio correspondiente. Basado en su nivel de interpretabilidad, el humano puede escoger o descartar este servicio. Si el servicio no tiene las capacidades necesarias, pero an proporciona un contexto funcional adecuado, ste puede ser identi cado como la ubicacin en la cual debe agregar la funcionalidad requerida (como una extensin para el servicio).

Basado en el nivel de rastreo de la descubribilidad e interpretabilidad del registro de servicios, el humano es capaz de descubrir e identi car un servicio potencialmente capaz de cumplir con sus requirimientos.

C Esto requiere de un para solucionar el medio efectivo de desproblema grande, las unidades son composicin de la ensambladas en una con guracin lgica de la solucin A F espec ca que les y re-componerla permite llevar a cabo su lgica de repetidamente para solucin de forma solucionar nuevos B E D G H coordinada problemas. Este principio est relacionado principalmente soluciona el Problema Grande A con la habilidad del servicio para actuar como un miembro efectivo de una composicin, de tal manera que pueda soportar la realizacin de nuevos requerimientos de negocio que puedan ser completados por el ensamble de composiciones de servicios.

contrato del servicio

El potencial de compuestabilidad de un servicio se incrementa y se vuelve importante incrementalmente, mientras ms servicios estn disponibles dentro de un inventario de servicios dado.

Proyecto de Desarrollo # 20

G L P Z A F Q R K P B G L Q V C H M R W D I N S X E J O T Y

Proyecto de Desarrollo # 21

A D

Proyecto de Desarrollo # 22

W K R S U

inventario de servicios

Un aspecto clave de este principio y de las composiciones de servicios, en general, es que los problemas individuales son, de hecho, solucionados por las capacidades, porque son las capacidades las que estn compuestas dentro de una Servicio A (1) Programa composicin de servicios. Consumidor Capacidad A
de Servicios A

(6)

<schema> <element > <complexType> <sequence> <element .../> <element .../> <element .../> </sequence> </complexType> </element> ... ... </schema>

reas afectadas por la estandarizacin

Este principio se relaciona con el patrn de Centralizacin del Contrato, el cual establece que el contrato del servicio ser el nico medio para acceder a la lgica y recursos del servicio.

implementacin

La proliferacin del acoplamiento positivo es deseable para permitir la evolucin de las implementaciones del servicio, sin impactar a los consumidores del servicio.

Captulo 6: Contratos del Servicio (Estandarizacin y Diseo)

Captulo 7: Acoplamiento del Servicio (Dependencias Intra-Servicio y Consumidor)

Esto coloca un gran nfasis en la fiabilidad y la previsibilidad de un servicio, a pesar de lo que pueda ser encapsulado (lo X T cual tambin plantea cuestiones en cuanto a lo que debera publicarse en los ANS del servicio). Captulo 8: Abstraccin del Servicio (Ocultamiento de Informacin y Tipos de Meta Abstraccin)

Captulo 9: Reutilizabilidad del Servicio (Diseo Comercial y Agnstico)

Captulo 10: Autonoma del Servicio (Lmites y Control del Procesamiento)

(2) (3) (4) (5) (7)

by Thomas Erl

SOA: Principles of Service Design


www.whatissoa.com www.soaprinciples.com www.soapatterns.com www.soaspecs.com www.soaglossary.com

activo + sin estado

registro de servicios

inventario de servicios existe como una extensin de la infraestructura que soporta el descubrimiento y la interpretacin de los servicios dentro de un
Servicio B Capacidad A Capacidad B Servicio C Capacidad A Capacidad B

El diseo exitoso de la composicin de servicios se basa en el potencial de compuestabilidad colectiva de cada miembro de la composicin.
Servicio D Capacidad A Capacidad B

www.soabooks.com Derechos reservados 2008 SOA Systems Inc. www.prenhall.com www.soasystems.com ISBN: 0132344823, Prentice Hall www.soaschool.com (compra este pster en www.soaposters.com) www.soamag.com Traducido por: Ivn Guarn y Sandra Barn

Prentice Hall Service-Oriented Computing Series Captulo from Thomas Erl (Aplazar la Gestin11: Carenciayde Estado del Servicio Estado) del Estado Disear la Carencia de

repositorio de datos del estado

Captulo 12: Descubribilidad del Servicio (Interpretabilidad y Comunicacin)

Captulo 13: Compuestabilidad del Servicio (Disear Miembro de Composicin y Composiciones Complejas)