La muerte de SOA 1.0

junio 10th, 2009

Recientemente he leido un artículo (http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html) de Anne Thomas donde proclama el fallecimietno de SOA a 1 de enero de 2009. El motivo de esto es su eliminación por parte de la recesión económica. Según Anne Thomas ahora es el momento de los herederos de SOA: mashups, BPM, SaaS, Cloud Computing o de cualquier otro enfoque de arquitectura que se basa en “servicios”.Este comentario como se puede imaginar ha generado una gran polémica entre la comunidad SOASegún explica Anne Thomas, SOA se ha convertido en una experiencia fallida, debido a sus elevados costes y su beneficio de justificación dificil y lento. Después de invertir millones, los sistemas de TI no son mejores que antes. Esto es lo que ha hecho que en estos tiempos turbulentos, la mayoría de empresas hayan decidido recortar todas sus inversiones en iniciativas SOA.De tosa formas, Thomas concluye su artículo diciendo que aunque el término “SOA” está muerto, la exigencia y requisito de la arquitectura orientada a servicios está más fuerte que nunca.Parece ser que en los últimos tiempos se ha abusado bastante de la palabra SOA para vender grandes y caras arquitectura a organizaciones que no siempre eran necesarias, esto ha provodaco un rechazo por parce del mercado a este tipo de soluciones, así que lo que parece que está pasando es que la palabra SOA se está agotando.

¿Crisis?

abril 30th, 2009

Hoy me he encontrado con un escrito de Albert Einstein sobre la crisis, que me ha parecido muy interesante:No pretendamos que las cosas cambien si siempre hacemos los mismo. La crisis es la mejor bendición que puede sucederle a personas y países, porque la crisis trae progresos.La creatividad nace de la angustia como el día nace de la noche. Es en la crisis donde nace la inventiva, los descubrimientos y las grandes estrategias. Quien supera la crisis se supera a sí mismo sin quedar “superado”. Quien atribuye a la crisis sus fracasos y penurias, violenta su propio talento y respeta más a los problemas que a las soluciones.La verdadera crisis es la crisis de la incompetencia.El problema de las personas y los países es la pereza para encontrar las salidas y soluciones. Sin crisis no hay desafíos, sin desafíos la vida es una rutina, una lenta agonía. Sin crisis no hay méritos. Es en la crisis donde aflora lo mejor de cada uno, porque sin crisis todo viento es caricia.Hablar de crisis es promoverla, y callar en la crisis es exaltar el conformismo.En vez de esto, trabajemos duro. Acabemos de una vez con la única crisis amenazadora: la tragedia de no querer luchar por superarla.” Albert Einstein.En los próximos días espero hablar de como la utilizazción de soluciones BPM puede ayudar a las organizaciones a afrontar las crisis.

Mejora de rendimiento con BPM

abril 28th, 2009

Hace algunos días escuche una frase que me ha quedado grabada: “BPM es la disciplina que hace que el rendimiento excepcional sea una cuestión de diseño y no de suerte”, por tanto ¿quien no quiere un bpm en su vida?Realmente gracias a la implantación de soluciones BPM es posible alinear la estrategia de las organizaciones con las operaciones, es decir, que es posible que la dirección de la organización realice un diseño de los procesos para que después sea ejecutado por el resto de la empresa.Cada día estoy más convencido que en los próximos años todas las empresas necesitarán una implantación de BPM igual que pasó hace algunos años con los sistemas ERP.

Ultimus BPM

abril 14th, 2009

Ultimus es probablemente el sistema BPM que más implantaciones tenga en el mercado, es su web hablan de mas de 1.900.Es una herramienta basada en plataforma Microsoft (.Net)Dispone de un modelador de proceso basado en un modelo propio, no soporta BPMN, ni XPDL ni tampoco BPEL. Esto ha sido un handicap para ellos en los últimos tiempos. Por otra parte fue uno de los primeros BPM en incorporar un modelador gráfico con simulación de procesos. Parece que no ha evolucionado mucho últimamente y ahora parece un poco anticuado.Ultimus parece haber tenido problemas en el último año, después de publicar su versión 8, donde hicieron un cambio radical de su núcleo de ejecución. Este cambio ha estado provocando numerosos fallos y problemas durante algunas versiones. Afortunadamente para ellos parece que la plataforma se ha estabilizado bastante. El problema es que para estabilizar su sistema han tenido paradas casi todas las funcionalidades que tenían previsto desarrollar y esto les ha penalizado mucho en el mercado.

IBM: FileNet o WebSphere Process Manager

abril 7th, 2009

El gigante IBM hace tiempo que domina el mercado BPM (en volumen de facturación) desde sus dos soluciones en este mercado:

  • FileNet
  • WebSphere Process Manager

De todas formas la solución de IBM está algo lejos de ser lo que podemos considerar un “BPM Pure Player”, ya que FileNet es más una solución de gestión documental con gestión de procesos documentales y WebSphere Process Manager es una solución claramente de integración de aplciaciones. Es por esta circunstancia que IBM desde hace algún tiempo ha empezado a replantearse su estrategia en el mercado para hacer converger a sus dos solucioens en los que llaman “IBM BPM Suite”, bueno, el tiempo nos mostrará si es la elección acertada, yo personalmente creo que si.Quiero aprovechar que ha salido la irrupción de FileNet como gestor documental dentro del mercado BPM para comentar un poco este tipo de situaciones, ya que existen algunos otros productos que se encuentran en esta misma situación como EMC Documentum. El caso es que estos productos se centran en el documento y el proceso es algo asociado a este. Esto está muy bien cuando el proceso a implementar en suna aprobación de documentos, ¿pero que pasa cuando el proceso sube de nivel y se convierte por ejemplo en una abertura de nueva oficina? ¿donde está el documento en este caso? Pues es aquí donde este tipo de soluciones se complica y hace que la implementación de estos procesos sea lenta y tortuosa.Como aclaración al tema me gustaría dejar claro que no es que FileNet o Documentum sean maols productos, sólo es que son gestores documentales y como tales no están preparados para implementar según que tipo de proceso.Para más inforamción http://www.ibm.com/software/info/bpm

Módulos que componen una solución BPM completa

abril 7th, 2009

En el mercado hay bastante agitación entre lo que se considera una solución completa de BPM y lo que no, o la diferencia entre los sistemas conocidos como “workflow” y un BPM.Pues bien, según la mayoría de analistas estos son los módulos que debe tener todo sistema de BPM:

  1. Modelador de procesos (BPA): Proporciona un entorno de desarrollo para un usuario capacitado para analizar y modelar un proceso, paso a paso, así como asignar a la misma lógica. El componente de diseño incluye herramientas para apoyar el descubrimiento de los componentes, la modelización de los procesos de negocio, y la definición de reglas de negocio.
  2. Diseñador de formularios e informes: Permite la definición de formularios e informes que no están disponibles en los componentes que se necesitan para apoyar el proceso de diseño.
  3. Motor de procesos: Es el módulo que permite ejecutar los procesos, así como sus actividades. Este motor soporta la ejecución tanto “system-centric” como “document-centric”.
  4. Motor de reglas (BRE): Este gestiona la información y las actividades dentro de un proceso de acuerdo con las fórmulas y las normas que se le asignen.
  5. Análisis de procesos: Este componente monitoriza la actividad del negocio (BAM), proporcionando información sobre la continua sobre el proceso en sí de modo que las mejoras se pueden hacer en el futuro. Recopila los datos acerca de cada tarea o evento en un proceso de negocio y los utiliza con fines de análisis.
  6. Un conjunto de API: Estos ofrecen la posibilidad de interfaz con cualquier sistema externo. Ellos pueden ser ofrecidos por el fabricante o un tercero. Además, existe normalmente un SDK para permitir el desarrollo de interfaces.

Diferencias entre XPDL, BPMN y BPEL

abril 3rd, 2009

En el mercado existen diferentes estándares de procesos. Los más conocidos son:

  • XPDL: eXtended Preocess Definition Language
  • BPMN: Business Process Model Notation
  • UML: Unified Modeling Language
  • BPEL: Business Process Execution Language

Después existen algunos fabricantes que definen su modelo como un estándar de facto (véase el caso de Aris o de Jbpm).Bueno, centrándonos en el tema de estándares, hay que saber diferenciar entre ellos, no son para lo mismo. Seguramente que si analizamos un poco el nombre del estándar, ya se intuye alguna cosa.BPMN es un estándar de notación de proceso, es decir, defina la forma gráfica de construir un proceso, así como los diferentes objetos que se pueden utilizar para tal efecto. La característica principal y más destacable de BPMN es que es un tipo de notación común entre las personas de negocio y los técnicos, por fin un lenguaje común para intentar unir estos dos mundos.UML ha sido hasta hace poco la notación por excelencia en cuestión de modelado de procesos. Últimamente está en desuso para este tipo de tareas, ya que se trata de una notación pensada para entornos técnicos y muy distante del negocio, así ha tenido que ceder terreno ante BPMN, que es un tipo de modelo más asequible para personas no técnicas.XPDL es una representación basada en XML de un proceso, es decir es la forma de almacenar el proceso en formato físico (fichero) y se utiliza para que aplicaciones de diferentes fabricantes se entiendan entre ellas, principalmente utilizado como formato de intercambio entre los modeladores gráficos (herramientas BPA) y los motores de ejecución.BPEL, originalmente BPEL4WS (Webservice for WebService) es una formato pensado para ejecutar procesos en entornos system-to-system, es decir que no tiene en cuenta la interacción humana (system-to-human y human-to-human). Es por esto que es muy utilizado por los sistemas BPM que provienen en su origen de las soluciones de integración. Hace ya algún tiempo (varios años) que se viene hablando del BPEL4People para cubrir esto, pero la realidad es que no acaba de salir y personalmente creo que no acabará de ver la luz.Como consideración personal creo que el binomio BPMN – XPDL es el ideal y el que sinceramente recomiendo adoptar. Ambos modelos parece que se están adoptando de forma mayoritaria tanto por fabricantes como por consultores de procesos. En la actualidad se está trabajando en la especificación de XPDL 2.1 que parece que está apoyada por la mayoría de fabricantes de soluciones BPM y por tanto casi garantizado su dominio de los formatos de procesos para los próximos años.

Clasificación de productos BPM

abril 2nd, 2009

Una de las primeras clasificaciones que podemos hacer dentro de las soluciones BPM es por su arquitectura tecnológica, así podemos diferenciar entre los que están basados en Java y en .NetJava: Pegasystems, TIBCO, Polymita, Oracle, Software AG (Webmetohds), IBM, SAP, Fujitsu, Intalio, EMC, Appian, Handysoft, Lombardi, Savvion, W4, Cordys..Net: BizAgi, Ascentn (AgilePoint), Ultimus, AuraPortal, K2, Metastorm, Global360, Singularity.Existen bastantes diferencias entre los dos grupos. En general los basados en .Net están mejor acabados en la parte de modelado y formularios ya que se apoyan en las herramientas que Microsoft ofrece para esto, pero en cuanto a arquitectura del motor y robustez, aquí ganan los Java.En general, después de investigar un poco el mercado, veo que los BPM de “gama alta” están casi todos basados en Java, mientras que en la “gama media” están bastante igualados. Si miramos por sectores, por ejemplo, el sector banca apuesta fuerte por los basado en Java.

Fabricantes de software BPM

marzo 20th, 2009

El mundo BPM está cada día más consolidado, existen en el mercado numerosos productos para dar soporte a la gestión de procesos.A continuación publico una lista de las diferentes opciones que nos da el mercado en este ámbito. En los próximos días intentaré hacer un breve análisis de cada una de las diferentes soluciones tanto en entornos Java como en .Net

  • Pegasystems
  • Lombardi
  • TIBCO
  • Polymita
  • Metastorm
  • Appian
  • Savvion
  • Ultimus
  • Intalio
  • Oracle
  • Software AG (Webmetohds)
  • Ascentn (AgilePoint)
  • BizAgi
  • IBM
  • SAP
  • Fujitsu
  • Cordys
  • Handysoft
  • Microgen
  • AuraPortal
  • W4
  • EMC
  • Global360
  • Singularity
  • K2

Como veis, existe una gran cantidad de productos, pero espero poder en breve aportar la información más relevante de cada uno para así poder elegir la solución más conveniente para cada situación, porque como os podéis imaginar no existe la solución perfecta para todos los casos.Posiblemente alguien encuentre a faltar algún producto como JBoss u otras soluciones opensource, pero en mi humilde opinión, este tipo de solucioens no cumplen con los requerimientos que se debe exigir a todo BPM. Aunque es cierto que para pequeñas solucioens que requieran de una gestión sencilla de procesos pueden ser válidos, no están pensados para su uso directo en cliente final, siempre requieren de un proyecto de desarrollo importante.

¿Qué es Web2.0?

marzo 18th, 2009

Desde hace ya algún tiempo que estoy empezando a odiar el término “Web 2.0″Web2.0 es un término que empezó ha utilizarse en 2004 (hace ya algunos años) y la verdad es que hoy en día no hay una definición clara para esto. Cada uno lo utiliza como mejor le viene en cada momento.Yo me pregunto ¿existió en algún momento la web 1.0? claro que no. La web no es algo versionable, de hecho los protocolos siguen siendo los mismos desde hace muchos años y lo que se pretende ahora es definir algunas modas y etiquetarlas como una nueva versión de la web de toda la vida.Ahora hay algunos que se atreven ha hablar de Web3.0, y creo que sobran los comentarios, esto el marketing sin sentido, hablar por hablar.Bueno, volviendo a lo del Web2.0, algunos dicen que es cuando la web se hace colaborativa, y ahora si es cuando la liamos, es decir que foros, chats, encuestas, libros de visitas, comentarios a noticias (que existen desde hace muchos años) no forman parte de la colaboración. Pues entonces ¿que significa colaboración?Está claro que a todo el mundo le gusta decir que lo suyo es mejor que lo de los demás, que es 2.0, 3.0, 25.14 o lo que sea. Pero la realidad está ahí fuera. ¿Alguien cree que a Youtube le preocupa ser 1.0 o 2.0? ¿y a Facebook o Tuenti? Está claro que no, ellos ya son líderes gracias a sus funcionalidades y por tanto no necesitan de este marketing para “aparentar”.Al final, al usuario normal, a la gente de la calle que navega por Internet, dudo que le preocupen demasiado los mashups, rss, API´s, las betas, la nube y los degradados.

  • La mayoría no distingue entre un foro una web o un blog, ni falta que les hace.
  • Hay muchos que solo saben enviar un “hotmail”, es mas por mucho que insistas, tu email acaba en @hotmail.com.
  • Un wiki es una web para frikies, que por algo rima
  • Ruby debe ser una telenovela o una actriz porno.
  • Nadie se para a pensar o discutir algo es 1.0 o 2.0, Lo usan si les aporta algo.

En la Wikipedia se puede encontrar bastante información sobre Web2.0. Si alguien encuentra algún parecido entre lo que significa el término Web2.0 y lo que anuncian la mayoría de portales y fabricantes de software, que me lo haga saber.