<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>1692-3324</journal-id>
<journal-title><![CDATA[Revista Ingenierías Universidad de Medellín]]></journal-title>
<abbrev-journal-title><![CDATA[Rev. ing. univ. Medellin]]></abbrev-journal-title>
<issn>1692-3324</issn>
<publisher>
<publisher-name><![CDATA[Universidad de Medellín]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S1692-33242008000100008</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Integración de procesos de negocio basados en servicios Web: Coreografía y satisfacción de restricciones]]></article-title>
<article-title xml:lang="en"><![CDATA[Integration of web service-based business processes: web-service choreography and constraint satisfaction]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Giraldo]]></surname>
<given-names><![CDATA[Jorge]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Guzmán]]></surname>
<given-names><![CDATA[Jaime A]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Ovalle]]></surname>
<given-names><![CDATA[Demetrio A]]></given-names>
</name>
<xref ref-type="aff" rid="A03"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Politécnico Colombiano Jaime Isaza Cadavid Facultad de Ingenierías ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad Nacional de Colombia Escuela de Sistemas ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A03">
<institution><![CDATA[,Universidad Nacional de Colombia Escuela de Sistemas ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>01</month>
<year>2008</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>01</month>
<year>2008</year>
</pub-date>
<volume>7</volume>
<numero>12</numero>
<fpage>141</fpage>
<lpage>155</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S1692-33242008000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S1692-33242008000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S1692-33242008000100008&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Los procesos de negocio en ocasiones necesitan funcionalidades adicionales que pueden alcanzarse empleando servicios del mismo dominio o de uno externo. Durante este procedimiento, los servicios web involucrados deben integrarse, de tal forma que sus funcionalidades individuales generen un comportamiento global. La coreografía de servicios web controla la secuencia de las interacciones entre los servicios durante el proceso de integración. Este artículo presenta una aproximación al modelado basado en restricciones de la coreografía de servicios web, a fin de lograr su automatización.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[Business processes sometimes need additional functions which can be reached through the use of services of the same domain or an external one. During this procedure, web services involved should be integrated in such a way that its individual functions can generate a global behavior. Web-service choreography controls interaction sequences among services during integration process. This article shows an approach to modeling based on web-service choreography restrictions with the purpose of achieving its automation.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[Coreografía de servicios web]]></kwd>
<kwd lng="es"><![CDATA[servicios web]]></kwd>
<kwd lng="es"><![CDATA[satisfacción de restricciones]]></kwd>
<kwd lng="en"><![CDATA[Web services choreography]]></kwd>
<kwd lng="en"><![CDATA[web services]]></kwd>
<kwd lng="en"><![CDATA[constraint satisfaction]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[  <FONT SIZE="2" FACE="Verdana">     <P ALIGN="CENTER"><B><FONT SIZE="4">Integraci&oacute;n de procesos de negocio basados en servicios Web: Coreograf&iacute;a y satisfacci&oacute;n de restricciones </FONT></B></P>     <P ALIGN="CENTER">&nbsp;</P>     <P ALIGN="CENTER"><B><FONT SIZE="3">Integration of web service-based business processes: web-service choreography and constraint satisfaction</FONT></B></P>     <P ALIGN="CENTER">&nbsp;</P>     <P ALIGN="CENTER">&nbsp;</P>     <P> Jorge Giraldo<sup>1</sup>; Jaime A. Guzm&aacute;n<sup>2</sup>; Demetrio A.   Ovalle<sup>3</sup></P>     <P> <SUP>1</SUP> Ingeniero de Sistemas, Mag&iacute;ster en Ingenier&iacute;a   de Sistemas Universidad Nacional de Colombia, Medell&iacute;n. Docente Facultad   de Ingenier&iacute;as   Polit&eacute;cnico Colombiano Jaime Isaza Cadavid. E-mail: <A HREF="mailto:jegiraldp@unal.edu.co">jegiraldp@unal.edu.co</A>, <A HREF="mailto:jegiraldo@elpoli.eud.co">jegiraldo@elpoli.eud.co</A> Tel: 4255378.</P>     <P> <SUP>2</SUP> Mag&iacute;ster en Sistemas, Docente Escuela de Sistemas Universidad   Nacional de Colombia, Medell&iacute;n. E-mail: <A HREF="mailto:jaguzman@unal.edu.co"> jaguzman@unal.edu.co</A>.   Tel: 4255378</P>     <P>  <SUP>3</SUP> PhD en Sistemas, Docente Escuela de Sistemas Universidad Nacional   de Colombia, Medell&iacute;n. E-mail: <A HREF="mailto:dovalle@unal.edu.co">dovalle@unal.edu.co</A>. Tel: 4255378 </P>     ]]></body>
<body><![CDATA[<P>&nbsp;</P>     <P>&nbsp;</P> <hr size="1" noshade>     <P><B>RESUMEN</B></P>     <P>   Los procesos de negocio en ocasiones necesitan funcionalidades adicionales   que   pueden alcanzarse empleando servicios del mismo dominio o de uno externo.   Durante este procedimiento, los servicios web involucrados deben integrarse,   de   tal forma que sus funcionalidades individuales generen un comportamiento global.   La coreograf&iacute;a de servicios web controla la secuencia de las interacciones   entre los   servicios durante el proceso de integraci&oacute;n. Este art&iacute;culo presenta   una aproximaci&oacute;n   al modelado basado en restricciones de la coreograf&iacute;a de servicios web,   a fin de   lograr su automatizaci&oacute;n.</P>     <P> <B>Palabras clave: </B>Coreograf&iacute;a de servicios web, servicios web, satisfacci&oacute;n   de   restricciones.</P> <hr size="1" noshade>     <P><B>ABSTRACT</B></P>     <P> Business processes sometimes need additional functions which can be reached   through the use of services of the same domain or an external one. During       this   procedure, web services involved should be integrated in such a way that       its individual   functions can generate a global behavior. Web-service choreography controls   interaction sequences among services during integration process. This article       shows   an approach to modeling based on web-service choreography restrictions       with the   purpose of achieving its automation.</P>     <P> <B>Keywords: </B>Web services choreography, web services, constraint satisfaction. </P> <hr size="1" noshade>     <P>&nbsp;</P>     <P><B><FONT SIZE="3">INTRODUCCI&Oacute;N</FONT></B></P>     ]]></body>
<body><![CDATA[<P> La integraci&oacute;n de servicios web, bajo la arquitectura   orientada a servicios (SOA), ha sido un&aacute;   rea de activa investigaci&oacute;n en los &uacute;ltimos a&ntilde;os;   es un paradigma que utiliza servicios web como   elementos fundamentales para el desarrollo de   aplicaciones complejas (Papazoglou y Georgakopoulos,   2003). Existen dos conceptos que abordan   el problema de la integraci&oacute;n efectiva de procesos   de negocio basados en tecnolog&iacute;as web; ellos son:   la coreograf&iacute;a y la orquestaci&oacute;n de servicios web   (Peltz, 2003). Estos conceptos dirigen sus esfuerzos   a describir de manera global las interacciones y   cambios de estado, as&iacute; como el flujo interno del   proceso. En una interacci&oacute;n de servicios la coreograf&iacute;a   puede verse como una capa superior en abstracci&oacute;n   sobre la orquestaci&oacute;n, ya que describe el   comportamiento global de la aplicaci&oacute;n compleja.   Para el manejo y representaci&oacute;n de estos conceptos   existen diversos est&aacute;ndares como WSCL (W3C,   2002), XLANG (Microsoft, 2001), WSFL (IBM,   2001) y el WSCDL (Kavantzas et al, 2004) que   facilitan su procesado. No obstante, en el campo   acad&eacute;mico la descripci&oacute;n de procesos basados en   servicios web se realiza por medio de lenguajes de   marcado como el OWL-S (Martin y Burstein, 2001)   no es m&aacute;s que un lenguaje de marcado para servicios   web, basados en una ontolog&iacute;a de los mismos.   La estructura de la ontolog&iacute;a es motivada por la   necesidad de proveer tres tipos esenciales de conocimiento   sobre un servicio, cada uno caracterizado   con el fin de satisfacer los siguientes interrogantes: &iquest;Qu&eacute; funcionalidad provee el servicio? &iquest;C&oacute;mo es   usado? &iquest;C&oacute;mo se interact&uacute;a con este?</P>     <P> La coreograf&iacute;a puede ser vista como un problema   basado en restricciones, debido a que las   interacciones pueden ser modeladas de tal manera   que restricciones aplicadas a estas restrinjan la funcionalidad   y desempe&ntilde;o de las entradas y salidas   de los servicios web. Un m&eacute;todo que se acomoda   al contexto de los servicios web es el problemas   de satisfacci&oacute;n de restricciones (PSR) (Russell y   Norving, 2004); este es un m&eacute;todo de soluci&oacute;n de   b&uacute;squeda de estados a partir de un conjunto de   restricciones.</P>     <P> En este trabajo se busca proponer una soluci&oacute;n   para automatizar la especificaci&oacute;n de una coreograf&iacute;a   de servicios web en el lenguaje WSCDL a   partir de un grupo de servicios web y un conjunto   de objetivos; as&iacute; se pretende modelar, con base en   restricciones, las interacciones entre los servicios   que componen la coreograf&iacute;a. El presente art&iacute;culo   aborda la definici&oacute;n de los componentes b&aacute;sicos de   la coreograf&iacute;a, as&iacute; como aquellos requerimientos   necesarios para lograr cierto grado de automatizaci&oacute;n   sin perder la esencia de esta. Asimismo,   se presenta una revisi&oacute;n de estado de arte de los   PSR. La propuesta es implementar un modelo de   restricciones, que valide informaci&oacute;n provista por   la definici&oacute;n de los servicios web y genere una   descripci&oacute;n de un proceso de coreograf&iacute;a.</P>     <P> El art&iacute;culo presenta una revisi&oacute;n del estado del   arte en &aacute;rea de la coreograf&iacute;a de servicios web y de   los PSR. La idea que se propone es implementar un   modelo de satisfacci&oacute;n de restricciones, que valide   informaci&oacute;n provista por la definici&oacute;n interna de   los servicios web y genere una definici&oacute;n de un   proceso de coreograf&iacute;a de servicios web.</P>     <P> El documento se estructura de la siguiente   manera: en la secci&oacute;n 2 se presenta el concepto   de coreograf&iacute;a de servicios web. En la secci&oacute;n 3   se presenta una revisi&oacute;n del estado de arte para la   coreograf&iacute;a, tanto del &aacute;mbito industrial como acad&eacute;mico.   En la secci&oacute;n 4 se exponen los conceptos   b&aacute;sicos de los PSR y los trabajos hechos en torno a   estos. En la secci&oacute;n 5 se analizan los componentes   b&aacute;sicos de la coreograf&iacute;a y su posible manejo mediante   su representaci&oacute;n como PSR. Finalmente   en la secci&oacute;n 6, se exponen las conclusiones y se   plantean trabajos futuros.</P>     <P>&nbsp;</P>     <P><B><FONT SIZE="3">1. COREOGRAF&Iacute;A DE SERVICIOS WEB</FONT></B></P>     <P> Los servicios web d&iacute;a a d&iacute;a est&aacute;n presentes   en las transacciones hechas por negocios que   aprovechan est&aacute;ndares web. En algunos casos los   requerimientos de informaci&oacute;n planteados por el   usuario no son alcanzados a trav&eacute;s de un simple   servicio web, sino que se hace necesario combinar   varios de ellos para generar un servicio que pueda   satisfacer los objetivos del usuario. Las interacciones   que ocurren entre estos a fin de lograr su   cometido es inter&eacute;s de la coreograf&iacute;a, ya que esta   describe la secuencia y condiciones en la que los   datos son intercambiados por los servicios web.</P>     <P> La coreograf&iacute;a de servicios web describe las   interacciones observables entre los servicios, con   el fin de lograr los objetivos propuestos. El t&eacute;rmino   observable se refiere a aquellas interacciones   que sean referenciadas como pertinentes para el   objetivo a alcanzar durante la integraci&oacute;n.</P>     <P> La coreograf&iacute;a puede entenderse como un   proceso p&uacute;blico y no ejecutable; es p&uacute;blico porque   define el comportamiento com&uacute;n y globalmente   visible entre los diferentes participantes en una   interacci&oacute;n; por otro lado, es no ejecutable porque   no est&aacute; pensado para ser llevado a cabo, sino para   actuar como un protocolo de negocio que dicta   reglas de interacci&oacute;n que deben ser cumplidas por   las entidades participantes (Peltz, 2003).</P>     ]]></body>
<body><![CDATA[<P> En el siguiente pseudoc&oacute;digo se aprecia la   diferencia entre orquestaci&oacute;n y coreograf&iacute;a. En   el lado izquierdo se define la coreograf&iacute;a; aqu&iacute;  un servicio A env&iacute;a una petici&oacute;n a un servicio B,   luego B env&iacute;a dicha petici&oacute;n en paralelo a C y D,   y espera una confirmaci&oacute;n, combina las respuestas   de C y D y se la env&iacute;a a A.</P>     <P> En el lado derecho se encuentra la definici&oacute;n   del servicio B, desde le punto de vista de la orquestaci&oacute;n;   se puede apreciar el intercambio de   mensajes, pero la descripci&oacute;n se hace a partir de   un individuo, lo que conllevar&iacute;a a realizar dicha   descripci&oacute;n en todos los servicios incluyentes.   Es posible realizar una coreograf&iacute;a mediante un   conjunto de orquestaciones de cada uno de los   componentes que la integran.</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08tb1.JPG" WIDTH="556" HEIGHT="200"><A NAME="tb1"></A></P>     <P>La coreograf&iacute;a de servicios web es tema de   investigaci&oacute;n por parte de varios grupos, tanto   del &aacute;mbito industrial como del acad&eacute;mico. En el   siguiente apartado se expone la manera en que estos modelan y describen la coreograf&iacute;a.</P>     <P>&nbsp;</P>     <P> <B><FONT SIZE="3">2. DESCRIPCI&Oacute;N Y MODELAMIENTO   DE UNA COREOGRAF&Iacute;A</FONT></B></P>     <P> En el &aacute;mbito industrial es com&uacute;n encontrar   distintos est&aacute;ndares que ayudan a la descripci&oacute;n   de la integraci&oacute;n de procesos de negocio; estos abordan tanto la orquestaci&oacute;n   como la coreograf&iacute;a;   entre ellos se encuentran: XLANG (Microsoft,   2001), WSFL (IBM, 2001), WSCI (W3C, 2001),   WSCDL (Kavantzas et al, 2004) y BPEL4WS (Andrews   et al., 2003).</P>     <P> WSCL (Web Services Conversation Language)   es un lenguaje est&aacute;ndar para conversaciones   simples entre dos servicios web; con frecuencia es   modelado como aut&oacute;matas de estado finito (Kuno   et al, 2001). XLANG es una especificaci&oacute;n desarrollada   por Microsoft para su servidor BizTalk;   este est&aacute;ndar se ocupa de la creaci&oacute;n de procesos   de negocio y las interacciones entre proveedores   de servicios. Por su parte, WSFL (Web Services   Flow Language) fue una propuesta de la IBM que   describe tanto los flujos privados como p&uacute;blicos.</P>     <P> La interfaz de coreograf&iacute;a de servicios web   (WSCI) es una especificaci&oacute;n gestada por Sun,   SAP, BEa e Italio, que define un lenguaje basado en   XML (Berners-Lee et.al, 2001) para la colaboraci&oacute;n   entre servicios web (Papazoglou y Yang, 2002). Esta   especificaci&oacute;n soporta correlaci&oacute;n de mensajes,   reglas de secuencias, manejo de excepciones, transacciones   y colaboraciones din&aacute;micas. Su sucesor   es el lenguaje de descripci&oacute;n de coreograf&iacute;a de   servicios web (WS-CDL), basado en sintaxis XML,   que describe la colaboraci&oacute;n punto a punto entre   las partes involucradas y permite definir una vista   global, as&iacute; como el comportamiento global observable   de los servicios web. La especificaci&oacute;n de WSCDL   contiene las estructuras provenientes de su   antecesor, lo que garantiza control y ordenamiento   de los mensajes que componen las interacciones   generadas entre los servicios web.</P>     <P> La especificaci&oacute;n de BPEL4WS fue desarrollada   por Microsoft, IBM, Siebel Systems, BEA y SAP.   BPEL4WS modela el comportamiento de servicios   web que participan en la integraci&oacute;n de procesos   de negocio. La descripci&oacute;n del servicio es ejecutada   por un motor de orquestaci&oacute;n que coordina todas   las actividades y compensa el proceso global cuando   ocurre alg&uacute;n error; lo que puede ser con mensajes   de inactividad o de advertencia.</P>     ]]></body>
<body><![CDATA[<P> En la <A HREF="#fig1">figura 1</A> se presenta un fragmento de c&oacute;digo   WSCDL, en donde se describe parte de una coreograf&iacute;a   de subastas electr&oacute;nicas, la cual se compone de   tres roles: comprador, subasta y vendedor; tambi&eacute;n se   definen las relaciones entre estos roles y su tipo.</P>     <P> Desde el enfoque acad&eacute;mico, Brogi et al (2004)   presentan una formalizaci&oacute;n para las coreograf&iacute;as   descritas en WSCI, por medio del enfoque del&aacute;   lgebra de procesos (Bergstra, 2001) en donde   chequea la compatibilidad entre servicios web para   su interoperaci&oacute;n (Canal et al., 2001). La manera   en que se representa la informaci&oacute;n es a trav&eacute;s de   la formalizaci&oacute;n de los procesos; se identifican en   estos los canales de comunicaci&oacute;n para las interacciones,   valores para los datos intercambiados y la   secuencia de dichos valores.</P>     <P> McKinley et al (1999) exponen un marco de   trabajo para el desarrollo colaborativo de aplicaciones   web; en s&iacute; es una capa intermedia la cual   se rige por el paradigma objetual. Otro trabajo de   investigaci&oacute;n es el de Benatallah et al (2002), donde   se describe el dise&ntilde;o e implementaci&oacute;n de un   sistema de composici&oacute;n de servicios web, usando   un paradigma declarativo; la herramienta de representaci&oacute;n   de las interacciones son los diagramas de   actividades de UML (Booch, 1998).</P>     <P> Burdett y Kavantzas (2003), por su parte, aprovechan   la capacidad de comunicaci&oacute;n que ofrecen   los servicios web sobre redes de comunicaci&oacute;n   adicionando etiquetas de control a los mensajes   SOAP embebidos en los documentos XML que   son intercambiados durante una integraci&oacute;n de   servicios.</P>     <P> Wombacher et al (2004) argumentan que bajo   la arquitectura orientada a servicios no existe en   la actualidad un servicio web que realice una b&uacute;squeda   y acoplamiento de procesos de negocio; por   tanto, propone un esquema para solucionarlo; el   nivel de abstracci&oacute;n manejado aqu&iacute; para el modelamiento   de la coreograf&iacute;a tiene en cuenta el flujo   de mensajes y su tipo.</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08fig1.JPG" WIDTH="453" HEIGHT="452"><A NAME="fig1"></A></P>     <P><B>Figura 1. </B>Fragmento c&oacute;digo WSCDL</P>     <P> Foster et al (2004) proponen una aproximaci&oacute;n   basada en un modelo para la verificaci&oacute;n de   las interacciones que conjuntamente trabajan para   coordinar la composici&oacute;n de servicios web. Lo que   se intenta es, a partir de la orquestaci&oacute;n de cada   uno de los servicios involucrados, trasladar dichas   descripciones al dominio de los procesos de estado   finito, en donde se identifican los mensajes. La   soluci&oacute;n desarrollada actualmente es un plugin   (Foster, 2003).</P>     <P> En un posterior trabajo (Foster et al, 2006) se   aborda el comportamiento de una composici&oacute;n de   servicios web implementados en BPEL; el modelado   se realiza en WSCDL. Los aspectos tenidos en cuenta   son restricciones u obligaciones sobre las interacciones   entre las partes; estas obligaciones son modeladas   en diagramas de secuencia de mensajes.</P>     <P> Jansen et al (2005) proponen un modelo   para poder extraer un protocolo a partir de una   especificaci&oacute;n de un programa y verifica el nivel   de adherencia generado por el protocolo frente a   su antecedente. Es complementaria la idea de la   generaci&oacute;n autom&aacute;tica de una descripci&oacute;n de una   coreograf&iacute;a de servicios web, ya que un protocolo   de comunicaci&oacute;n solo aplica reglas a los individuos,   es decir, los comportamientos individuales,   dejando a un lado la vista global (Vallecillo et al,   2000). El enfoque que se sigue en cuanto a la definici&oacute;n   de coreograf&iacute;a es el manejo de los mensajes   y algunas condiciones entre estos.</P>     ]]></body>
<body><![CDATA[<P>En Mendling y Hafner (2005) se expone un   mapeo conceptual entre WSCDL y BPEL, de manera   que pueda generarse una descripci&oacute;n de una   orquestaci&oacute;n a partir de un lenguaje que describe   coreograf&iacute;as. Esta mapeo tiene en cuenta las etiquetas   donde se describen los tipos de mensajes,   como son de petici&oacute;n, respuesta o confirmaci&oacute;n.   A lo anterior se vislumbra soluciones en cuanto al   manejo y an&aacute;lisis de documentos de definiciones   de procesos a fin de lograr cierto de grado de automatizaci&oacute;n y formalidad en su manejo.</P>     <P> La siguiente tabla presenta un resumen de los   distintos enfoques que se tienen para trabajar en   dominios de la coreograf&iacute;a de servicios web. Aqu&iacute;  se comparan los trabajos realizados en torno a la   coreograf&iacute;a versus caracter&iacute;sticas tales como: tipo   de mensajes (sean de petici&oacute;n, respuesta o ambos),   estructura del mensaje (formato de los datos), condiciones   de env&iacute;o de informaci&oacute;n (restricciones)   y por &uacute;ltimo tecnolog&iacute;a usada, determinando su   participaci&oacute;n con un SI o un NO.</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08tb2.JPG" WIDTH="556" HEIGHT="339"><A NAME="tb2"></A></P>     <P><B>Tabla 1.</B> Enfoques hacia la coreograf&iacute;a.</P>     <P>Se puede apreciar que pocos estudios se detienen   a trabajar con la estructura del mensaje, al   igual que con condiciones que estos deben cumplir   para poder continuar con la coreograf&iacute;a planteada.   En la columna de mecanismos de formalizaci&oacute;n   en algunas celdas no existe informaci&oacute;n; esto se   debe al nivel en que abordan las soluciones, ya que   algunas solo alcanzan fases de an&aacute;lisis, sin pensar en la implementaci&oacute;n.</P>     <P> Debido a la versatilidad de descripciones para   la coreograf&iacute;a de servicios web, es posible representarla   desde un nivel en el cual solo se definan   los mensajes a ser enviados y su secuencia, hasta   condiciones espec&iacute;ficas de la estructura de estos.</P>     <P>Por ello se hace necesario en la automatizaci&oacute;n   de descripciones de coreograf&iacute;a de servicios web   delimitar los alcances de la funcionalidad.</P>     <P>Una alternativa es aplicar restricciones que   deben ser satisfechas por parte de los componentes   involucrados en la coreograf&iacute;a a trav&eacute;s de susracciones.   Sistem&aacute;ticamente las restricciones   pueden ser satisfechas por medio de propuestas   provenientes de &aacute;reas como la inteligencia artificial.   A este tipo de problemas pertenecen, los   problemas de satisfacci&oacute;n de restricciones (PSR).   En el siguiente apartado se presentan algunos   conceptos b&aacute;sicos referentes al tema en cuesti&oacute;n   y c&oacute;mo estos pueden involucrarse en el contexto de los servicios web.</P>     <P>&nbsp;</P>     <P> <B><FONT SIZE="3">3. SATISFACCI&Oacute;N DE     RESTRICCIONES</FONT></B></P>     ]]></body>
<body><![CDATA[<P> Un problema de satisfacci&oacute;n de restricciones   (PSR) est&aacute; definido por un conjunto de variables,   X1, X2&#8230;, Xn y un conjunto de restricciones, C1,   C2&#8230;, Cn. Cada variable Xi tiene asociado un   dominio no vac&iacute;o Di, de valores posibles (Russell,   2004). Cada restricci&oacute;n Ci implica alg&uacute;n subconjunto   de variables y especifica las combinaciones   aceptables de valores para ese subconjunto. Un   ejemplo conocido que puede ser formulado como   un PSR es el cl&aacute;sico problema de coloraci&oacute;n del   mapa (Appel, 1977).</P>     <P> Algunos PSR con frecuencia requieren soluciones   que maximicen una funci&oacute;n objetivo, como   en Larrosa y Meseguer (2003), donde se presentan   algunas t&eacute;cnicas para resolver un PSR definido por una red de restricciones.   Aunque existen m&aacute;s   variaciones de dichas t&eacute;cnicas (Dechter, 2003),   solo se presentan m&eacute;todos como el de b&uacute;squeda,   inferencia e h&iacute;brida.</P>     <P> Se distinguen dos tipos de b&uacute;squeda para resolver   de una manera directa un PSR. La b&uacute;squeda   sistem&aacute;tica (Barber y Salido, 2003) y la b&uacute;squeda   local (Morris, 1993). Los m&eacute;todos de b&uacute;squeda   local resultan en ocasiones eficaces en la resoluci&oacute;n   de muchos PSR. Estos utilizan una formulaci&oacute;n   de estados completa; el estado inicial asigna un   valor a cada variable, y la funci&oacute;n sucesora; por   lo general, trabajan cambiando el valor de cierta   variable a la vez.</P>     <P> En la b&uacute;squeda sistem&aacute;tica, el espacio del estado   del problema se estructura mediante un &aacute;rbol   de b&uacute;squeda. Cada nodo del &aacute;rbol representa una   asignaci&oacute;n de variables definida por el camino que   una el nodo con la ra&iacute;z. Los algoritmos de Backtracking   (Bart&aacute;k, 1999) son la base fundamental   de los algoritmos de b&uacute;squeda sistem&aacute;tica para la   resoluci&oacute;n de PSR.</P>     <P> Los PSR se han implementado en varioscampos de la ciencia, entre ellos cuentan   mucho los problemas de asignaci&oacute;n de recursos, tanto en   terminales a&eacute;reos (Chow, 1997), como en atracaderos   de barcos (Kima et al., 2004). En &aacute;reas como   la Ingenier&iacute;a de Sistemas los PSR apoyan procesos   como la localizaci&oacute;n y detecci&oacute;n de errores en   modelos (Piechowiak, 2005). En este trabajo se   propone un procedimiento para detectar y corregir   errores en los modelos de hardware y software; este   procedimiento se trabaja desde el punto de vista   de la Diagnosis (Console y Torasso, 1991). Un   modelo basado en Diagnosis consiste en comparar   el comportamiento que un componente puede   ofrecer con otro de similares caracter&iacute;sticas, pero   en ambiente real.</P>     <P> Con el uso de la programaci&oacute;n orientada a   componentes (Szyperski, 1997), aspectos como su   distribuci&oacute;n y su posterior integraci&oacute;n abren la posibilidad   de distintas aplicaciones en esta &aacute;rea bajo   la perspectiva de la satisfacci&oacute;n de restricciones;   en especial en ambientes distribuidos (Faltings y   Yokoo, 2005).</P>     <P> En (Aiello y Papazoglou, 2002) se presenta   una arquitectura de trabajo para la interacci&oacute;n   de servicios web basada en planificaci&oacute;n (Rao, 2003) y satisfacci&oacute;n   de restricciones. Un lenguaje   de peticiones para servicios web (WSRL &#8211; Web   Services Request Language) se dise&ntilde;&oacute; sobre la base   de esta arquitectura. Las restricciones se presentan   al momento de averiguar circunstancias que evitan   la correcta generaci&oacute;n del plan, ayudando a su reconfiguraci&oacute;n,   b&uacute;squeda de recursos o creaci&oacute;n de   interacciones adicionales.</P>     <P> En un posterior trabajo basado en conceptos   manejados por el WSRL, se plantea enriquecer sus   estructuras con componentes sem&aacute;nticos, lo que   da paso a un lenguaje para la planificaci&oacute;n de la   composici&oacute;n de servicios (Yang y Papazoglou, 2002).   Un trabajo similar codifica como restricciones las   peticiones del cliente a un proceso de composici&oacute;n   (Lazovik et al, 2005).</P>     <P> Un trabajo que se enfoca en la verificaci&oacute;n a   priori es (Cernura del R&iacute;o, 2002a); especialmente   trabaja en el dise&ntilde;o de software, y se fundamenta en   el conocimiento disponible por parte del componente.   Dicha soluci&oacute;n tiene en cuenta restricciones   de viabilidad inmediata y transferencia tecnol&oacute;gica,   verificaci&oacute;n est&aacute;tica y autom&aacute;tica.</P>     <P> En Cernura del R&iacute;o (2002b), se plantea una   aproximaci&oacute;n al dominio de los servicios web y sus   procesos de integraci&oacute;n como la orquestaci&oacute;n y la   coreograf&iacute;a; asimismo, los lenguajes que apoyan su   definici&oacute;n y descripci&oacute;n, el BPEL y el WS-CDL. Se   considera importante realizar dicha detecci&oacute;n de   errores en paralelo a la descripci&oacute;n de los procesos   de orquestaci&oacute;n y coreograf&iacute;a.</P>     ]]></body>
<body><![CDATA[<P> La satisfacci&oacute;n de restricciones es usada para   representar y resolver problemas relacionados con   el &aacute;rea de la inteligencia artificial; asimismo, ofrece   un potencial llamativo para la representaci&oacute;n del   conocimiento. En Channa et al (2005), se emplean   las restricciones y su posterior satisfacci&oacute;n en la   composici&oacute;n din&aacute;mica de servicios web, para   encontrar el conjunto apropiado de servicios, los   cuales deben cumplir ciertos par&aacute;metros representados   por las restricciones definidas.</P>     <P>&nbsp;</P>     <P> <B><FONT SIZE="3">4. DISCUSI&Oacute;N</FONT></B></P>     <P> Observando distintos enfoques y mecanismos   de representaci&oacute;n, manejo de informaci&oacute;n y validaci&oacute;n,   la coreograf&iacute;a de servicios web puede ser   considerada mediante la simple definici&oacute;n de una   secuencia de mensajes. Sin embargo, a fin de lograr   un cierto nivel de automatizaci&oacute;n en la descripci&oacute;n   de coreograf&iacute;as, los siguientes componentes son   hasta ahora necesarios para lograrlo. El primero de   ellos es el tipo de mensaje, que define los patrones   de interacci&oacute;n; estos seg&uacute;n estructuras propuestas   por el est&aacute;ndar WSCDL son expresados como una   petici&oacute;n y petici&oacute;n-respuesta. No obstante, variaciones   de estas pueden ser determinantes al momento   de aplicar restricciones sobre las interacciones.</P>     <P> Las restricciones a las interacciones deben ser   tenidas en cuenta si se desea controlar la participaci&oacute;n   de los servicios web. Sin embargo, este punto   es dependiente de la formalizaci&oacute;n que se haga a   las interacciones, ya que la expresividad brindada   facilita o no la definici&oacute;n de restricciones apropiadas   a un proceso de coreograf&iacute;a.</P>     <P> Por &uacute;ltimo, y no menos importante, est&aacute; la   estructura de los mensajes; esto quiere decir acceso   a los tipos de datos intercambiados y posibles manipulaci&oacute;n   o aprovechamiento de estos, al momento   de validaci&oacute;n de restricciones.</P>     <P>No obstante, cabe notar que todos estos   componentes integran las interacciones; a esto se   suma que son una actividad clave para expresar el   intercambio de mensajes que pueden presentarse.   Por ello es indispensable realizar un an&aacute;lisis y   plantear una representaci&oacute;n formal de tales interacciones,   bajo el contexto de la coreograf&iacute;a de   servicios web.</P>     <P>  <B>4.1 Interacciones y su formalizaci&oacute;n</B></P>     <P>  Basadas en los elementos que dispone el WSCDL,   se presentan las actividades interacci&oacute;n, asignaci&oacute;n   y nulo (Barros et al, 2005). Una interacci&oacute;n es   el resultado del intercambio de informaci&oacute;n entre los roles participantes   y una sincronizaci&oacute;n posible   entre estos. Una asignaci&oacute;n declara un nuevo valor   sobre una variable o una expresi&oacute;n de otra variable.   Por &uacute;ltimo, la actividad nula no realiza ninguna   operaci&oacute;n, pero puede ser empleada para definir   relaciones permanentes o validaci&oacute;n de estas.</P>     <P> Otro componente son las actividades que   presentan estructuras de control para su secuencia   de intercambio; estas incluyen la secuencia, el   paralelo y la escogencia. Una actividad secuencial   describe una o m&aacute;s actividades que son ejecutas secuencialmente.   Una actividad en paralelo describe   una o m&aacute;s actividades que se ejecutan en cualquier   momento o en el mismo tiempo. La representaci&oacute;n   formal de las interacciones y especialmente   en ambientes de procesos de negocio y su integraci&oacute;n,   como lo es la coreograf&iacute;a, ha venido siendo   objeto de aproximaciones por parte del dominio   del &aacute;lgebra de procesos. El prop&oacute;sito de este documento   es modelar mediante &aacute;lgebra de procesos   las interacciones de la coreograf&iacute;a de servicios para   posteriormente definir descripciones y la manera   de formalizarlas, y as&iacute; puedan ser manipuladas por   algoritmos de soluciones basadas en restricciones.   El &aacute;lgebra de procesos permite expresividad al   momento de describir el comportamiento de   los servicios web. Algunos autores (Mederiht y   Bjorg, 2003) argumentan que las interacciones   entre servicios web deben ser descritas por medio   de lenguajes de descripci&oacute;n de procesos como el   BPEL, pero este &uacute;ltimo no permite la definici&oacute;n   de procesos globales de interacci&oacute;n ni tampoco   razonar sobre el mismo.</P>     ]]></body>
<body><![CDATA[<P> El &aacute;lgebra de procesos ha tenido sus acercamientos   al mundo de los servicios web, en especial   pi-c&aacute;lculo (Parrow, 2001), pero su razonamiento   en particular se orienta hacia la representaci&oacute;n de   flujos de trabajo, el cual se relaciona m&aacute;s con la   orquestaci&oacute;n; tal es el caso del trabajo de Pulhlman   y Weske (2005), donde facilitan la formalizaci&oacute;n de   patrones para flujos de trabajo con pi-c&aacute;lculo.</P>     <P> Otra &aacute;lgebra de procesos es el CSS (Milner,   1989); su mayor potencialidad es poder ser traducida   a cualquiera otra &aacute;lgebra. Brogi et al (2004)   presentan una formalizaci&oacute;n a coreograf&iacute;as descritas   en WSCI; las caracter&iacute;sticas intr&iacute;nsecas del   WSCI sugieren el uso de algebra de procesos para   formalizarlo. A continuaci&oacute;n se presenta una breve   introducci&oacute;n a la sintaxis del CSS. Cabe destacar   que operadores como restricci&oacute;n o condicional   no son tenidos en cuenta, lo que limita un poco   el enfoque que se persigue.</P>     <P> Un proceso en CSS est&aacute; dado de la siguiente   forma:  </P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq1.JPG" WIDTH="258" HEIGHT="43"><A NAME="eq1"></A></P>     <P>Donde a es un canal,  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy01.JPG" WIDTH="9" HEIGHT="11"> es   un valor de un dato,    <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy02.JPG" WIDTH="11" HEIGHT="14"> es   una secuencia de valores y <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy03.JPG" WIDTH="12" HEIGHT="15"> denota   un proceso vac&iacute;o. Cada proceso puede   ser expresado por una acci&oacute;n at&oacute;mica <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy04.JPG" WIDTH="14" HEIGHT="13">,   compuesta (en paralelo <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy05.JPG" WIDTH="32" HEIGHT="19">o   escogencia <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy06.JPG" WIDTH="21" HEIGHT="15">)   por otros procesos. Las acciones at&oacute;micas est&aacute;n dadas por entradas  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy07.JPG" WIDTH="34" HEIGHT="19">,   salidas <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy08.JPG" WIDTH="34" HEIGHT="18">  o   simplemente acciones internas <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy09.JPG" WIDTH="13" HEIGHT="13">. Un trabajo similar, donde se emplea el &aacute;lgebra   CSS se presenta en (Gwen et al, 2004).</P>     <P> Hongli et al (2006) proponen un peque&ntilde;o   lenguaje denominado CDL como un modelo   formal simplificado del WSCDL. CDL incluye   conceptos importantes relacionados con los roles   participantes y la colaboraci&oacute;n entre estos a fin de   lograr una coreograf&iacute;a. No obstante, enfatiza en   las estructuras de control (secuencia, paralelo y escogencia)   que describen las actividades y no en las   interacciones y sus patrones de representaci&oacute;n.</P>     <P> Las interacciones, inter&eacute;s de este documento,   han sido formalizadas por Busi et al (2005) a trav&eacute;s   del dise&ntilde;o de un lenguaje simple de coreograf&iacute;a,   el CL (Choreography Language). Este lenguaje   representa el primer paso para la definici&oacute;n de   un marco de trabajo para el an&aacute;lisis, dise&ntilde;o y   desarrollo de coreograf&iacute;as.</P>     <P>La definici&oacute;n que brinda el CL se compone   de una parte declarativa y una conversacional. La   primera se encarga de la definici&oacute;n de los roles   incluidos por los participantes en la conversaci&oacute;n.   La parte conversacional describe el orden de las interacciones entre los roles.</P>     <P> CL se fundamenta en los conceptos de roles   e interacciones. Los primeros representan el comportamiento   que un participante exhibe a fin de   totalizar las actividades definidas por la coreograf&iacute;a.   Mientras las interacciones enfatizan sobre le intercambio   de informaci&oacute;n entre los roles.</P>     <P> Cada rol puede almacenar variables y exhibir   operaciones. A cada rol se asocia un grupo de variables,   las cuales representan el estado interno de   cada rol, que ser&aacute;n usados por las interacciones.   Las operaciones de un rol p son esencialmente el   punto de acceso empleado por otros roles para   interactuar con p. Las operaciones pueden ser una   de las siguientes modalidades o patrones de interacciones:   petici&oacute;n o petici&oacute;n-respuesta. La sintaxis   empleada en este lenguaje es la siguiente:</P>     ]]></body>
<body><![CDATA[<P> Sea Var un conjunto de variables representadas   por x, y, z, k. Sean  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy10.JPG" WIDTH="13" HEIGHT="17">  y     <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy11.JPG" WIDTH="13" HEIGHT="19">  duplas   de variables, que se puedan expresar por ejemplo como <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy10.JPG" WIDTH="13" HEIGHT="17"> = (x1, x2, x3, &#8230;, xn ).</P>     <P> Sea OpName un conjunto de operaciones   representadas por o. As&iacute; mismo OpType = &#123;ow,rr&#125;  es un conjunto de tipos de operaciones, donde ow   representa one-way (Petici&oacute;n) y rr denota la interacci&oacute;n   request-respond (petici&oacute;n-respuesta). Por   tanto, una operaci&oacute;n es descrita por un nombre y   un tipo de operaci&oacute;n, como sigue.</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq2.JPG" WIDTH="246" HEIGHT="25"><A NAME="eq2"></A></P>     <P> Un rol es descrito por un nombre, un conjunto   de operaciones  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy12.JPG" WIDTH="16" HEIGHT="16"> que   exhibe y un conjunto de   variables Var. Es decir, RName es un conjunto de   roles, representados por <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy13.JPG" WIDTH="13" HEIGHT="18"> ,   el conjunto Role contiene todos los posibles roles y est&aacute; definido por</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq3.JPG" WIDTH="312" HEIGHT="28"><A NAME="eq3"></A></P>     <P> Una vez se definen los componentes que conforman   la parte declarativa de la coreograf&iacute;a, se   deben definir los componentes que intervienen en   la parte conversacional. Dicha conversaci&oacute;n entre   roles enfatiza en los patrones de interacciones, una   para expresar una operaci&oacute;n de petici&oacute;n y la otra   una operaci&oacute;n de petici&oacute;n-respuesta.</P>     <P> CL permite componer interacciones aprovechando   los operadores de control que se pueden   aplicar, como son de secuencia, paralelo y de   opci&oacute;n. Formalmente, CL es un conjunto de conversaciones   definidas como sigue.</P>     <P ALIGN="CENTER"><IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq4.JPG" WIDTH="209" HEIGHT="161"> <A NAME="eq4"></A></P>     <P> Una conversaci&oacute;n puede ser una conversaci&oacute;n   terminada <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy14.JPG" WIDTH="20" HEIGHT="19">,   o puede presentar un patr&oacute;n   de interacci&oacute;n petici&oacute;n (one-way OW) o de petici&oacute;n-   respuesta (request-respond RR). El patr&oacute;n <IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq5.JPG" WIDTH="113" HEIGHT="17">  representa   una invocaci&oacute;n   a la operaci&oacute;n o del rol   <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17"> ejecutada   por el rol <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy16.JPG" WIDTH="21" HEIGHT="20">.     <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy10.JPG" WIDTH="13" HEIGHT="17"> y <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy11.JPG" WIDTH="13" HEIGHT="19">,     son secuencias de variables de los roles  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy16.JPG" WIDTH="21" HEIGHT="20"> y    <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17">,   respectivamente.</P>     <P> La primitiva  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08eq6.JPG" WIDTH="169" HEIGHT="22"> es   usada para describir el patr&oacute;n de operaci&oacute;n petici&oacute;n-   respuesta. Esta describe la invocaci&oacute;n de la   operaci&oacute;n o del rol  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17">,   ejecutada por <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy16.JPG" WIDTH="21" HEIGHT="20">.   Las duplas     <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy10.JPG" WIDTH="13" HEIGHT="17"> y <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy11.JPG" WIDTH="13" HEIGHT="19">  son     secuencias de variables de los roles    <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy16.JPG" WIDTH="21" HEIGHT="20"> y <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17">,     respectivamente. Posteriormente, el rol <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17">  ejecuta     la conversaci&oacute;n C, lo que finalmente   conlleva a que el contenido de las variables <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy17.JPG" WIDTH="13" HEIGHT="19"> del   rol <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy15.JPG" WIDTH="21" HEIGHT="17">   sea   asignado a las variables     <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy18.JPG" WIDTH="12" HEIGHT="17"> del rol  <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy16.JPG" WIDTH="21" HEIGHT="20">.</P>     ]]></body>
<body><![CDATA[<P> Finalmente, las conversaciones pueden ser   secuenciales <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy19.JPG" WIDTH="44" HEIGHT="20">,   en paralelo   <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy20.JPG" WIDTH="48" HEIGHT="20"> o   en composici&oacute;n u opci&oacute;n <IMG SRC="/img/revistas/rium/v7n12/v7n12a08sy21.JPG" WIDTH="51" HEIGHT="17">.</P>     <P>&nbsp;</P>     <P><B><FONT SIZE="3">5. CONCLUSIONES Y TRABAJO FUTURO</FONT></B></P>     <P> La coreograf&iacute;a de servicios web es posible   describirla en varios niveles de abstracci&oacute;n, por   as&iacute; decirlo, ya que puede gestarse con la definici&oacute;n   de sus componentes y la secuencia de las interacciones   que se presentan entre estos. As&iacute; mismo es   posible manipular la estructura de los datos que   son intercambiados y as&iacute; generar una coreograf&iacute;a   con mayor nivel de expresividad.</P>     <P> Dicha expresividad permite un control sobre   la informaci&oacute;n intercambiada; por tanto, es   aprovechada para su aplicaci&oacute;n en mecanismos   de soluci&oacute;n como la verificaci&oacute;n de restricciones,   en donde la definici&oacute;n de restricciones sobre   la informaci&oacute;n o propiedades de esta facilita su   manipulaci&oacute;n y, por ende, soluciones hacia su   automatizaci&oacute;n.</P>     <P> Un an&aacute;lisis y formalizaci&oacute;n de las interacciones   es necesario para determinar qu&eacute; componentes   pueden ser manejados en un posible modelo de   restricciones a satisfacer. Las interacciones deben   comprenderse dentro un grupo definido (petici&oacute;n,   petici&oacute;n-respuesta) y as&iacute; restringir expresividad y   soluci&oacute;n.</P>     <P> A esto se suma que un mecanismo apropiado   para la formalizaci&oacute;n de las interacciones y los   procesos que representan debe ser definido con   el f&iacute;n de maximizar el grado de manipulaci&oacute;n   orientado a lograr un grado de automatizaci&oacute;n en   la descripci&oacute;n de una coreograf&iacute;a.</P>     <P> Como trabajo futuro, se pretende proponer   una formalizaci&oacute;n de condiciones o restricciones   sobre la estructura conversacional y declarativa de   la coreograf&iacute;a de servicios web, a fin de lograr una   manipulaci&oacute;n autom&aacute;tica de estas.</P>     <P>&nbsp;</P>     <P><FONT SIZE="3"><B>REFERENCIAS</B></FONT></P>     ]]></body>
<body><![CDATA[<!-- ref --><P> 1. AIELLO M., and PAPAZOGLOU M., 2002. A Request Language for Web-Services   Based on Planning and Constraint   Satisfaction.Workshop on Technologies for E-Services (TES02).&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000113&pid=S1692-3324200800010000800001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>2.  ANDREWS T., et.al., 2003. Business Process Execution Language   for Web Services, version 1.1, Disponible en: <A HREF="http://www.ibm.com/developerworks/library/specification/ws-bpel/" TARGET="_blank">http://www-106.ibm.com/developerworks/webservices/library/ws-bpel</A>. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000114&pid=S1692-3324200800010000800002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>3.  APPEL, K. and HAKEN, W., 1977. Every Planar Map is Four Colorable. Part   ii. Reducibility. Illinois J. Math.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000115&pid=S1692-3324200800010000800003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>4.  BARBER, F., SALIDO, M., 2003. Introducci&oacute;n a la Programaci&oacute;n   de Restricciones. Revista Iberoamericana de Inteligencia   Artificial AEPIA. N<sup>o</sup> 20.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000116&pid=S1692-3324200800010000800004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>5.  BARROS, A., DUMAS, M. and OAKS, P. 2005. A critical overview of the web   services choreography description language.   <A HREF="http://www.bptrends.com/" TARGET="_blank">http://www.bptrends.com</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000117&pid=S1692-3324200800010000800005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>6.  BART&Aacute;K, R., 1999. Constraint Programming: In Pursuit of the Holy   Grail, Week of Doctoral Students (WDS99), Prague,   June.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000118&pid=S1692-3324200800010000800006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>7.  BENATALLAH, B., DUMAS, M., SHENG, Q.Z. and NGU, A. 2002. Declarative Composition   and Peer-to-Peer Provisioning   of Dynamic Web Services. International IEEE Conference on Data Engineering,   San Jose, USA, February.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000119&pid=S1692-3324200800010000800007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>8.  BERNERS-LEE, T. HENDLER, J and LASSILA, O, 2001. The Semantic Web. Scientific   American.com. May, 2001.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000120&pid=S1692-3324200800010000800008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>9.  BERGSTRA, J., PONSE, A. and SMOLKA, A., Editors, 2001. Handbook of Process   Algebra. Elsevier.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000121&pid=S1692-3324200800010000800009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>10.  BOOCH, G. 1998. The unified modeling language user guide.. Reading (Massachusetts).   Adison Wesley 482pp.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000122&pid=S1692-3324200800010000800010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>11.  BROGI, A., CANAL, C., PIMENTEL, E., and VALLECILLO, A., 2004. Formalizing   Web Service Coreographies. Electronic   Notes in Theorical Computer Science.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000123&pid=S1692-3324200800010000800011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>12.  BURDETT, D. and KAVANTZAS, N., 2003. Net Traveler: A Framework for Automatic   Web Services Collaboration, Orchestation   and Choreography in E-Government Information System. Universidad de Puerto   Rico.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000124&pid=S1692-3324200800010000800012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>13.  BUSI, N., GORRIERI, R., GUIDI, R., LUCCHI, R. and ZAVATTARO, G., 2005.   Towards a formal framework for choreography.   IEEE Computer Society, Junio.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000125&pid=S1692-3324200800010000800013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P> 14. CANAL, C., PIMENTEL, E. and TROYA, J. M., 2001. Compatibility and inheritance   in software architectures, Science of   Computer Programming.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000126&pid=S1692-3324200800010000800014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>15.  CHANNA, N., CAMPING, L., WASIM, A. and XIANGJUN, F., 2005. Constraint   Satisfaction in Dynamic Web Services   Composition. Asian Journal of Information Technology, 4 (10): 957-961.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000127&pid=S1692-3324200800010000800015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>16.  CERNUDA DEL R&Iacute;O, A., 2002. Sistema de Verificaci&oacute;n de Componentes   Software. Tesis Doctoral. Universidad de Oviedo, Departamento de Inform&aacute;tica.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000128&pid=S1692-3324200800010000800016&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>17.  CERNUDA DEL R&Iacute;O, A., 2002. Static Validation of BusinessProcess   Compatibility in Web Services Choreographies. Universidad   de Oviedo, Departamento de Inform&aacute;tica.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000129&pid=S1692-3324200800010000800017&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>18.  CHOW, K., PERETT, M., 1997. Airport Counter Allocation Using Constraint   Logic Programming. Practical Application   of Constraint Technology.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000130&pid=S1692-3324200800010000800018&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>19.  CONSOLE, L., TORASSO, P., 1991. A Spectrum of Logical Definitions of   Model-based en Diagnosis. Computacional   Intelligence.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000131&pid=S1692-3324200800010000800019&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>20.  DECHTER, R. 2003. Constraint Processing. Morgan Kauffman.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000132&pid=S1692-3324200800010000800020&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>21.  FALTINGS, B., and YOKOO, M., 2005. Introduction: Special Issue on Distributed   Constraint Satisfaction. Artificial Intelligence.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000133&pid=S1692-3324200800010000800021&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>22.  FOSTER, H., 2003. LTSA-BPEL4WS Tool. Department of Computing,     Imperial College London. Available to download   at <A HREF="http://www.doc.ic.ac.uk/ltsa/eclipse/wsengineer/" TARGET="_blank">http://www.doc.ic.ac.uk/ltsa/bpel4ws</A>.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000134&pid=S1692-3324200800010000800022&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>23.  FOSTER, H., UCHITEL, S. and MAGEE J., 2004. Compatibility Verificaction               for Web Services Choreography. Imperial   College London.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000135&pid=S1692-3324200800010000800023&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>24.  FOSTER, H., UCHITEL, S., MAGEE, J. and KRAMER, J. 2006. Model-Based                 Analysis of Obligations in Web Service   Choreography. Imperial College London.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000136&pid=S1692-3324200800010000800024&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>25. GWEN, S. BOURDEAUX, L. and SCHAERF, M., 2004. Describing and reasoning   on web services using process algebra.   In proc. 2nd Internacional Conference on Web Services. Published by IEEE, July, page(s) 43-50.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000137&pid=S1692-3324200800010000800025&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>26.  HONGLI, Y., XIANGPENG, Z., ZONGYAN, Q., GEGUANG, P. and SHULING, W.,   2006. A formal Model for web services   choreography description language (WS-CDL). School of Mathematical Science.   Peking University.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000138&pid=S1692-3324200800010000800026&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P><FONT SIZE="2" FACE="Verdana">27.  IBM, 2001. Web Services Flow Language. Accedida en Noviembre       2005. <A HREF="http://www.ibm.com/developerworks/library/ws-ref4/" TARGET="_blank">www.3.ibm.com/software/solutions/webservices/   pdf/WSFL.pdf    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000139&pid=S1692-3324200800010000800027&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></A>.</FONT></P> <FONT SIZE="2" FACE="Verdana">     <!-- ref --><P>28.  JANSEN, E., YANG, H. and HELAL, S., 2005. Automated Verification of Proper   Choreography Implementation. Universidad de Florida.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000141&pid=S1692-3324200800010000800028&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>29.  KAVANTZAS, N., BURDET, D. and RITZINGER, G. 2004. Web Services Choreography   Description Languages Version   1.0. W3C Working Draft. Diciembre.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000142&pid=S1692-3324200800010000800029&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>30.  KIMA, K., WOO KIMA, K., HWANGB, H., C. Ko., 2004. Operator-scheduling   Using a Constraint Satisfaction Technique in Port Container Terminals. Computers &amp; Industrial Engineering 46.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000143&pid=S1692-3324200800010000800030&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>31.  KUNO, H, et.al., 2001. Conversations + Interfaces = Business Logic. Springer.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000144&pid=S1692-3324200800010000800031&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>32.  LARROSA, J. and MESEGUER P., 2003. Algoritmos para Satisfacci&oacute;n   de Restricciones. Revista Iberoamericana de Inteligencia   Artificial AEPIA. N<sup>o</sup> 20.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000145&pid=S1692-3324200800010000800032&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>33.  LAZOVIK, A., AIELLO, M. and GENNARI, R., 2005. Encoding request to web   services composition as constraints. In Int.   Conf. on Principles and Practice of Constraint Programming (CP2005), LNCS 3709,   pages 782- 786. Springer.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000146&pid=S1692-3324200800010000800033&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>34.  MARTIN, D. and BURSTEIN, M. 2001. OWL-S: Semantic Markup for Web Services.   Disponible en <A HREF="http://www.daml.org/services/owl-s/1.1/" TARGET="_blank">http://www.daml.org/services/owl-s/1.1</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000147&pid=S1692-3324200800010000800034&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>35.  MCKINLEY, P., MALENFANT, A. and ARANGO, J. 1999. Pavilion: A Middleware   Framework for Collaborative Web-based   Applications. ACM SIGGROUP conference on Supporting group work, November.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000148&pid=S1692-3324200800010000800035&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>36.  MEDERITH, G. and BJORG, S., 2003. Contracts and types. Comunications   of the ACM, 46(10):41-47.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000149&pid=S1692-3324200800010000800036&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>37.  MENDLING, J., HAFNER, M. 2005. From Inter-Organizational Workfows to   Process Execution: Generating BPEL from   WS-CDL.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000150&pid=S1692-3324200800010000800037&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>38. MICROSOFT CORPORATION, 2001. Xlang Web Services for Business Process     Design. Accedida en Noviembre 2005.   <A HREF="http://www.gotdotnet.com/team/xml_wsspecs/xlang-c/default.htm" TARGET="_blank">www.gotdotnet.com/team/xml_wsspecs/xlang-c/default.htm    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000151&pid=S1692-3324200800010000800038&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></A>.</P>     ]]></body>
<body><![CDATA[<!-- ref --><P>39.  MILNER, R., 1989. Communication and Concurrency. Prentice Hall.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000153&pid=S1692-3324200800010000800039&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>40. MORRIS, P., 1993. The Breakout Method for Escaping from Local M&iacute;nima.   Morgan Kauffman, AAAI.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000154&pid=S1692-3324200800010000800040&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>41.  PAPAZOGLOU, M. and GEORGAKOPOULOS, D., 2003. Service Oriented Computing.   Communications of the ACM,   October.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000155&pid=S1692-3324200800010000800041&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>42.  PAPAZOGLOU, M. and YANG, J. 2002. Design Methodology for Web Services   and Business Processes. 3rd VLDB-TES   Workshop, Hong-Kong.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000156&pid=S1692-3324200800010000800042&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>43.  PARROW, J, 2001. An introduction to the p-calculus. Handbook of process   algebra, Elsevier 479-543.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000157&pid=S1692-3324200800010000800043&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>44.  PELTZ, C, 2003. Web Services Orchestration and Choreography. Hewlett-Packard   Company. IEEE Computer Society.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000158&pid=S1692-3324200800010000800044&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>45.  PIECHOWIAK, S., RODRIGUEZ, J., 2005. The Localizaci&oacute;n and Correction   of Errors in Models: A Constraint-Based   Approach. Applied Inteligence 23, Diciembre.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000159&pid=S1692-3324200800010000800045&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>46.  PUHLMANN, F. and WESKE, M., 2005. Using the p-calculus for formalizing   workflow patterns. BMP2005, volume 3649   of Lectures Notes in Computer Science, Berlin, Springer-Verlag, 156-168.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000160&pid=S1692-3324200800010000800046&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>47.  RAO, J., 2003. A Survey of Automated Web Services Composition Methods.   Department or computer and information science. Norweigan University of science and technology.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000161&pid=S1692-3324200800010000800047&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>48.  RUSSELL, R. and NORVIG, P. 2004 Inteligencia Artificial. Un enfoque Moderno.   Segunda Edici&oacute;n. Pearson Education,   S.A, Madrid.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000162&pid=S1692-3324200800010000800048&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>49.  SZYPERSKI, C., 1997. Component Software &#8211; Beyond Object-Oriented   Programming. Addison-Wesley.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000163&pid=S1692-3324200800010000800049&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>50.  VALLECILLO, A., HERN&Aacute;NDEZ, J. and TROYA, J., 2000. New issues   in object interoperability. Lecture Notes in Computer   Science, Springer-Verlag, Heidelberg.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000164&pid=S1692-3324200800010000800050&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>51. W3C. 2001. Web Service Choreography Interface (WSCI) version 1.0. Disponible en <A HREF="http://www.w3.org/2003/01/wscwg-charter" TARGET="_blank">http://www.w3.org/2003/01/wscwgcharter    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000165&pid=S1692-3324200800010000800051&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></A>.</P>     <!-- ref --><P>52.  W3C, 2002. Web Services Conversation Language (WSCL) 1.0. Disponible   en <A HREF="http://www.w3.org/TR/2002/NOTE-wscl10-20020314/" TARGET="_blank">http://www.w3.org/TR/2002/NOTE-wscl10- 20020304/</A>.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000167&pid=S1692-3324200800010000800052&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>53.  WOMBACHER, A., FANKHAUSER, P. and MAHLEKO, B., 2004. Matchmaking for   Business Processes Based on Choreographies. 14 International Journal of Web Services Research, diciembre.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000168&pid=S1692-3324200800010000800053&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><P>54.  YANG, J., and PAPAZOGLOU, M., 2002. Web Components: A Substrate for Web   Services Reuse and Composition. 14   Conferencia Internacional sobre Ingenier&iacute;a de Sistemas de Informaci&oacute;n. CaiSE02.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000169&pid=S1692-3324200800010000800054&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><P>&nbsp;</P>     <P><FONT SIZE="2" FACE="Verdana"><B>Recibido:</B> 07/03/2006    <BR>     <B>Aceptado: </B>14/04/2008</font></P>     ]]></body>
<body><![CDATA[ ]]></body><back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[AIELLO]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[PAPAZOGLOU]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Request Language for Web-Services Based on Planning and Constraint Satisfaction]]></article-title>
<source><![CDATA[Workshop on Technologies for E-Services (TES02)]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ANDREWS]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
</person-group>
<source><![CDATA[Business Process Execution Language for Web Services, version 1.1]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[APPEL]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[HAKEN]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Every Planar Map is Four Colorable: Part ii. Reducibility]]></article-title>
<source><![CDATA[Illinois J. Math]]></source>
<year>1977</year>
</nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BARBER]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[SALIDO]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="es"><![CDATA[Introducción a la Programación de Restricciones]]></article-title>
<source><![CDATA[Revista Iberoamericana de Inteligencia Artificial AEPIA]]></source>
<year>2003</year>
<numero>20</numero>
<issue>20</issue>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BARROS]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[DUMAS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[OAKS]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[A critical overview of the web services choreography description language]]></source>
<year>2005</year>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BARTÁK]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Constraint Programming: In Pursuit of the Holy Grail]]></article-title>
<source><![CDATA[]]></source>
<year>1999</year>
<conf-name><![CDATA[ Week of Doctoral Students (WDS99)]]></conf-name>
<conf-date>June</conf-date>
<conf-loc>Prague </conf-loc>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BENATALLAH]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[DUMAS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[SHENG]]></surname>
<given-names><![CDATA[Q.Z]]></given-names>
</name>
<name>
<surname><![CDATA[NGU]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Declarative Composition and Peer-to-Peer Provisioning of Dynamic Web Services]]></article-title>
<source><![CDATA[]]></source>
<year>2002</year>
<conf-name><![CDATA[ Conference on Data Engineering]]></conf-name>
<conf-date>February</conf-date>
<conf-loc>San Jose </conf-loc>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BERNERS-LEE]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[HENDLER]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[LASSILA]]></surname>
<given-names><![CDATA[O]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[The Semantic Web]]></article-title>
<source><![CDATA[Scientific American]]></source>
<year>2001</year>
<month>Ma</month>
<day>y,</day>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BERGSTRA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[PONSE]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[SMOLKA]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Handbook of Process Algebra]]></source>
<year>2001</year>
<publisher-name><![CDATA[Elsevier]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BOOCH]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
</person-group>
<source><![CDATA[The unified modeling language user guide]]></source>
<year>1998</year>
<publisher-loc><![CDATA[^eMassachusetts Massachusetts]]></publisher-loc>
<publisher-name><![CDATA[Adison Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BROGI]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[CANAL]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[PIMENTEL]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[VALLECILLO]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Formalizing Web Service Coreographies]]></article-title>
<source><![CDATA[Electronic Notes in Theorical Computer Science]]></source>
<year>2004</year>
</nlm-citation>
</ref>
<ref id="B12">
<label>12</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BURDETT]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[KAVANTZAS]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
</person-group>
<source><![CDATA[Net Traveler: A Framework for Automatic Web Services Collaboration, Orchestation and Choreography in E-Government Information System]]></source>
<year>2003</year>
<publisher-name><![CDATA[Universidad de Puerto Rico]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B13">
<label>13</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BUSI]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[GORRIERI]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[GUIDI]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[LUCCHI]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[ZAVATTARO]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
</person-group>
<source><![CDATA[Towards a formal framework for choreography]]></source>
<year>2005</year>
<publisher-name><![CDATA[IEEE Computer Society]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B14">
<label>14</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CANAL]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[PIMENTEL]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[TROYA]]></surname>
<given-names><![CDATA[J. M]]></given-names>
</name>
</person-group>
<source><![CDATA[Compatibility and inheritance in software architectures]]></source>
<year>2001</year>
<publisher-name><![CDATA[Science of Computer Programming]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B15">
<label>15</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHANNA]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[CAMPING]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[WASIM]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[XIANGJUN]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Constraint Satisfaction in Dynamic Web Services Composition]]></article-title>
<source><![CDATA[Asian Journal of Information Technology]]></source>
<year>2005</year>
<volume>4</volume>
<numero>10</numero>
<issue>10</issue>
<page-range>957-961</page-range></nlm-citation>
</ref>
<ref id="B16">
<label>16</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CERNUDA DEL RÍO]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Sistema de Verificación de Componentes Software]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B17">
<label>17</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CERNUDA DEL RÍO]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Static Validation of BusinessProcess Compatibility in Web Services Choreographies]]></source>
<year>2002</year>
<publisher-name><![CDATA[Universidad de Oviedo, Departamento de Informática]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B18">
<label>18</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHOW]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[PERETT]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Airport Counter Allocation Using Constraint Logic Programming]]></article-title>
<source><![CDATA[]]></source>
<year>1997</year>
<conf-name><![CDATA[ Practical Application of Constraint Technology]]></conf-name>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B19">
<label>19</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CONSOLE]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[TORASSO]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Computacional Intelligence]]></source>
<year>1991</year>
</nlm-citation>
</ref>
<ref id="B20">
<label>20</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[DECHTER]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[Constraint Processing]]></source>
<year>2003</year>
<publisher-name><![CDATA[Morgan Kauffman]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B21">
<label>21</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[FALTINGS]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[YOKOO]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Introduction: Special Issue on Distributed Constraint Satisfaction]]></article-title>
<source><![CDATA[Artificial Intelligence]]></source>
<year>2005</year>
</nlm-citation>
</ref>
<ref id="B22">
<label>22</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[FOSTER]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<collab>Imperial College London^dDepartment of Computing</collab>
<source><![CDATA[LTSA-BPEL4WS Tool]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B23">
<label>23</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[FOSTER]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[UCHITEL]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[MAGEE]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<collab>Imperial College London</collab>
<source><![CDATA[Compatibility Verificaction for Web Services Choreography]]></source>
<year>2004</year>
</nlm-citation>
</ref>
<ref id="B24">
<label>24</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[FOSTER]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[UCHITEL]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[MAGEE]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[KRAMER]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<collab>Imperial College London</collab>
<source><![CDATA[Model-Based Analysis of Obligations in Web Service Choreography]]></source>
<year>2006</year>
</nlm-citation>
</ref>
<ref id="B25">
<label>25</label><nlm-citation citation-type="confpro">
<source><![CDATA[proc]]></source>
<year>July</year>
<conf-name><![CDATA[2nd Internacional Conference on Web Services]]></conf-name>
<conf-loc> </conf-loc>
<page-range>43-50</page-range><publisher-name><![CDATA[IEEE]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B26">
<label>26</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[HONGLI]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[XIANGPENG]]></surname>
<given-names><![CDATA[Z]]></given-names>
</name>
<name>
<surname><![CDATA[ZONGYAN]]></surname>
<given-names><![CDATA[Q]]></given-names>
</name>
<name>
<surname><![CDATA[GEGUANG]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[SHULING]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
</person-group>
<collab>Peking University^dSchool of Mathematical Science</collab>
<source><![CDATA[A formal Model for web services choreography description language (WS-CDL)]]></source>
<year>2006</year>
</nlm-citation>
</ref>
<ref id="B27">
<label>27</label><nlm-citation citation-type="">
<collab>IBM</collab>
<source><![CDATA[Web Services Flow Language]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B28">
<label>28</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JANSEN]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[YANG]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[HELAL]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Automated Verification of Proper Choreography Implementation]]></source>
<year>2005</year>
<publisher-name><![CDATA[Universidad de Florida]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B29">
<label>29</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KAVANTZAS]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[BURDET]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[RITZINGER]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
</person-group>
<source><![CDATA[Web Services Choreography Description Languages Version 1.0. W3C Working Draft]]></source>
<year>2004</year>
</nlm-citation>
</ref>
<ref id="B30">
<label>30</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIMA]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[WOO KIMA]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[HWANGB]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Ko]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Operator-scheduling Using a Constraint Satisfaction Technique in Port Container Terminals]]></article-title>
<source><![CDATA[Computers & Industrial Engineering]]></source>
<year>2004</year>
<numero>46</numero>
<issue>46</issue>
</nlm-citation>
</ref>
<ref id="B31">
<label>31</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KUNO]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<source><![CDATA[Conversations + Interfaces = Business Logic]]></source>
<year>2001</year>
<publisher-name><![CDATA[Springer]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B32">
<label>32</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LARROSA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[MESEGUER]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<article-title xml:lang="es"><![CDATA[Algoritmos para Satisfacción de Restricciones]]></article-title>
<source><![CDATA[Revista Iberoamericana de Inteligencia Artificial AEPIA]]></source>
<year>2003</year>
<numero>20</numero>
<issue>20</issue>
</nlm-citation>
</ref>
<ref id="B33">
<label>33</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LAZOVIK]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[AIELLO]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[GENNARI]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Encoding request to web services composition as constraints]]></article-title>
<source><![CDATA[In Int.]]></source>
<year>2005</year>
<conf-name><![CDATA[ Conf. on Principles and Practice of Constraint Programming (CP2005), LNCS 3709]]></conf-name>
<conf-loc> </conf-loc>
<page-range>782- 786</page-range><publisher-name><![CDATA[Springer]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B34">
<label>34</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MARTIN]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[BURSTEIN]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[OWL-S: Semantic Markup for Web Services]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B35">
<label>35</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MCKINLEY]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[MALENFANT]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[ARANGO]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Pavilion: A Middleware Framework for Collaborative Web-based Applications]]></article-title>
<source><![CDATA[]]></source>
<year>1999</year>
<conf-name><![CDATA[ conference on Supporting group work]]></conf-name>
<conf-date>November</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B36">
<label>36</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MEDERITH]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[BJORG]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Contracts and types]]></article-title>
<source><![CDATA[Comunications of the ACM]]></source>
<year>2003</year>
<volume>46</volume>
<numero>10</numero>
<issue>10</issue>
<page-range>41-47</page-range></nlm-citation>
</ref>
<ref id="B37">
<label>37</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MENDLING]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[HAFNER]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[From Inter-Organizational Workfows to Process Execution: Generating BPEL from WS-CDL]]></source>
<year>2005</year>
</nlm-citation>
</ref>
<ref id="B38">
<label>38</label><nlm-citation citation-type="">
<collab>MICROSOFT CORPORATION</collab>
<source><![CDATA[Xlang Web Services for Business Process Design]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B39">
<label>39</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MILNER]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[Communication and Concurrency]]></source>
<year>1989</year>
<publisher-name><![CDATA[Prentice Hall]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B40">
<label>40</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MORRIS]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[The Breakout Method for Escaping from Local Mínima]]></source>
<year>1993</year>
<publisher-name><![CDATA[Morgan Kauffman, AAAI]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B41">
<label>41</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PAPAZOGLOU]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[GEORGAKOPOULOS]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Service Oriented Computing]]></article-title>
<source><![CDATA[Communications of the ACM]]></source>
<year>2003</year>
<month>Oc</month>
<day>to</day>
</nlm-citation>
</ref>
<ref id="B42">
<label>42</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PAPAZOGLOU]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[YANG]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Design Methodology for Web Services and Business Processes]]></article-title>
<source><![CDATA[]]></source>
<year>2002</year>
<conf-name><![CDATA[3 VLDB-TES Workshop]]></conf-name>
<conf-loc>Hong-Kong </conf-loc>
</nlm-citation>
</ref>
<ref id="B43">
<label>43</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PARROW]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An introduction to the p-calculus]]></article-title>
<source><![CDATA[Handbook of process algebra]]></source>
<year>2001</year>
<page-range>479-543</page-range><publisher-name><![CDATA[Elsevier]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B44">
<label>44</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PELTZ]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[Web Services Orchestration and Choreography: Hewlett-Packard Company]]></source>
<year>2003</year>
<publisher-name><![CDATA[IEEE Computer Society]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B45">
<label>45</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PIECHOWIAK]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[RODRIGUEZ]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[The Localización and Correction of Errors in Models: A Constraint-Based Approach]]></article-title>
<source><![CDATA[Applied Inteligence]]></source>
<year>2005</year>
<month>Di</month>
<day>ci</day>
<numero>23</numero>
<issue>23</issue>
</nlm-citation>
</ref>
<ref id="B46">
<label>46</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PUHLMANN]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[WESKE]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Using the p-calculus for formalizing workflow patterns]]></article-title>
<source><![CDATA[Lectures Notes in Computer Science]]></source>
<year>2005</year>
<conf-name><![CDATA[3649 BMP]]></conf-name>
<conf-date>2005</conf-date>
<conf-loc> </conf-loc>
<page-range>156-168</page-range><publisher-loc><![CDATA[Berlin ]]></publisher-loc>
<publisher-name><![CDATA[Springer-Verlag]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B47">
<label>47</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[RAO]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<collab>Norweigan University of science and technology^dDepartment or computer and information science</collab>
<source><![CDATA[A Survey of Automated Web Services Composition Methods]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B48">
<label>48</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[RUSSELL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[NORVIG]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Inteligencia Artificial: Un enfoque Moderno]]></source>
<year>2004</year>
<edition>Segunda</edition>
<publisher-loc><![CDATA[Madrid ]]></publisher-loc>
<publisher-name><![CDATA[Pearson EducationS.A]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B49">
<label>49</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SZYPERSKI]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[Component Software: Beyond Object-Oriented Programming]]></source>
<year>1997</year>
<publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B50">
<label>50</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[VALLECILLO]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[HERNÁNDEZ]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[TROYA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Lecture Notes in Computer Science]]></source>
<year>2000</year>
<publisher-loc><![CDATA[Heidelberg ]]></publisher-loc>
<publisher-name><![CDATA[Springer-Verlag]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B51">
<label>51</label><nlm-citation citation-type="">
<collab>W3C</collab>
<source><![CDATA[Web Service Choreography Interface (WSCI) version 1.0]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B52">
<label>52</label><nlm-citation citation-type="">
<collab>W3C</collab>
<source><![CDATA[Web Services Conversation Language (WSCL) 1.0]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B53">
<label>53</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[WOMBACHER]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[FANKHAUSER]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[MAHLEKO]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Matchmaking for Business Processes Based on Choreographies]]></article-title>
<source><![CDATA[International Journal of Web Services Research]]></source>
<year>2004</year>
<numero>14</numero>
<issue>14</issue>
</nlm-citation>
</ref>
<ref id="B54">
<label>54</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[YANG]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[PAPAZOGLOU]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Web Components: A Substrate for Web Services Reuse and Composition]]></article-title>
<source><![CDATA[]]></source>
<year>2002</year>
<conf-name><![CDATA[14 Conferencia Internacional sobre Ingeniería de Sistemas de Información. CaiSE02]]></conf-name>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
