Arquitectura orientada a componentes (SCA): El enfoque de Oracle
17/02/2012 -
En la versión 11g, Oracle ha rediseñado su SOA Suite integrando la arquitectura orientada a componentes (SCA por sus siglas en inglés) al desarrollo de aplicaciones. La finalidad principal del cambio es reducir la dificultad en las fases de desarrollo, despliegue y gestión de las aplicaciones SOA, que han ido ganando en sofisticación y complejidad a lo largo del tiempo.
¿Qué es SCA?
La complejidad de los sistemas actuales y sus necesidades a la hora de desarrollar servicios, impiden una rápida puesta en marcha de los desarrollos. La arquitectura orientada a componentes es una especificación que define cómo crear y ensamblar los diversos componentes de negocio como componentes modulares, con la finalidad de incrementar la flexibilidad y facilidad de mantenimiento de los sistemas de información.
Acogiendo el símil de una placa base de PC, la arquitectura SCA está formada por componentes internos integrados entre sí, que se comunican con sistemas externos mediante conectores, todo ello a través de cables (wires). Ya sea en grandes sistemas SOA (Enterprise SOA) como pequeños (uso de Web Services para conectar sistemas), la pieza restante es un estándar que agrupe los servicios individuales en un servicio compuesto de alto nivel. Esta pieza es SCA.
Oracle, junto con otros fabricantes de software, ha formado parte de la creación de este estándar bajo el patrocinio del Open SOA Group. Actualmente es el consorcio OASIS el que se encarga de mantenerlo y evolucionarlo.
Oracle SCA
El principal beneficio de implementar SCA en Oracle SOA Suite 11g es la simplificación del ciclo de vida de las aplicaciones desde el desarrollo, pasando por el despliegue y su posterior gestión. La herramienta JDeveloper que Oracle pone a disposición de los desarrolladores, permite crear e integrar todos aquellos componentes necesarios para crear aplicaciones compuestas, con SCA como framework de unión. El plug-in para desarrollos SOA de JDeveloper hace que entender y desarrollar aplicaciones compuestas sea sencillo e intuitivo, agrupando las diferentes piezas o componentes de la aplicación en un único elemento denominado composite, siendo éste el único elemento a desplegar mediante un fichero SAR.
Todo esto se traduce en varios beneficios tangibles en el diseño, ejecución y posterior gestión / monitorización.
Los tres elementos principales que apoyan el desarrollo de aplicaciones compuestas SCA son:
- Herramienta de desarrollo en JDeveloper
- Infraestructura de ejecución unificada en SOA Suite
- Capacidad de gestión y configuración desde Enterprise Manager
La infraestructura unificada se presenta como un conjunto de motores de ejecución que proporcionan la funcionalidad necesaria para la ejecución de los elementos que componen el compuesto SCA (BPEL, Reglas de negocio, invocaciones, etc.).
Conectores
Debido a la naturaleza y filosofía que ha generado el estándar, es obvia la necesidad que puede encontrarse de integrar sistemas de terceros con las aplicaciones compuestas. Por defecto la SOA Suite 11g provee un conjunto de conectores tales como mySAP, PeopleSoft, Siebel, CICS, Tuxedo, etc. Todos estos conectores están desarrollados, siguiendo con la filosofía de utilizar estándares, en Java EE Connector Architecture (JCA) permitiendo el desarrollo de conectores propios integrables en los desarrollos.
La evolución de SOA a SCA llega con la ventaja principal de agrupar los distintos elementos que componen las aplicaciones compuestas de manera ordenada y proporcionando claridad sobre la interacción, tanto interna como externa, de todos sus componentes.Con Oracle SOA Suite 11g, se obtienen las herramientas necesarias para adentrarse en el desarrollo basado en componentes. Su herramienta de diseño, presentada como plug-in de JDeveloper, permite obtener una visión clara y sencilla de las aplicaciones composite, a la par de simplificar el desarrollo de las mismas.