HCL Commerce y la arquitectura orientada a servicios (SOA)

IBM describe la arquitectura orientada a servicios como un proceso, ciclo de vida y un conjunto de herramientas que habilitan la transformación rápida del negocio. Esta práctica específica de inferir la implementación de TI del sistema de los requisitos de negocio se conoce como IBM SOA. En el sector, existen muchas instancias donde se puede encontrar que SOA equivale a servicios web. La perspectiva de HCL sobre SOA no es meramente sobre tecnología; por lo tanto, no existe ninguna plataforma SOA en la que desplegar una solución. En cambio, IBM SOA define una arquitectura que aliena el mundo empresarial con el mundo de TI de una forma que los hace más eficaces. Los cambios en uno pueden reflejarse más rápidamente en el otro, lo que permite una transformación empresarial ágil.

En IBM SOA, existe un ciclo de vida definido que fluye entre recopilar requisitos del negocio y mantener el sistema. Este ciclo de vida sirve de guía durante el proceso de creación de arquitectura SOA. El ciclo de vida empieza por el analista de negocio que produce un diseño del negocio que capta los procesos de negocio de la organización. A continuación, el analista de negocio trabaja con el arquitecto de TI para modelar los artefactos adecuados. A continuación, estos modelos se transforman en elementos de TI que después se ensamblan. Los activos se despliegan más adelante y, a continuación, se supervisan y gestionan las operaciones diarias. Este flujo sencillo es lo que se conoce como ciclo de vida IBM SOA de Model,Assemble, Deploy y Manage. Se proporcionan herramientas para ayudar en las actividades que se realizan en la etapa del ciclo de vida; estas herramientas se conocen como las IBM SOA Foundation tools

Un concepto clave en SOA es el de Services. Services son tareas repetibles que se encuentran en procesos de negocio. Service-orientation es una forma de integrar su negocio como un conjunto de servicios enlazados. Por consiguiente, un service-oriented architecture utiliza los principios de la orientación a servicios para lograr una relación más estrecha entre el negocio y los sistemas de información que dan soporte al negocio.

La implementación de IBM SOA puede ayudar a la empresa a obtener las siguientes ventajas:
  • Una mayor alineación del negocio y la TI.
  • Componentes más fácilmente acoplados entre componentes y sistemas
  • Una arquitectura basada en la red que permite, geográfica y tecnológicamente, que diversos recursos funcionen conjuntamente.
  • Una mayor reutilización de código.
  • Una mejor estandarización de procesos en toda la empresa.

Consulte IBM's SOA Foundation - An Architectural Introduction and Overview para una información exhaustiva de la arquitectura y visión de IBM SOA.

Uno de los diagramas a los que se hace referencia en el libro blanco de la fundación IBM SOA es el siguiente diagrama, que muestra cómo se comunican los servicios a través del bus de servicio empresarial (ESB).

Los servicios se comunican a través del bus de servicio empresarial (ESB)

Adopción de SOA e integración orientada a servicios en HCL Commerce

IBM describe cuatro fases para la adopción de SOA, tal como se describe en la tabla siguiente:
Fase Nombre: Descripción:
1 Implementación de servicios web individuales Creación de servicios a partir de tareas que están contenidas en aplicaciones nuevas o existentes
2 Integración orientada a servicios de funciones de negocio Integración de servicios en múltiples aplicaciones dentro y fuera de la empresa para un objetivo de negocio
3 Transformación de TI que abarca a toda la empresa Una implementación de arquitectura que permite la integración de funciones de negocio en toda la empresa
4 Transformación del negocio bajo demanda Una amplia transformación de modelos de negocio o del despliegue de modelos de negocio

HCL Commerce las direcciones de mejora de la adopción phase 2, que se conoce como service-oriented integration (SOI). A diferencia de la phase 1 donde se proporciona un conjunto de servicios ad hoc para permitir que las aplicaciones se comuniquen, la phase 2 se centra más en habilitar escenarios. Mientras que la adopción de la phase 1 puede permitir que un sistema externo actualice el inventario en la aplicación mediante la exposición de un servicio UpdateInventory u obtener el precio mediante el uso de servicios PriceCheck, phase 2 expone un conjunto relacionado de servicios de inventario en la aplicación. Este conjunto de servicios permite que la aplicación delegue responsabilidades de inventario a un sistema externo.

Interconectividad entre servicios

Como parte de la integración orientada a servicios de las funciones de negocio, HCL Commerce habilita los escenarios (SOI) de service-oriented integration que se centran en la integración de servicios administrativos. HCL Commerce define conexiones que proceden de su Business Application Services hasta Access Services (estas conexiones se defines con más detalles en IBM's SOA Foundation - An Architectural Introduction and Overview. Los dos escenarios se centran en sistemas de gestión de pedidos externos (OMS) y en la planificación de recursos empresariales (ERP).

Utilice esta fase de la adopción de SOA para:
  • Incorporar HCL Commerce en una arquitectura empresarial SOA global como un productor y un consumidor de servicios de negocio.
  • Integrar con sistemas antiguos y proveedores de terceros con un modelo de integración orientado a servicios.
  • Adaptar de forma dinámica los procesos y servicios de HCL Commerce para que se ajusten al negocio.

Puede leer más sobre SOA, SOI y los escenarios de integración de servicios administrativos que están habilitados en Arquitectura lógica de SOA y integración de servicios administrativos de HCL Commerce.

Servicios web de HCL Commerce

Como parte de la transición de HCL Commerce a SOA, se ha hecho un esfuerzo por disociar los componentes para permitir la reutilización de servicios de negocio de HCL Commerce en otros entornos, aparte de la aplicación HCL Commerce. Con objeto de dar soporte a este desacoplamiento, la infraestructura básica es el primer elemento que debe ejecutarse de forma independiente, de forma que pueda aprovecharse también en otros entornos. El manejo de peticiones ha cambiado para crear un entorno de ejecución ligero que los componentes existentes y nuevos puedan utilizar. Este tiempo de ejecución ligero se centra en el proceso de documentos de objeto de negocio (Business Object Document - BOD). Esta nueva arquitectura prepara el terreno para la adopción de SOA estandarizando cómo los clientes interactúan con los componentes de SOA.

HCL Commerce proporciona ahora 4 módulos de servicio SOI: agrupaciones lógicas de objetos de negocio que se agrupan para estandarizar la comunicación. Estos módulos de servicio son los siguientes:
  • Member
  • Orden
  • Catálogo
  • Contract

Directrices de personalización

Cuando esté desarrollando servicios web, siga estas directrices:
  • Cuando se personaliza un módulo de servicio existente, utilice el mismo modelo de programación que el módulo de servicio utiliza. Por ejemplo, si el módulo de servicio es SOI, las personalizaciones en ese componente debe ser SOI.
  • Cuando está creando un módulo de servicio (la creación de un módulo de servicio normalmente equivale a la creación de un elemento Noun), existen dos opciones:
    • Si tiene código existente que utiliza el modelo de programación de comercio clásico (EJB, mandatos de controlador), necesitará menos esfuerzo para crear un módulo SOI que reutilice esa lógica de negocio. Sin embargo, hay un coste añadido si decide volver a implementar el módulo de servicio utilizando la infraestructura de mandatos de Documento de objeto de negocio (BOD) más tarde.
    • Si no tiene código existente para el módulo de servicio, grabe el módulo de servicio utilizando la infraestructura de mandatos de BOD. Los BOD forman parte del modelo de programación SOA de IBM, la dirección estratégica para HCL Commerce.

Infraestructura de mandatos de documentos de objetos de negocio

En la arquitectura actual de WebSphere Commerce, hay tres capas distintas de la aplicación: la capa de presentación, la capa de lógica de negocio y la capa de persistencia. En HCL Commerce Versión 6 Feature Pack 3.0.1, HCL Commerce introduce una nueva infraestructura de mandatos para la capa de lógica de negocio: la infraestructura de mandatos de Documento de objeto de negocio (BOD). El concepto de un BOD se ha utilizado en versiones anteriores de HCL Commerce, pero en HCL Commerce Versión 6 Feature Pack 3.0.1, la infraestructura de mandatos entera está adaptada para utilizar los BOD.

En las versiones anteriores de HCL Commerce, existen dependencias de implementación entre la capa de presentación, la capa de lógica de negocio y la capa de persistencia. La nueva arquitectura utiliza interfaces bien definidas para disociar la implementación de la capa de presentación, la capa de lógica de negocio y la capa de persistencia. Desde la perspectiva de la capa de lógica de negocio, se utilizan mensajes de OAGIS como la interfaz para realizar solicitudes para recuperar datos de negocio o invocar lógica de negocio. La infraestructura de mandatos de BOD permite procesar esas peticiones y respuestas de BOD.

Para obtener más información sobre la infraestructura de mandatos de BOD, consulte HCL Commerce infraestructura de mandatos de BOD

Capa de servicios de datos

La capa de servicios de datos (DSL) proporciona una capa para el acceso de datos que es independiente del esquema físico. La finalidad de la capa de servicios de datos es proporcionar una interfaz coherente (llamada fachada de servicios de datos) para acceder a datos, independiente de la infraestructura de correlación de objetos relacionales (como EJB, DAS o JPA). A su vez, la infraestructura de correlación extraída se utiliza para transformar los datos recuperados de la base de datos en una colección de objetos Java. Esos objetos se implementan como objetos de datos de servicio físico (SDO).

Para obtener más información sobre la capa de servicios de datos, consulte: Capa de servicios de datos.