7/15/2012

WSO2 e Interoperabilidad, una Plataforma Middleware en Panamá


Hace algunas semanas realice un taller sobre la  plataforma middleware empresarial WSO2 en Panamá dentro de un proyecto de Interoperabilidad y Gobierno Electronico de alta escala que se esta desarrollando actualmente. WSO2 esta conformada por un amplio numero de componentes con nivel de madurez suficiente para ser considerado como modelo para introducir las disciplinas SOA, ESB y BRE en una organizacion. En este post, voy a compartir algunas apreciaciones relacionadas con el despliegue de estos componente. Para comenzar una pequeña introducción.


WSO2 Carbon es una plataforma middleware empresarial, 100%  OpenSource y basada en estándares empresariales, que permite a desarrolladores orquestar procesos de negocio, crear aplicaciones y desarrollar servicios;  utilizando WSO2 Carbon Studio y una amplia gama de servicios empresariales y  técnicos que se integran con legados, paquetes y aplicaciones de software  como servicio (SaaS). La plataforma WSO2 Carbon es una colección de componentes totalmente  independientes que pueden ser agregados o eliminados de una solución dinámicamente. Este comportamiento se logra mediante el uso del marco  de trabajo denominado Open Services Gateway Initiative (OSGi).

WSO2 Data Services
WSO2 permite la creacion de servicios de datos, conocidos como "Data Services" con un amplio espectro de posibilidades de conexion con diversas fuertes de datos como hojas de calculo, base de datos, entre otros. Con este componente podemos desplegar servicios SOAP y REST de una forma sencilla y elegante, sin grandes esfuerzos de desarrollo, sin embargo cuando requerimos implementar servicios de generación de UUID o correo electrónico; esta no es la mejor opcion.

WSO2 Rule Services
De igual forma, provee desde mi punto de vista unos de los mejores componentes que son los "WSO2 rules Services", conocidos como "Rule Services" o servicios de decision, una forma muy sencilla y elegante  de tomar reglas de negocio elaboradad mediante Drools y exponerlas como servicios de decisión. Drools es un motor de reglas de negocio que permite la gestion de reglas en un entorno multi usuario de manera controlada a traves de interfaces de usuarios amigables. WSO2 Business Rules Server ofrece la gestión de reglas de negocio para un entorno SOA sobre la base de una sólida plataforma de alojamiento de reglas de negocio. WSO2 Business Rules Server permite que las reglas de negocio sean encapsuladas en un lenguaje sencillo y directo, el cual es más familiar para los analistas de negocio.

WSO2 Governance Registry
Otro componente que recomiendo es la utilización del WSO2 gobernent que proporciona el nivel adecuado para soportar la gobernabilidad SOA (es obtener el máximo rendimiento del entorno SOA y asegurarse de crear servicios de alta calidad). Con este componentes, podemos: crear y mantener un conjunto de políticas SOA, permitir la aplicación de estas políticas en tiempo de diseño y permitir la aplicación de estas políticas en tiempo de ejecución.

Por ultimo, recomiendo la evaluación de la plataforma WSO2 por la sencillez y elegancia de gestión, la cual puede ser utilizada para acelerar una implementacion SOA organizacional.





Saludos;

Ley de Interoperabilidad Venezolana, una ley innovadora, creativa y actual

Actualmente, los intercambios de información entre las instituciones publicas de muchos países se están desarrollando sobre una amplia variedad de formatos, tipos e interacciones, lo cual ha impulsado el crecimiento y proliferación de practicas no estandarizadas que han contribuido con la desarticulación de los organismos responsables en la prestación de servicios al ciudadano.


En este sentido, el estado venezolano ha reconocido la responsabilidad de prestar servicios de interoperabilidad para garantizar la prestación de servicios públicos integrados mas eficientes para los ciudadanos. Esta ley garantizara la articulación de las instituciones publicas para responder a las necesidades de los ciudadanos, instituciones y el estado utilizando las tecnologías de informacion como principal medio.

En esencia, la ley garantizara el desarrollo de servicios de información adaptados a las necesidades de los ciudadanos y a los procesos institucionales, disminuyendo las dificultades de integración entre los sistemas de información presentes en el sector publico y privado.

En la Gaceta Oficial N °39.945 de fecha 15 de junio de 2012, fue publicado el Decreto N°9.051 mediante el cual se dicta el Decreto con Rango, Valor y Fuerza de Ley sobre el Acceso e Intercambio Electrónico de Datos, Información y Documentos entre los Órganos y Entes del Estado. El presente Decreto con Rango, Valor y Fuerza de Ley, tiene por objeto establecer las bases y principios que regirá el acceso e intercambio electrónico de datos, información y documentos entre órganos y entes del Estado, con el fin de garantizar la implementación de un estándar de interoperabilidad.

Desde este link se puede tener acceso a la ley:
http://www.cnti.gob.ve/images/stories/documentos_pdf/go_interoperabilidad.pdf

Como venezolano he aportado mi granito de arena en la conformación de esta ley, integrando en ella conceptos asociados a las disciplinas y estilos de arquitectura SOA, ESB y BPM. Entre los elementos de mayor importancia:

La Ley  incorpora diversas disciplinas y estilos de arquitectura de TI en su contenido.
La ley incorpora el concepto de servicio.
La ley incorpora conceptos relacionados con Gobernabilidad SOA.
La ley incorpora conceptos relacionados con Bus de Servicios.
La ley incorpora conceptos relacionados con Web Semántica y Nube de datos.

Saludos y felicitaciones al personal técnico y gerencial del Centro Nacional de Tecnologías de Informacion y al Centro Nacional de Innovación Tecnológica por la iniciativa y la contribución que han realizado por mejorar los servicios públicos en el Estado Venezolano. Una iniciativa creativa, innovadora y de valor!!!

Intalio y Bonita BPM en el Ecuador

Hace algunas semanas estuve de nuevo en Ecuador impulsado la utilización de las disciplinas BPM, SOA, ESB y BRE para la creación de organizaciones gestionadas por procesos. En esta oportunidad el Organismo de Acreditación Ecuatoriano (OAE) esta desarrollando los primeros pasos para cambiar su modelo de gestión funcional a uno orientado a la medición en tiempo real de indicadores que puedan mejorar sustancialmente sus procesos de decisión. El marco de arquitectura propuesto esta conformado por un conjunto de tecnologías que de forma integral permitirán que la institución pueda conformar un marco de interoperabilidad robusto, escalable y fiable.


De la experiencia obtenida en dicha consultoria, quise compartir con la comunidad algunas recomendaciones que pueden ser utilizadas en implementaciones a gran escala de proyectos BPM-SOA organizacionales; estas recomendaciones pueden ayudarlo a facilitar su comprensión.

Algunas recomendaciones para utilizar Bonita BPM e Intalio.
  1. Evite modelar los procesos sobre la premisa que el motor de procesos debe exponer servicios web. El motor de procesos debe orquestar servicios, pero no es recomendable utilizarlo como una plataforma para la creacion de servicios, como decimos en Venezuela "zapatero a su zapato".
  2. Utilice Data Services como medios para exponer servicios web relacionados con medios persistentes como base de datos, hojas de cálculos, archivos, entre otros.
  3. Utilice servicios "Rule Services" para gestionar sus reglas de negocio. Los Rule Services también son conocidos como servicios de decisión.
  4. Utilice un bus de servicios para integrar sus servicios de datos, reglas, integración o procesos mediante un enfoque de proxys.
  5. Es importante establecer una diferencia entre servicios de datos e integración. Los últimos generalmente son implementados en un bus de servicios.
  6. Establezca los "Process Services", servicios web que son expuestos por un motor de procesos como Bonita BPM o Intalio.
  7. Utilice correlaciones en sus procesos para tener control de las instancias que requiere ejecutar, sin embargo, recomiendo utilizar como maximo dos correlaciones por diagrama, esto evitara que los diagramas de procesos se extiendan en una sola representación, contribuyendo con una mejor comprensión.
  8. Divide y vencerás. tome los procesos y separelos en subprocesos independientes.
  9. Importe los procesos, con esta opciones no tendrá problemas con el acceso a fuentes de datos; como xml schemas.
  10. Defina mensajes Request y Response separados para cada mensaje.
  11. Utilice el poder de la API REST de Bonita o la correlaciones de BPEL para controlar las tareas asociadas a los procesos y el orden de ejecución.
  12. Utilice lienzos para plasmar las ideas y conceptos durante los talleres de análisis de procesos:

Saludos;