Los procesos de negocio, estan conformados por servicios, subprocesos, workflows, etc. y son ellos quienes desarrollan la persistencia necesaria para controlar la orquestacion de alto nivel, que necesitan las organizaciones.
miércoles, 26 de diciembre de 2007
Orquestacion de Procesos vs Servicios
Los procesos de negocio, estan conformados por servicios, subprocesos, workflows, etc. y son ellos quienes desarrollan la persistencia necesaria para controlar la orquestacion de alto nivel, que necesitan las organizaciones.
viernes, 2 de noviembre de 2007
Intalio BPMS 5: Utilizacion de doXslTransform
Algunas recomendaciones para la realización de transformaciones:
- No es recomendable realizar transformaciones XSLT desde Intalio BPM, de mucha envergadura, por lo general esta debe ser funcion de un bus de servicios, que utilice componentes especializados para la transformación de determinas equivalencias.
- Podemos utilizar esta función para transformaciones menores desde Intalio.
- Es importante, realizar pruebas de concepto con artefactos como XML Spy, para asegurar la conformidad con las instrucciones Xpath.
domingo, 16 de septiembre de 2007
Intalio BPMS 5: Que son las Correlaciones.
Saludos.
martes, 28 de agosto de 2007
Intalio BPMS 5: Mejores Practicas y lecciones aprendidas.
- Mule como bus de servicios empresarial.
- Axis como SOAP Engine para exponer los servicios. Esta implementación fue basada en Mule.
- y por su puesto Intalio BPMS version 5.
- Como orquestar servicios web (Web Services).
- Como realizar un mapeo y composicion de servicios.
- Como manejar las excepciones de negocio.
- Utilice las herramientas del WS-I para realizar pruebas de interoperabilidad a los servicios.
- Utilice SoapUI como herramienta para consumir, probar y realizar pruebas unitarias de web services (aserciones, expresiones xpath, etc.).
- Es una buena practica, separar los esquemas del archivo WSDL.
- Verifique los soap response de los servicios, evite los namespace vacios (evite xmlns="").
- Para capturar los mensajes faul de los web services, utilice sub.procesos.
- Maneje las excepciones de negocio con sub-procesos.
- Los problemas con las expresiones Xpath son comunes, por errores en los namespaces.
- Es mejor trabajar con un solo namespace, es decir un solo package en la implementación del servicios.
- La interface de un procesos debe ser "no ejecutable".
miércoles, 25 de julio de 2007
Mi primer proceso.
Recomendaciones:
- Antes de utilizar Intalio, es necesario crear un entorno de servicios (web services dummys). Las tecnologías mas conocidas para el desarrollo y despliegue de componentes como servicios son: Axis y Xfire.
- Según mi experiencia, si comiezas con Xfire, podrás avanzar mucho mas rápido.
- El producto final del despliegue es un archivo WSDL que representa el contrato para poder invocar el servicio vía http mediante el protocolo SOAP. En el se describen los mensajes y operaciones requeridas para su consumo.
- Les recomiendo utilizar una herramienta Open Source llamada SoapUI para consumir los servicios y realizar pruebas unitarias del mismo.
- Una vez desarrollado los servicios con la respectiva granularidad, es necesario diseñar el proceso de negocio con Intalio diseñador. El insumo principal para comenzar con el diseño, son los archivos wsdl generados anteriormente durante el despliegue de componentes como Web Services.
- La lógica de negocio, condicionales, reglas, etc. son plasmadas en el diseñador, luego compilamos el proceso para generar los respectivos artefactos de software que serán desplegados en el servidor. Finalizada la compilacion, procedemos a realizar el deploy del Web Services que representa el proceso. Recuerden que en intalio todo proceso es desplegado como un servicio.
Saludos.
miércoles, 9 de mayo de 2007
Primeros Pasos con Intalio BPM
Componentes:
- Una herramienta para el diseño de los procesos de negocio, basada en Eclipse(ambientes grafico para el desarrollo java).
- Un engine que ejecuta los artefactos de software generados por el diseñador de procesos.
- Un Servidor de Aplicaciones donde residirán los servicios de procesos de negocio que despleguemos.
Modelo de Negocio
- La edición abierta incluye aproximadamente el 95% del código usado para la edición comunitaria y la de empresa. La edición abierta esta desplegada sobre el servidor de Apache Geronimo J2EE, y la base de datos de MySQL.
- La edición comunitaria se distribuye con el servidor de IBM WebSphere, junto con MySQL.
- La edición empresarial puede desplegarse en otros servidores y bases de datos, su mayor características es el manejo transaccional.
- Apache Geronimo.
- Base de datos de MySQL.
- Orbeon para XForms.
- Corticon para Reglas de Negocio.
- etc.
Links de Interes.
http://www.bpmn.org/
http://www.eclipse.org/gef/
http://www.eclipse.org/modeling/emf/?project=emf
http://www.orbeon.com/
miércoles, 28 de marzo de 2007
BPEL y BPMN
Los sistemas de soporte operacional en las empresas están basados en procesos que conforman su cadena operativa, soportando por ejemplo, los ciclos para la gestión de clientes, productos, servicios, recursos humanos, contabilidad, finanzas, administración, presupuesto, etc.
La agilidad operativa en la administración de estos procesos, es un diferenciador competitivo vital y una de las principales características que una organización necesita para poder adaptarse a los continuos cambios de negocio. El éxito dependerá de la rapidez con la cual las organizaciones puedan adaptarse a estos cambios.
Por lo general, las empresas tienen analistas de negocio, que definen y establecen los ciclos y los procesos de negocio. Su función es mejorar, optimizar los procesos, equilibrar los requerimientos con los objetivos de la organización, etc. Tradicionalmente los analistas han utilizado herramientas para modelar y representar los procesos. Luego estos procesos son desplegados en alguna tecnología que pueda ejecutarlos y crear una representación técnica basada en un lenguaje de programación.
Resumiendo, el proceso se modela en una herramienta grafica, creando una representación de los procesos de alto nivel, como el modelo no trae un ejecutable directamente, los programadores deben crear componentes que implementan los procesos sobre una tecnología específica y basada en su comprensión del proceso.
Los procesos desarrollados de esta manera son muy susceptibles a errores de comprensión, errores de codificación, debido a la desconexión existente entre el modelo de alto nivel y el proceso ejecutable. En este tipo de soluciones, un cambio implica un impacto significativo, es necesario por ejemplo, reescribir código, cambiar el modelo, etc., además es difícil obtener métricas para medir el estado actual y las condiciones de negocio vigentes.
- Los procesos desarrollados de esta manera son muy susceptibles a errores de comprensión y errores de codificación.
- Existen grandes brechas entre el modelo y su implementación técnica.
- Un cambio implica un impacto significativo en la infraestructura TI de la organización, porque los procesos están cableados en el código.
- Las reglas de negocio, están altamente acopladas a los procesos.
- Mantenerlos es extremadamente engorroso, difícil y costoso.
- Debido a los continuos cambios, los procesos pierden vigencia continuamente y pueden llegar a convertirse en piezas incomprensibles, con un nivel de detalle que aprisiona la agilidad.
- No podemos automatizar los cambios de políticas.
Una Solución
Para solventar estos problemas, los gerente de IT utilizan una solución basada en modelos, con una alternativa de implementación mas abierta y estándar: BPM y BPEL.
BPEL es el estándar de la industria que representa y ejecuta procesos del negocio, bpel permite una abstracción lógica del proceso del modelo de implementación o tecnología. BPEL esta basado en una notación XML que permite representar los procesos de negocio.
Con BPEL y BPMN, un analista puede utilizar una herramienta para modelar el proceso y construir el proceso usando BPMN. El modelo del proceso BPMN genera automáticamente un entorno para BPEL, donde se establecen metadatos, reglas de negocio, bifurcaciones, flujos de trabajo, participantes, punto de decisión, etc.
Beneficios
- Simplifica la comunicación y colaboración entre los arquitectos, analistas y desarrolladores.
- Habilita y disponibiliza el concepto de SOA en la organización.
- BPEL proporciona un modelo rico en operaciones como el manejo de excepciones, reglas de negocio, transaccionalidad, etc.
- La visión lógica no demuestra los detalles subyacentes de la puesta en práctica.
- Cambios no afectan la representación total del proceso.
viernes, 23 de marzo de 2007
SOA y BPM. Suenan bien!!!
Dentro de este escenario, han surgido un conjunto de arquitecturas tecnológicas para disminuir los riesgos e incertidumbre que son generados continuamente .
Algunos Beneficios:
- La Agilidad para ajustar los procesos de negocio, proporciona a la organización mayores niveles de adaptabilidad y protección ante los cambios de políticas de negocio y tecnologías.
- La utilizacion del concepto de servicio o contrato, desacopla las funciones de los sistemas de soporte operacional de las tecnologías (legados, etc.) que las implementan, proporcionando mayores niveles de adaptabilidad y disminuyendo el impacto ante el cambio.
- Los procesos de negocio pueden ser cambiados y optimizados sin que esto impacte significativamente la infraestructura de TI de la organización. Esto crea las condiciones para adquirir una ventaja competitiva a corto plazo.
- Las organizacion tendrá la capacidad de evolucionar y desarrollar estrategias que protejan su inversión en TI.
- La organización podrá responder ante las exigencias del mercado con menos recursos, balanceando su capacidad y generado procesos innovadores y diferenciadores.
Intalio es una solución Open Source para el desarrollo de procesos de negocios basados en los estándares de la industria: BPMN, BPEL y BPEL4People.Con intalio, podemos diseñar, desplegar y optimizar procesos de negocio, con la promesa de es hacer estos sin escribir ni una línea de código.
Desde el punto de vista tecnológico, intalio BPM provee la tecnología para crear una capa que provee servicios (Web Services), que modelen los procesos de negocio de la organización y todas sus reglas de negocio. BPM debe descansar sobre una arquitectura orientada en servicios (SOA).
Intalio implementa BPM.
Algunas Recomendaciones para iniciar un proyecto BPM + SOA con Intalio.
- El desarrollo de BPM, debe estar acompañado por metodologías, especificaciones, estándares y guidelines que aseguren un diseño óptimo y la disminución de los riesgos en su adopción.
- Desarrollar un mapa de procesos actual, e identificar las brechas, y oportunidades de mejora.
- Desarrollar un mapa de procesos de nueva generación. Donde se establezcan los procesos operativos y estratégicos con una amplia comprension y orientación a la visión de negocio.
miércoles, 14 de marzo de 2007
Bienvenidos!
Este portal pretende ser la primera referencia en español en el mundo, sobre el proyecto Open Source: Intalio BPM. En este site, incluiremos una base de conocimiento para contribuir con la difusion de este tipo de arquitectura, y todos sus beneficios.
Saludos.