lunes, 31 de octubre de 2011

Estilos de Arquitectura: SOA + ESB

SOA y ESB son estilos de arquitectura, los cuales en la metodología BPM son la base para la construcción de una infraestructura orientada en servicios y procesos. A continuación veremos cual es la función que cumple cada uno de ellos.

SOA (Service Oriented Architecture), es un concepto de arquitectura de software que define la utilización de servicios para dar soporte a los requisitos del negocio.
Permite la creación de sistemas de información altamente escalables que reflejan el negocio de la organización, a su vez brinda una forma bien definida de exposición e invocación de servicios (comúnmente pero no exclusivamente servicios web), lo cual facilita la interacción entre diferentes sistemas propios o de terceros. SOA define las siguientes capas de software:

  • Aplicaciones básicas: Sistemas desarrollados bajo cualquier arquitectura o tecnología, geográficamente dispersos y bajo cualquier figura de propiedad.
  • De exposición de funcionalidades: Donde las funcionalidades de la capa aplicativa son expuestas en forma de servicios (generalmente como servicios web).
  • De integración de servicios: Facilitan el intercambio de datos entre elementos de la capa aplicativa orientada a procesos empresariales internos o en colaboración.
  • De composición de procesos: Que define el proceso en términos del negocio y sus necesidades, y que varía en función del negocio.
  • De entrega: Donde los servicios son desplegados a los usuarios finales.

SOA proporciona una metodología y un marco de trabajo para documentar las capacidades de negocio y puede dar soporte a las actividades de integración y consolidación.

ESB (Enterprise Service Bus) el término "bus de servicios de empresa" casi siempre se refiere a la infraestructura de software que hace posible tal arquitectura y, en esencia, se considera al BSE como una plataforma para realizar una arquitectura orientada a los servicios.

Un Bus de Servicios de Empresa (BSE) conlleva conceptos relacionados con flujos, como la transformación y el enrutamiento en una Arquitectura Orientada a los Servicios. Un BSE también puede proporcionar una abstracción para endpoints. Con esto se consigue flexibilidad en la capa de abstracción y una fácil conexión entre los servicios. El BSE trata de aislar el acoplamiento entre el servicio solicitado y el medio de transporte.

En conclusión SOA provee los servicios necesarios alineados con el negocio y ESB se encarga de la comunicación entre dichos servicios.






Espere la proxima semana una nueva actualización.

martes, 25 de octubre de 2011

BAM: Business Activity Monitoring

Es un software que apoya el monitoreo de las actividades del negocio en el momento en que éstas se implementan en sistemas de computación, utilizando indicadores claves de desempeño.

El objetivo de BAM es proporcionar información en tiempo real sobre el estado y los resultados de varias operaciones, procesos y transacciones.

Algunas de las soluciones BAM proporcionan además funciones de notificación de problemas. Por ejemplo, grupos enteros de personas pueden enviar mensajes de correo electrónico, voz o texto, de acuerdo con la naturaleza del problema.
Una de las características más visibles de soluciones BAM es la presentación de la información en dashboards que contienen los indicadores clave de rendimiento (KPI) que se utilizan para proporcionar una seguridad y visibilidad de la actividad y el rendimiento.


Los Indicadores Clave de Desempeño(KPI), miden el nivel del desempeño de un proceso, enfocándose en el "cómo" e indicando el rendimiento de los procesos, de forma que se pueda alcanzar el objetivo fijado.
Usado para calcular, entre otros:

  • Tiempo que se utiliza en mejorar los niveles de servicio en un proyecto dado.
  • Nivel de la satisfacción del cliente.
  • Tiempo de mejoras de asuntos relacionados con los niveles de servicio.
  • Impacto de la calidad de los recursos financieros adicionales necesarios para realizar el nivel de servicio definido.
  • Rentabilidad de un proyecto (Retorno de la Inversión ROI)
  • Calidad de la gestión de la empresa (Rotación del inventario, Días de Cuentas por cobrar DCC, y por Pagar DCP...)



La siguiente semana otra actualizacion sobre las disciplinas de BPM

martes, 18 de octubre de 2011

BPEL: Business Process Execution Language


Lenguaje estandarizado que permite orquestar procesos de negocio. Se basa en la composición de servicios web, utilizando estándares como SOAP (para comunicación) y WSDL (para la descripción de interfaces), además de estar derivado de XML. Dicho lenguaje fue creado por Oracle, IBM, SAP, Microsoft, entre otros y estandarizado por OASIS.

BPEL está limitado a interactuar con servicios web, pero aun así es considerado un lenguaje de alto nivel ya que proporciona métodos para la definición y soporte de procesos de negocio y flujos de trabajo.


BPEL resulta de gran importancia dentro de la organización ya que permite definir procesos de negocio que interactúen con entidades externas a través de servicios web que garantizaran la interoperabilidad de dichos procesos.


Estructura de BPEL:

  • Variables: Variables utilizadas durante le proceso. Pueden guardar el estado de un determinado mensaje.
  • PartnerLink (Socio): Conjunto de servicios web involucrados en el proceso de negocio.
  • Operaciones: Tipos de servicios web utilizados y operaciones invocadas.
  • Tipos de puertos: Tipos de conexión de servicios web requeridas.
  • Sequence (Secuencia): Define la lógica de orquestación.

Componentes:

  • Diseñador BPEL: Aplicación con interfaz gráfica utilizada para definir el proceso de negocio.
  • Motor BPEL: Aplicación que ejecuta un plantilla de proceso de negocio compatible con un estándar BPEL.
  • Plantilla de flujo de proceso: Archivo generado por el diseñador BPEL para ser ejecutada por el motor BPEL. Contiene la especificación BPEL.



Espere la otra semana una nueva actualización sobre disciplinas BPM.


Referencias:

http://150.185.75.30/atiwiki/index.php/BPEL

lunes, 3 de octubre de 2011

BPMN: Business Process Modeling Notation


Es el estándar utilizado para el modelamiento de procesos de negocio en formato de flujo de trabajo. El objetivo principal del BPMN es que sea una notación legible y entendible por parte de los involucrados. Este modelamiento se realiza mediante diagramas con un conjunto de elementos específicos, estos son:

- Objetos de flujo:

· Eventos: Representados por medio de círculos, describe lo que sucede dentro del proceso.


· Actividades: Están representadas por un rectángulo con sus vértices redondeados y describe el tipo de trabajo que será realizado. Pueden ser:


Tarea: Representa una sola unidad de trabajo que no es o no se puede dividir a un mayor nivel de detalle.

Sub-proceso: Se utiliza para ocultar o mostrar otros niveles de detalle de procesos de negocio.

Transacción: Es una forma de sub-proceso en la cual, todas las actividades contenidas deben ser tratadas como un todo.

· Control de Flujo: Esta representada por una figura de diamante y representa una decisión dentro del proceso.



- Objetos de Conexión


· Flujo de Secuencia: Representado por una línea simple continua y flechada, muestra el orden en que las actividades se llevarán a cabo.


· Flujo de Mensaje: Esta representado por una línea discontinua con un circulo no relleno al inicio y una punta de flecha no rellena al final. Esto nos dice, que el flujo de mensaje atraviesa la frontera organizacional (por ejemplo, entre piscinas).


· Asociaciones: Esta representada por una línea punteada. Se suele usa para conectar artefactos o un texto a un objeto de flujo



- Swimlanes
  • Piscina: Representa los participantes principales de un proceso, por lo general, separados por las diferentes organizaciones. Una piscina contiene uno o más carriles.
  • Carril: Usado para organizar y categorizar las actividades dentro de una piscina de acuerdo a su funcion o rol. Un carril contiene objetos de flujo, objetos de conexión y artefactos.



-Artefactos

  • Objetos de Datos: Muestra al lector cuales son los datos que deberían ser requeridos o producidos en una actividad.

  • Grupos : Esta representado por un rectángulo de líneas discontinuas y vértices redondeados . El grupo es utilizado para agrupar diferentes actividades pero no afecta al flujo dentro de un diagrama.
  • Anotación: Es utilizado para darle al lector una descripcion entendible del modelo o diagrama.