Mostrando las entradas con la etiqueta eda. Mostrar todas las entradas
Mostrando las entradas con la etiqueta eda. Mostrar todas las entradas

7/12/2007

Un universo de Tecnologias.














Vivimos en un entorno acelerado y exponencial, cada día es mas difícil mantener la vigilia de las tecnologías que surgen. Los gerentes de TI deben comprender un enorme universo de siglas, para poder generar valor en todos los estratos tecnologicos de una organizacion.

La realidad, es que el gerente se sumerge en el día a día, resolviendo y operando, no hay tiempo para la innovación y el cambio saludable necesario para proporcionar agilidad y eficiencia operacional.

Este universo, esta sustentado sobre una batería de ideas, conceptos, y practicas para mejorar las condiciones de negocio, haciéndolas mas flexibles y humanas, apoyando la automatizacion de procesos y toda la cadena de valores necesarios para crecer y mantenernos en un mercado tan cambiante. Es necesario y vital, promover la investigación y el conocimiento de estándares y mejores practicas como ITIL, ISO, CMM, etc.

Universo de tecnologías Claves

SOA: Estilo de arquitectura, que sustenta los servicios de una organizacion en contratos formalizados, promoviendo la reusabilidad como modelo para disminuir los costos de desarrollo, el desacoplamiento de tecnologías y la protección de la inversión.

BPM: La gestión de procesos de negocio, formaliza y estandariza los procesos de negocio, los automatiza, y desacopla las reglas de negocio.

ESB: Bus de servicios para proporcionar funcionalidades de transformación, adaptación, conexion, enrutamiento, etc. Disponibiliza servicios de integracion de alto desempeño y escalabilidad.

EDA: es una arquitectura que gestiona eventos en un marco de integracion.

MOM: Estilo de arquitectura basado en una infraestructura de mensajería sobre diversos protocolos y mecanismo de transporte.

5/09/2007

Arquitecturas Agiles

Las organizaciones deben ser ágiles operacionalmente, deben proteger sus inversiones; deben poder evolucionar y mantenerse, sin que los cambios tecnologicos las afecten. Para cumplir con estos lineamientos, es necesario que la organizacion desarrolle arquitecturas ágiles.

Una arquitectura ágil, debe ser una desacoplada, adaptable y de tecnología neutral, la cual; no se vea afectada ante cambios de productos y tecnologías. Esta debe permitir una disminución significativa en la complejidad y dependencia tecnológica de los ambientes heterogéneos.El marco de arquitectura ágil debe proporcionar:
  1. Simplicidad.
  2. Flexibilidad y mantenibilidad (Tolerancia ante Cambios).
  3. Reusabilidad.
  4. Desacoplamiento.
  5. Extensibilidad.
Para desarrollar una arquitectura ágil, es necesario contar con un conjunto de lineamientos y criterios de éxito que minimicen riegos y garanticen una especificación más formal y sólida.

Criterios de Éxito
  1. Debe poseer capacidades de Plug-in.
  2. Capacidad de interoperar con vendedores distintos (conectores / Adaptadores, etc.).
  3. Debe proporcionar un modelo desacoplado entre componentes.
  4. Los componentes no deben interactuar con otros componentes directamente.
  5. La semántica debe estar basada en mensajes.
  6. La definición de la secuencia de mensajes durante la ejecución de una operación debe estar basada en MEP.
  7. Clara separación entre la lógica de negocio (procesamiento) de la lógica de comunicación.
  8. Debe existir una clara separación entre los proveedores y consumidores de servicios.
  9. El modelo de intercambio de mensajes basado en WSDL 1.1 o 2.0.
  10. No usar metadatos propietarios en la definición de objetos de negocio (Xml Schemas).
  11. Modelo de implementación no-intrusivo.
  12. Ensamblado de servicios desde otro servicio, basado en reglas de negocio.
  13. Soporte de servicios sincronos, asíncronos, y conversacionales.
  14. Automatización de la transformación entre estructuras de datos dispares (semántica).
  15. Soporte para la simulación, testing y debuging.
  16. Definición del servicio con independencia de su implementación, localización o uso.
Recomendaciones y Consideraciones para elevar el nivel de desacoplamiento de la arquitectura.
  1. El marco de arquitectura debe estar basado en arquitecturas SOA.
  2. Debe estar basado en las especificaciones y estándares (ws-i, w3c, oasis, etc.).
  3. Debe estar soportado sobre un bus de servicios y un modelo de servicios horizontal.
  4. Debe tener capacidades de inversion de control “Inversion of Control Containers”.
  5. Debe tener capacidades de inyeccion de dependencias “Dependency Injection pattern”.
  6. Capacidades y soporte para arquitecturas Event-driven architecture (EDA) y service-oriented architecture (SOA).
  7. Integración con JBI.
  8. Estandarización de la arquitectura para el enrutamiento de mensajes.
Para mas informacion:

http://en.wikipedia.org/wiki/Enterprise_service_bus
http://en.wikipedia.org/wiki/JBI
http://en.wikipedia.org/wiki/Message_Exchange_Pattern
http://www.ws-i.org/
http://www.oasis-open.org/home/index.php

Saludos.