Está en la página 1de 7

Mejores Prcticas SOA, Estandares y

Gobernabilidad
An Oracle White Paper
Feb 2009

Mejores Prcticas SOA, Estndares y Gobernabilidad

En esta era, las aplicaciones empresariales han comenzado la transicin de las aplicaciones guiadas por las
interfaces de usuarios a arreglos de servicios interoperables que de hecho son tambin reusables. Estos
servicios representan funciones de negocio cuyo fin es la de poder ser ensamblados de forma tal que
representen una nueva aplicacin.
Una de las mayores ventajas de tal cambio en la arquitectura de las aplicaciones es que el servicio puede
ser ahora reutilizado en la evolucin y desarrollo de un proceso de negocio. Los usuarios necesitan
entender que tal acercamiento a la construccin de aplicaciones compuestas y procesos de negocios no
funcionara en la ausencia de una plataforma de cumplimiento de estndares para la construccin de tales
servicios.
La interoperabilidad puede ser un reto debido al hecho de que los protocolos de servicios de Web para
tales actividades como mensajera, optimizacin y confiabilidad pueden ser un tanto complicados. Los
servicios pueden, de hecho, residir a travs de diferentes plataformas. Sin una plataforma que haya sido
diseada alrededor de estndares y con la intencin de lograr interoperabilidad, pudiera no ser posible
armar rpidamente los servicios con la intencin de lograr cumplir con los requerimientos del negocio.
Un tipo de middleware desarrollado por Oracle, Oracle Fusion Middleware, ha sido construido basado
en una infraestructura comn. Ha sido diseado para utilizar estndares de industria para todas las
capacidades de Service Oriented Architecture (SOA). Protocolos de calidad de servicio y optimizacin
de mensajes son provistos como un medio de mejorar funcionalidad. Estas herramientas pueden ser
utilizadas fuera de la lgica del negocio al igual que la estrategia de implementacin de los servicios.
El negocio tambin se beneficia de los estndares que describen no slo como las aplicaciones cooperan,
pero tambin como son estas construidas. A travs de la utilizacin de estndares de SOA, los negocios
pueden escapar de las tranquillas de las plataformas, mientras los desarrolladores podrn ser mas
rpidos con nuevas destrezas fcilmente transferibles.
En corto tiempo, la prxima generacin de estndares de desarrollo estar enfocada en dos reas
principales: el proveer un modelo comn para el control de la relacin entre los servicios; y permitir a los
desarrolladores implementar servicios web robustos utilizando objetos Java comnmente utilizados.
Estndares

An cuando ha habido una explosin de propuestas de servicios web, la plataforma estndar de SOA est
construida en una plataforma basada en las siguientes tres reas: implementacin; mensajera; y
descripcin y descubrimiento de servicios.
Mensajera

De manera que los servicios puedan comunicarse entre ellos, los mensajes deben ser codificados de
acuerdo a las especificaciones SOAP 1.1 y SOAP 1.2 (SOAP es el acrnimo para Simple Object Access
Protocol, para el intercambio de informacin estructurada en la implementacin de servicios de WEB).
Los mensajes son luego intercambiados a travs de HTTP. Los estndares SOAP conforman la fundacin
de interoperabilidad.
_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad2

Dos estndares vitales que han sido utilizados como el mecanismo para ayudar en las capacidades de
compresin y eficiencia dentro de los mensajes SOAP que incluyen contenido binario son: MTOM
(Message Transmission Optimization Mechanism) y SOAP con anejos.
La fbrica de servicios de Oracle hace uso de ambos optimizadores como un medio para asegurar que los
servicios estn disponibles para comunicar de la manera ms eficiente posible. Como SOAP provee slo
lo bsico en el intercambio de mensajes, mucha ms data es necesaria para proveer las directrices en la
eventualidad de intercambio asincrnico. WS-Adressing define la cabecera de los mensajes los cuales
son luego aplicados al mensaje SOAP de forma que se pueda determinar que respuestas pueden mejor ser
enviados mientras que simultneamente presentan la correlacin entre los mensajes.
Es vital proveer ciertas garantas de que los mensajes asincrnicos sern entregados al servicio que los ha
invocado. Oracle ha trabajado junto a los emisores de estndares OASIS en ser el co-autor y en dirigir la
convergencia de la industria alrededor del protocolo de WS-Reliable Messaging o WS-RM el cual es
utilizado por los servicios como mecanismo que provee las garantas alrededor de la entrega de los
mensajes y el orden en el que los mensajes son procesados.
Otro importante componente de los servicios web sobre todo para las aplicaciones empresariales es
Seguridad. Oracle es una de las compaas que a liderado los trabajos en muchos de los comits de
estndares alrededor de la seguridad en adicin a la federacin de la identidad va la utilizacin de los
servicios web. Los mensajes SOAP son particularmente protegidos va los estndares de WS-Security,
los cuales son ahora utilizados como medio en la definicin de la manera en que la encriptacin,
autenticacin y firmas digitales sern utilizados como mecanismos para asegurar las comunicaciones.

Figura 1: Resumen de la arquitectura WS-Security en OracleAS


-----------------------------------------------------------------------------------------------------

Metadata para la Descripcin y Descubrimiento de los Servicios

Oracles Service Fabric utiliza metadata estndar para describir los mensajes y protocolos usados por los
servicios web. Estas metadata estndar son utilizadas por las aplicaciones y las infraestructuras para
garantizar que los servicios puedan interoperar basado en los requerimientos de los servicios colocados
_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad3

por los usuarios. Los ms importantes estndares de metada son: WSDL, WS_Policy,
WS_MetadaExchange y UDDI.
WSDL, describe el mensaje que un servicio puede recibir y enviar. Es el ms bsico lenguaje de contrato
utilizado para describir la funcionalidad ofrecida por un servicio.
WS_Policy, describe la calidad de las caractersticas del servicio y los requerimientos asociados a este
servicio. Tpicamente las polticas describen los requerimientos de seguridad de un servicio, la
optimizacin soportada por un servicio tal como MTOM y si un servicio utiliza WS-ReliableMessaging.
Oracle Web Services Policy Manager provee las herramientas para construir y apoyar las polticas para
Oracle Fusion Middleware.
WS-MetadataExchange es un protocolo de handshake que permite al usuario el obtener documentos
WSDL y WS_Policy asociados a un servicio.
UDDI es un modelo utilizado para el registro de los servicios web. Provee un repositorio comn de
metadata relacionado a los servicios que pueden ser utilizados para descubrir que servicios estn
disponibles y para seleccionar los servicios que estn disponibles para ser utilizados para la construccin
de nuevos servicios compuestos y procesos de negocio. Oracle Service Registry representa la
implementacin de UDDI bajo Oracle Fusion Middleware.
Servicios de Implementacin

JAX-RPX y JAX-WS son los estndares definidos por la comunidad de Java que describe como los
desarrolladores de Java pueden crear servicios Web. JAXRPC es el estndar que es utilizado en J2EE 1.4;
JAX-WS, como muchos otros de las nuevas especificaciones de JavaEE eliminan mucha de la complejidad
asociada con el desarrollo de servicios Web. Ejemplo de esto es que el JAX-WS provee un modelo simple
para la implementacin de la lgica del negocio y exponen el contrato como una interfaz WSDL
utilizando anotaciones en el cdigo implementado. Al apalancarse en JAX_WS, los desarrolladores
construyen servicios portables utilizando habilidades que pueden ser ampliamente aplicados a travs de
muchos productos.

Figura2: Annotated Java Class for Web Services

_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad4

Mejores prcticas SOA

SOA es mirado como el componente clave para mejorar la eficiencia de la tecnologa de informacin.
Pero para poder implementar SOA en un negocio, se requiere de tener mucho ms que manejo de la
tecnologa. Es esencial tener habilidades en las prcticas gerenciales.
Las implementaciones de Service Oriented Architecture y las arquitecturas empresariales se definen como
independientes de las implementaciones de tecnologa. Con este drstico cambio en el negocio, es
importante buscar nuevas maneras de estructurar los negocios mientras se mantiene la integridad de TI.
La clave para lograr esto es a travs de la identificacin de maneras de definir y desarrollar arquitecturas tal
como SOA.
Gobernabilidad

Debido a los numerosos issues y retos que existen dentro de la industria de la computacin, el rol de TI
ha sido drsticamente alterado. En esta era, TI tiene que reaccionar de manera rpida y eficiente de
manera que permita a las transacciones de negocio ocurrir en tiempo real. TI ha sido forzado a manejar y
disear parte de una compleja y altamente integrada arquitectura empresarial. Lo que esto significa es que
los lmites entre el lado del negocio de una operacin y el lado de TI han quedado borrosos.
Gobernabilidad provee una estructura que apoya los objetivos del negocio de clientes a un nmero de
niveles, incluyendo estrategia, funcionamiento, y operaciones. Gobernabilidad provee las reglas, las
mtricas, los procesos, al igual que las estructuras organizacionales que son necesarias para una
planificacin efectiva, direccin, toma de decisiones y control de los compromisos de SOA como un
mecanismo de lograr las necesidades de negocio de los clientes al igual que los retos de sus metas. Un
modelo de gobernabilidad SOA deber definir que tiene que ser hecho, como hacer para cumplir, al igual
que definir como deber ser medido efectivamente.
A continuacin alguna de las ms importantes preguntas que ayudan en la definicin de una buena
estructura de gobernabilidad en los compromisos SOA:

1. Cules son las ventajas de los clientes en tal compromiso? Cules son las expectativas y
objetivos del cliente?
2. Cules son los roles, procedimientos, estructuras y responsabilidades que ya existen en el
sitio del cliente para la planificacin, toma de decisiones y direccin de TI?
3. Como pueden ser desarrolladas las habilidades y el liderazgo?
4. Cules son las guas y principios necesarios para la optimizacin del alineamiento de TI y el
negocio?
5. Cual sera una buena forma de estructurar el negocio y a TI de manera que ambos puedan
interactuar manteniendo la consistencia a la vez que se mantenga la flexibilidad suficiente
para poderse adaptar a los cambios de los servicios que actualmente ocurren?
6. Que niveles de servicio, descripcin y estandarizacin de definicin de servicios es
apropiado?
_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad5

7. Como los servicios y los proveedores de servicios pueden ser mejor medidos y
controlados? Quien debe monitorearlos, autorizarlos y definir los cambios a los servicios
que existen?
8. Como se definirn las estrategias de identificar las fuentes de los servicios?
9. Cules son los actuales problemas? Como ser el cliente ayudado a resolverlos?

Parece ser que un modelo de gobernabilidad formalizado y aceptado es la clave para el xito de los
objetivos del negocio. Entonces, es recomendable el establecimiento de las funciones de gobernabilidad
en los compromisos SOA.
El modelo de gobernabilidad de manera simultnea, deber lograr el requerimiento fundamental de
adaptacin incremental, mientras se enfoca en utilizar las lecciones aprendidas en cada paso como un
medio de definir y ejecutar el prximo paso. De manera que el modelo de gobernabilidad sea un xito, un
nuevo cuerpo de gobernabilidad debe ser creado para la implementacin y adaptacin de SOA. Para lograr
un alto grado de aceptacin, es recomendable utilizar la organizacin existente, trabajando junto a ellos
para adaptarlos a los compromisos de SOA
Principios de Gobernabilidad

La definicin de una estrategia de direccin del cliente es necesaria para lograr el xito en el desarrollo de
un apropiada implementacin SOA, mientras de manera simultnea se mantiene foco sobre las
necesidades del negocio. Un firme entendimiento de ambos, los objetivos del negocio y la estrategia, son
necesarios tanto para TI como para el lado operativo del negocio.
Los principios de gobernabilidad y las guas, son necesarias para formar las bases primarias de cualquier
decisin mayor. Tales principios son necesarios para darle forma a las reas de solucin, mientras se
definen las maneras en el cual una colaboracin efectiva ocurre. Entonces, los principios de
gobernabilidad debern ser bien entendidos por aquellos que laboran al nivel gerencial ejecutivo de la
empresa. Una de las guas primarias gobernabilidad. Los dos principales son:

1. Gobernabilidad Centralizada. Esta es mejor para la empresa. El consejo de


gobernabilidad est representado por miembros del nivel de servicio. Se encuentran
tambin expertos sobre algunas materias los cuales son capaces de comunicarse con las
personas responsables de la implementacin de componentes claves de tecnologa de la
solucin. Este consejo revisar cualquier adicin o eliminacin a la lista de servicios, al
tiempo que revisaran los cambios a servicios existentes y autorizaran cualquier cambio de
implementacin necesario.

2. Gobernabilidad Distribuida. Este modelo trabaja mejor en los equipos distribuidos.


Cada unidad de negocio tendr el control de cmo se proveern los servicios dentro de
su propia organizacin. Entonces, un acercamiento de servicio funcional (por rea
_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad6

funcional del negocio) es necesario. Guas y estndares principales son provistos a los
diferentes equipos por el comit central.
.
Los principios bsicos (o principales) para el diseo de la arquitectura y de la definicin de los servicios
pueden ser extrados de estas guas principales las cuales estn enfocadas en temas particulares. Tales
principios caracterizan el comportamiento intrnseco para el tipo de implementacin, mientras cubre las
guas principales y especificas de los principios de arquitectura del proyecto.
A travs de la posesin de un entendimiento complete de los principios de SOA, una ms sabia decisin
puede ser tomada con relacin a la aplicabilidad de SOA a los problemas de diseo. Tales principios
dirigen muchas de las caractersticas que son necesarias al disear un servicio. Cada una de las
caractersticas debe ser encontrada en uno o ms de los principios de diseo SOA el cual provee
integridad a los principios y a las caractersticas por igual.

Mejores Prcticas SOA, Estndares y Gobernabilidad


Feb 2009
Author: Wilson N. Lpez
Oracle Caribeean
270 Eurobank Building
PO Box 364145,San Juan 00936-4145
Phone: +1.787.999.3145
Fax: +1.787. 641.0460
oracle.com
Copyright 2007, Oracle. All rights reserved.
This document is provided for information purposes only and the
contents hereof are subject to change without notice.
This document is not warranted to be error-free, nor subject to any
other warranties or conditions, whether expressed orally or implied
in law, including implied warranties and conditions of merchantability
or fitness for a particular purpose. We specifically disclaim any
liability with respect to this document and no contractual obligations
are formed either directly or indirectly by this document. This document
may not be reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without our prior written permission.
Oracle, JD Edwards, and PeopleSoft are registered trademarks of
Oracle Corporation and/or its affiliates. Other names may be trademarks
of their respective owners.

_________________________________________________________________________________________
MejoresPrcticasSOA,Estndaresy
Gobernabilidad7

También podría gustarte