<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Espacio SOA &#187; SCA</title>
	<atom:link href="http://www.espaciosoa.net/category/sca/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.espaciosoa.net</link>
	<description>Un Espacio para el Mundo SOA y BPM</description>
	<lastBuildDate>Tue, 26 May 2009 11:29:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>OSGi, un Futuro para SOA?</title>
		<link>http://www.espaciosoa.net/2008/02/11/osgi-un-futuro-para-soa/</link>
		<comments>http://www.espaciosoa.net/2008/02/11/osgi-un-futuro-para-soa/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 20:33:23 +0000</pubDate>
		<dc:creator>Kike</dc:creator>
				<category><![CDATA[Estándares]]></category>
		<category><![CDATA[SCA]]></category>
		<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://www.espaciosoa.net/2008/02/11/osgi-un-futuro-para-soa/</guid>
		<description><![CDATA[En 1999 se creo la Alianza OSGi (Open Services Gateway Initiative) en un intento de crear un modelo de componentes din&#225;micos para sistemas embebidos de red; orientado principalmente a la plataforma JAVA y que permit&#237;a la gesti&#243;n de la carga din&#225;mica, el versionado y los ciclos de vida de servicios en forma de paquetes (o [...]]]></description>
			<content:encoded><![CDATA[<p>En 1999 se creo la <a target="_blank" href="http://www.osgi.org/Main/HomePage">Alianza OSGi</a> (Open Services Gateway Initiative) en un intento de crear un modelo de componentes din&aacute;micos para sistemas embebidos de red; orientado principalmente a la plataforma JAVA y que permit&iacute;a la gesti&oacute;n de la carga din&aacute;mica, el versionado y los ciclos de vida de servicios en forma de paquetes (o componentes).</p>
<p>Con el tiempo, OSGi ha evolucionado m&aacute;s all&aacute; de un simple uso para redes dom&eacute;sticas (como fue concebido inicialmente) a un modelo de contenedor capaz de solucionar muchos de los problemas que existen actualmente en los servidores de aplicaciones (empaquetado, abstracci&oacute;n de los paquetes, carga din&aacute;mica de los mismos, dependencias, gesti&oacute;n del ciclo de vida, versionados, etc&#8230;).</p>
<p>En OSGi, un paquete o componente es poco m&aacute;s que un jar tradicional de Java, con sus interfaces, implementaciones y un fichero manifiesto. Dicho componente se podr&aacute; definir por cierta meta-informaci&oacute;n de su fichero manifiesto que especificar&aacute; los servicios exportados y los permisos necesarios para poder ser reutilizados por otros componentes.<br />
Adem&aacute;s, OSGi nos permitir&aacute; la gesti&oacute;n del ciclo de vida del software (tales como instalaci&oacute;n, parada, redespliegue, arranque o desinstalaci&oacute;n de paquetes) chequeando las dependencias existentes para el paquete tratado y evitando conflictos de ejecuci&oacute;n.<br />
Nos permite tambi&eacute;n la gesti&oacute;n de versiones de los paquetes, permitiendo la coexistencia de distintas versiones seg&uacute;n necesidades y dependencias establecidas.<br />
Por &uacute;ltimo, OSGi nos permite un modelo de Programaci&oacute;n Orientado a Servicios (aqu&iacute; basa su modelo en SOA), ya que (al contrario de EJB o RMI que necesita definir interfaces remotas) los servicios son publicados y registrados en el contenedor autom&aacute;ticamente durante la carga de los mismos.</p>
<p>Actualmente, todos los que usamos el framework de Eclipse 3.0, estamos usando OSGi de manera indirecta (Eclipse lo adopt&oacute; y de hecho fue uno de los mayores propulsores de OSGi en su momento; ahora evolucionado al <a target="_blank" href="http://www.eclipse.org/equinox/">Proyecto Equinox</a>).<br />
Lo importante, es la adopci&oacute;n de este modelo como parte de las estrategias para los productos de diversos fabricantes (<a target="_blank" href="http://cwiki.apache.org/FELIX/index.html">Apache Felix</a>, <a target="_blank" href="http://newton.codecauldron.org/">Newton</a>, <a target="_blank" href="http://www.bea.com/framework.jsp?CNT=msa.jsp&amp;FP=/content/">BEA mSA</a>, etc&#8230;) y principalmente en el lado del servidor (que es donde OSGi puede sacar su mayor potencial a relucir como parte de los servidores de aplicaciones).</p>
<p>Algunos hablan de OSGi como el pr&oacute;ximo middleware universal, las posibilidades de descubrimiento y reutilizaci&oacute;n de servicios y las posibles alianzas entre<a target="_blank" href="http://www.infoq.com/news/spring-osgi"> OSGi y Spring</a> (suma todas las caracter&iacute;sticas enunciadas sobre OSGi a la facilidad de uso de Spring a base de inyecci&oacute;n de dependencias y la programaci&oacute;n orientada a aspectos) o entre <a target="_blank" href="http://www.osoa.org/download/attachments/250/Power_Combination_SCA_Spring_OSGi.pdf?version=3">OSGi y SCA</a> (en este sentido OASIS tiene pendiente la <a target="_blank" href="http://www.theserverside.com/news/thread.tss?thread_id=46739">estandarizaci&oacute;n de SCA</a>).</p>
<p><strong>Links interesantes:</p>
<p></strong> <a href="http://www.osgi.org/Main/HomePage" target="_blank">OSGi Alliance</a><br />
<a href="http://dev2dev.bea.com/pub/a/2007/12/osgi-introduction.html" target="_blank"> An Introduction to OSGi on the Server Side</a><br />
<a href="http://underlap.blogspot.com/2007/02/is-osgi-soa.html" target="_blank">Interesante discusi&oacute;n sobre si OSGi es SOA</a><br />
<a target="_blank" href="http://www.osoa.org/download/attachments/250/Power_Combination_SCA_Spring_OSGi.pdf?version=3">Power Combination: SCA, OSGi and Spring</a><br />
<a href="http://www.oreillynet.com/onjava/blog/2008/02/on_soa_osgi_and_more.html" target="_blank">On SOA, OSGi and More</a><br />
<a href="http://soa.sys-con.com/read/492519.htm" target="_blank">Universal Middleware: What&#8217;s Happening With OSGi and Why You Should Care</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.espaciosoa.net/2008/02/11/osgi-un-futuro-para-soa/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SCA, un modelo para SOA</title>
		<link>http://www.espaciosoa.net/2007/08/13/sca-un-modelo-para-soa/</link>
		<comments>http://www.espaciosoa.net/2007/08/13/sca-un-modelo-para-soa/#comments</comments>
		<pubDate>Mon, 13 Aug 2007 19:35:14 +0000</pubDate>
		<dc:creator>Kike</dc:creator>
				<category><![CDATA[SCA]]></category>
		<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://www.espaciosoa.net/2007/08/13/sca-un-modelo-para-soa/</guid>
		<description><![CDATA[SCA (Service Component Architecture) es una tecnolog&#237;a que simplifica el desarrollo de aplicaciones dentro de una Arquitectura Orientada a Servicios (SOA). Permite crear recursos IT en servicios reusables de una manera muy sencilla. Adem&#225;s, reduce la complejidad de la creaci&#243;n de los mismos ya que unifica la forma de crear dichos servicios de una manera [...]]]></description>
			<content:encoded><![CDATA[<p>SCA (Service Component Architecture) es una tecnolog&iacute;a que simplifica el desarrollo de aplicaciones dentro de una Arquitectura Orientada a Servicios (SOA). Permite crear recursos IT en servicios reusables de una manera muy sencilla. Adem&aacute;s, reduce la complejidad de la creaci&oacute;n de los mismos ya que unifica la forma de crear dichos servicios de una manera independiente del lenguaje de programaci&oacute;n o la plataforma utilizada.<br />
Utilizando SCA se pueden implementar esos recursos IT en t&eacute;rminos de funciones de negocio y evitar la exposici&oacute;n de su programaci&oacute;n interna (con todo lo complejo que pueda llegar a ser) al usuario. No solo eso, SCA propone un modelo de ensamblaje de los componentes dando soluci&oacute;n a todo tipo de problemas como los m&eacute;todos de acceso o la seguridad.</p>
<p>Cuando hablamos de SOA hablamos de una arquitectura que nos permite conectar unidades funcionales; esto es, servicios, a trav&eacute;s de contratos bien definidos (WSDL) adem&aacute;s de toda una serie de caracter&iacute;sticas propias e intr&iacute;nsecas a la definici&oacute;n de un Servicio Web. Una de las ventajas principales es el d&eacute;bil acoplamiento y la independencia con carencia de estado de los servicios; que permite acometer cambios minimizando el impacto sobre el resto de componentes de la Arquitectura.<br />
SOA no es nuevo, muchas empresas llevan varios a&ntilde;os intentando (con m&aacute;s o menos acierto) construir arquitecturas de este tipo; ahora es cuando SCA aparece como un modelo dise&ntilde;ado para desarrollar SOA. SCA nos va a permitir encapsular o modificar aplicaciones ya existentes utilizando una &quot;abstracci&oacute;n SOA&quot;. Se va a encargar de los temas relacionados con el ensamblaje de servicios heterogeneos; que a su vez dan lugar a servicios nuevamente reutilizables y siguiendo dichos principios.<br />
SCA no es incompatible con los Servicios Web, todo lo contrario; SCA define la manera de ensamblarlos (incluso con otros elementos que no sean Servicios Web como EJB&#8217;s, CORBA, etc&#8230;)</p>
<p>El modelo de ensamblaje SCA consiste en una serie de Artefactos (o &quot;Artifacts&quot;) definidos por medio de ficheros XML. El artefacto base es una Composici&oacute;n (o &quot;Composite&quot;) que define los servicios que pueden ser accedidos. La composici&oacute;n a su vez, se define por medio de uno o m&aacute;s Componentes (o &quot;Components&quot;) que contienen las funciones u operaciones de negocio provistas por el m&oacute;dulo a trav&eacute;s de sus &quot;entry points&quot; (las implementaciones de los mismas pueden ser con cualquier lenguaje/plataforma que se quiera). Las dependencias que existan con respecto a otros componentes (ya bien sean del mismo m&oacute;dulo o de otros externos) son llamadas Referencias (o &quot;References&quot;). Y las uniones entre referencias y servicios son definidos por medio de cables (o &quot;Wires&quot;).</p>
<div align="center"><img alt="" src="http://farm2.static.flickr.com/1131/1107344970_be12328c36.jpg" /></p>
<div align="justify">Por mi propia experiencia en desarrollo de aplicaciones SCA (concretamente con la herramienta Websphere Process Server de IBM) tengo que decir que facilita bastante las cosas a la hora de componer distintos elementos. En mi caso, partiendo de servicios web ya existentes, estos se descomponen en interfaces y puntos de acceso (url endpoints independiente del protocolo a utilizar) que pueden ser utilizados para crear otros componentes (que utilizar&aacute;n dichas interfaces ya existente como referencias (&quot;References&quot;) a los servicios para as&iacute; componer nuevos componentes como procesos bpel o m&oacute;dulos java). Adem&aacute;s, se pueden exponer nuevamente dichas interfaces (u otras nuevas como composici&oacute;n de las anteriores) para ser accedidas como si de un servicio web nuevo se tratara (o bien como un componente SCA sin m&aacute;s).</p>
<p>Por &uacute;ltimo comentar, que al igual que SCA nos permite construir arquitecturas SOA de una manera m&aacute;s sencilla y &quot;componible&quot;, existe otro elemento importante que es SDO (Service Data Object); un modelo para representar datos de manera universal y que se suele utilizar con arquitecturas SCA para el intercambio de informaci&oacute;n entre elementos&#8230; pero esto ser&aacute; tema para otro post&#8230;</p>
<p><strong>Links interesantes:</strong></div>
<p></p>
<div align="justify"><a href="http://www.davidchappell.com/articles/Introducing_SCA.pdf">Introducci&oacute;n a SCA de David Chappell</a><br />
<a href="http://www.osoa.org/display/Main/Service+Component+Architecture+Home">OSOA : SCA Project</a><br />
<a href="http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications">Especificaciones SCA</a></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.espaciosoa.net/2007/08/13/sca-un-modelo-para-soa/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
