Está en la página 1de 6

La aplicacion de SOA en Sistemas de Gestion de Contenidos (CMS)

Existe un gnero grande de Content Management System en el mbito de las finanzas, los seguros y la venta minorista. En los sistemas del mundo real, los datos con frecuencia proviene de varias fuentes, incluyendo bases de datos relacionales, personalizados capas de acceso a datos y XML. La mayora de los sistemas de gestin de contenido existentes estn limitados por los formatos de datos incompatibles y normas, lo que resulta en sistemas que no son interoperables, junto con fuerza y no adaptable a los cambios. Por lo tanto, existe la necesidad de desarrollar sistemas de gestin de contenidos basados en una arquitectura que proporciona los atributos de calidad como la interoperabilidad, la agilidad, la extensibilidad y reusabilidad. Aqu es donde la Arquitectura Orientada a Servicios (SOA) se presenta en el cuadro. En este artculo, vamos a ver varios modelos y herramientas como Hibernate (Java), NHibernate (. NET) y Service Data Objects (SDO), que puede ayudar a los desarrolladores de CMS disear marcos ms flexibles y adaptables. Servicios basados en sistema de gestin de contenido proporciona una mejor interoperabilidad y la flexibilidad en el diseo. La modularidad en el diseo es una de las ventajas principales que ofrece SOA como los componentes estn dbilmente acoplados. CMS basado en SOA pueden adaptarse mejor a los cambios en los requerimientos del negocio. Por lo tanto, esto permite a los desarrolladores para hacer frente a las necesidades cambiantes del entorno en continua evolucin empresarial. SOA permite a los sistemas CMS para modificar y extender su funcionalidad con la evolucin del software. Adems, SOA tiene beneficios de agilidad. La mayora de los usuarios de los gerentes de TI y al final ver SOA como un marco para abordar slo los grandes proyectos. Ellos creen que SOA slo funcionar en las grandes organizaciones para mejorar su eficiencia y reducir los costos ocultos. En este artculo, vamos a explorar las posibilidades de empleo de SOA en proyectos de pequeo y mediano tamao. Tendremos en cuenta los desafos que enfrentan en implementaciones de pequea escala que utilizan SOA y ver cmo una implementacin de SOA puede beneficiar a pequeos proyectos. Cada vez es esencial seleccionar un enfoque arquitectnico que proporcionara un contenido comprensible y sistemas de gestin eficaces. Tenemos la esperanza

de que con el tiempo se convertira en una SOA enfoque popular para el diseo de los sistemas de administracin de contenido.

Arquitectura Orientada a Servicios


Service-Oriented Architecture (SOA) es un enfoque de arquitectura para la construccin de sistemas donde hay componentes que son usuarios de los servicios y / o proveedores de servicios. Un servicio es un componente distribuido que es autnomo, ha publicado una interfaz que abstrae la lgica subyacente, es la ubicacin transparente (se puede implementar en diferentes lenguajes o plataformas e inter operar todava) y se puede descubrir de forma dinmica y con destino [2]. En la actualidad, la tecnologa ms comn que utiliza el enfoque de SOA son los servicios Web. Un sistema de gestin de contenido es un ejemplo de un sistema que utiliza la arquitectura de servicios web en la implementacin de soluciones. El uso de SOA en el desarrollo de los servicios web mejora la eficiencia y reduce el coste mediante el uso de pautas SOA como la modularidad y la interoperabilidad de los sistemas. Las organizaciones pequeas y grandes por igual pueden beneficiarse de la adopcin del enfoque de SOA en el desarrollo y mantenimiento de sus sistemas. La tecnologa de la informacin (TI) experimentaron importantes crisis financieras durante la crisis de las puntocom en el cambio de milenio. Debido a esto, ahora estn bajo presin para mantener el presupuesto a un nivel seguro para evitar convertirse en una vctima. Esto afecta a las decisiones de los gerentes de TI en la bsqueda de una solucin para el desarrollo y los esfuerzos de mantenimiento de sus sistemas. Cuando el presupuesto se acerca al nivel crtico, muchas empresas recurren a la externalizacin en la esperanza de que esto redujera el costo del mantenimiento de sus sistemas. Si bien esto puede ser verdad una vez que los planes de externalizacin se llevan a cabo, el problema de la sostenibilidad sigue existiendo. Los costos tambin estn creciendo rpidamente en los pases en que prestan los servicios por lo que en el largo plazo, los costos de outsourcing ser el mismo que si tiene los servicios a nivel local. En relacin con la SOA, la adopcin de este enfoque requiere la reestructuracin de los sistemas de legado. Este paso requiere una buena cantidad de tiempo en volver a disear y asegurar que el sistema funciona de la misma forma desde la perspectiva de un usuario. Por lo tanto, esto significa que las empresas tendrn que pagar varios diseadores y desarrolladores para realizar las tareas y por lo tanto necesita un gran presupuesto para este proyecto. La investigacin muestra que la tecnologa ms Informacin (TI) ver SOA como un marco para las grandes empresas [1] debido a los costos iniciales que requiere. Sin embargo, los beneficios de la modularidad e interoperabilidad que presenta

SOA rentabilidad en el largo plazo a medida que ms proyectos de reutilizacin del diseo de los sistemas anteriores. Si los servicios adecuados de fuentes externas estn disponibles y la integracin de estos servicios son manejables, entonces las empresas pequeas y medianas lo ms probable es que tenga menos vacilacin al tratar de adoptar el enfoque de SOA.

Sistemas de Gestin de Contenidos


Sistemas de Gestin de Contenidos (CMS) son a nivel de empresa los sistemas de informacin que proporcionan una amplia gama de capacidades de gestin de la informacin a las empresas de todo el mundo. Existen en muchas industrias diferentes, incluyendo pero no limitado a servicios de salud, bienes races, finanzas al por menor y la educacin. Estos sistemas proporcionan valiosos servicios de administracin de contenido para empresas, sus socios, clientes y proveedores. Estos sistemas de reunir informacin que de otro modo sera esparcir sobre muchos diferentes sub-sistemas de una organizacin. Servicios de gestin de contenidos tpicos incluyen funciones tales como la creacin de contenidos y la gestin de la manipulacin, la gestin de perfiles de usuario, y la integracin de los servicios existentes en un documento central. Desde CMS ofrece una amplia gama de servicios a diferentes clientes, proveedores y socios dentro de una empresa, debe utilizar una arquitectura distribuida para garantizar la interoperabilidad y extensibilidad del sistema. Un objetivo principal de los CMSs es permitir a los clientes acceder fcilmente a la informacin que se refiere a su funcin de trabajo especfica. As que no slo CMSs proporcionar servicios de informacin, pero tambin organizar servicios de informacin. En el caso de un Stock de Bolsa CMS, un cliente mediante CMS puede no slo ver es la cartera, su saldo de cuenta, etc, pero tambin se puede ver la informacin valiosa en relacin con sus metas de rendimiento. En este caso, un CMS no slo proporcionar servicios de gestin de cartera a un cliente, sino que se integrar tambin, por ejemplo, sus aplicaciones de terceros que proporcionan servicios de informacin relacionados con la gestin de inversiones. Muy a menudo, la informacin que las organizaciones se muestran en sus sistemas de gestin de contenidos provienen de fuentes 3 parte. Por lo tanto, un CMS debe tener la capacidad de manejo de fuentes de datos heterogneas. Sistemas de una empresa debe ser capaz de manejar los problemas de compatibilidad entre los formatos de sus fuentes "de datos y el formato de sus propias fuentes de datos. Esto se refiere al atributo de la interoperabilidad de un sistema. El sistema debe ser capaz de conectarse a una amplia gama de fuentes de datos y recuperar informacin. Si un CMS debe ser regularmente modificada para permitir diferentes fuentes de datos, los gastos para mantener el sistema

podra llegar a ser enorme y por lo tanto llevar una buena parte de los beneficios potenciales para el negocio. Tambin es beneficioso si CMS de una organizacin se puede adaptar fcilmente a diferentes tipos de fuentes de datos. CMSs tpicamente abordar este problema mediante la colocacin de una capa de acceso de datos entre las entidades de negocio y las fuentes de datos. Otro atributo deseable que un CMS podra tener es su reutilizacin. Si las implementaciones utilizadas en los proyectos anteriores se puede utilizar para desarrollar otras nuevas, entonces el tiempo de desarrollo puede ser ms corto y menos costoso. Problemas conocidos se encuentran a las ltimas ejecuciones se pueden prevenir. La arquitectura genrica de un CMS es muy similar de una industria a otra. Por ejemplo, la mayora de CMS suelen ser desarrollados para soportar un entorno distribuido utilizando los servicios. La mayora de CMS requieren la capacidad de acceder a un conjunto heterogneo de fuentes de datos. Por lo tanto, mediante el desarrollo de un esqueleto de sistemas CMS que proporcionan estas capacidades compartidas permite a los desarrolladores reutilizar los componentes fundamentales. La agilidad es tambin un atributo deseable para los Sistemas de Gestin de Contenidos. Esto se refiere a la velocidad a la que las respuestas estn disponibles para las solicitudes de modificacin realizadas por los clientes. El uso de algunos de los Servicios Oriented Architecture (SOA) principios, los desarrolladores de CMS pueden reducir el tiempo que toma para modificar las capacidades de la CMS.

Herramientas y Modelos
Hay varias herramientas y modelos que pueden ayudar a un diseo ms flexible y adaptable CMS. Los siguientes son algunos de ellos: Hibernate (Java), NHibernate (NET.) Y Service Data Objects (SDO). Meta de Hibernate es aliviar el desarrollador de un 95 por ciento de codificacin manual con SQL y la API de JDBC. Hibernate Core para Java genera SQL para los programadores, alivia un manual de manejo del conjunto de resultados de JDBC y conversin de objeto, y mantiene una aplicacin porttil para todas las bases de datos SQL. Un Sistema de Gestin de Contenidos (CMS) apoya la creacin, gestin, distribucin, publicacin y descubrimiento de la informacin corporativa. Cubre el ciclo de vida completo de las pginas de una pgina web, de proporcionar herramientas sencillas para crear el contenido, publicar y finalmente archivar. Tambin proporciona la capacidad de gestionar la estructura de los contenidos, el aspecto de las pginas publicadas, y la navegacin proporcionados a los usuarios. Todas estas operaciones estn firmemente asociado con la base de datos y SQL es la base de datos ms ampliamente utilizado lenguaje de gestin de negocio. Un

programador debe manejar manualmente conjunto de resultados de JDBC y conversin objeto y mantenga una aplicacin porttil para todas las bases de datos SQL. Estas cargas de trabajo son enormes sin Hibernate. Hibernate puede asignar entidades y propiedades particulares de expresiones SQL, la carga de optimizar el objeto con varias opciones de ir a buscar y almacenamiento en cach, se adapta a cualquier entorno y el proceso de desarrollo [5]. Por lo tanto, Hibernate puede reducir la mayora de los implicados en la codificacin manual de bases de datos relacionadas con las tareas y por lo tanto hacer que la gestin de contenidos mucho ms fcil. NHibernate es un puerto de Hibernate Core para Java para el Marco. NET. Se maneja la persistencia NET lisos. Hacia y desde una base de datos relacional subyacente. Originalmente ser un puerto de Hibernate 2,1, la API de NHibernate es muy similar a la de Hibernate. Todo el conocimiento existente y Hibernate Hibernate documentacin tanto, es directamente aplicable a NHibernate [5]. En la creacin de un CMS, hay que generar objetos, clases, modelos de programacin y metadatos para la gestin de los contenidos estructuralmente. NHibernate apoyos naturales orientado a objetos lenguaje, utilizaciones. Conversaciones netas y modismos, soporta una gran variedad de asignaciones para colecciones y objetos dependientes, ofrece maneras de conseguir los objetos dentro y fuera de la base de datos, para personalizar SQL, para ahorrar tiempo en el procesamiento de cdigo de bytes y apoyar modelos de objetos. NHibernate tambin genera las tablas SQL y columnas as, con lo que la comodidad y alivio para los programadores de gran volumen de trabajo manual de codificacin [5]. Por ejemplo, dada una descripcin XML de sus entidades y relaciones, NHibernate genera automticamente SQL para cargar y almacenar los objetos. Si lo desea, puede describir los metadatos de mapeo de atributos en el cdigo fuente. Es compatible con la persistencia transparente para clases de objetos no tiene que seguir un modelo de programacin restrictiva. Clases persistentes no es necesario implementar ninguna interfaz o heredar de una clase base especial. Esto hace posible el diseo de la lgica de negocio utilizando llano. NET (CLR) y lenguaje orientado a objetos. Service Data Objects u Objetos de datos Web, como originalmente se conoce, es un modelo de programacin que es unificado y lenguaje independiente. Puede manejar datos provenientes de diversas fuentes como XML, relacionales, servicios web, etc Algunas de sus caractersticas incluyen: un acceso unificado a los datos de fuentes de datos heterogneas, un soporte unificado para ambos esttica y dinmica de datos API, soporte para modelos de programacin de aplicaciones desconectadas y desacoplar cdigo de cdigo de acceso de datos [4]. Dado que los sistemas de gestin de contenido pueden beneficiarse del uso de

fuentes de datos externas, SDO puede ayudar a facilitar la interoperabilidad entre sus componentes.

Conclusin
Arquitectura orientada a servicios es un enfoque arquitectnico muy prometedor. Pero debido a que se encuentra todava en su fase inicial, todava tiene algunos problemas que necesitan solucin. Ellos incluyen la seguridad y la privacidad, el rendimiento y la calidad del servicio, cifrado de datos y la transformacin, servicio de registro y publicacin / descubrimiento, y la estandarizacin de procesos de negocio y validacin [1]. Cuando estos problemas se resuelven y como ms herramientas y modelos desarrollados son, el uso de SOA se convertir en un mtodo popular para la creacin de sistemas de contenido comprensible y eficiente gestin. Tanto las empresas pequeas y grandes con el tiempo se darn cuenta del valor de SOA en trminos de desarrollo y mantenimiento de Sistemas de Content Management eficientes y de bajo costo.