UNIVERSIDAD VERACRUZANA
FACULTAD DE FÍSICA E INTELIGENCIA ARTIFICIAL
"COLAB++: COLABORACIÓN SOBRE LA
WEB A TRAVÉS DE LA COMPARTICIÓN DE
LOS HISTORIALES DE NAVEGACIÓN”
TESIS
COMO REQUISITO PARCIAL PARA OBTENER EL GRADO DE
MAESTRA EN INTELIGENCIA
ARTIFICIAL
PRESENTA:
L.I. YECELY ARIDAÍ DÍAZ BERISTAIN
DIRIGE:
Dr. GUILLERMO DE JESÚS HOYOS RIVERA
AGRADECIMIENTOS
A tr avés de las siguientes líneas expr eso mi más sincer o agr adecimie nto a todas las per sonas que estuvier on involucr adas en este tr abajo de investigación.
Quier o agr adecer en pr imer lugar al Consejo Nacional de Ciencias y T ecnolog ía ( CONACYT ) por el apoyo otor gado par a la r ealizaci ón de esta tesis de maestr ía.
Especialmente a mi asesor , al Dr . Guiller mo de Jesús Hoyos River a por su s invaluable s consejos, apor taciones, paciencia y confianza que fuer on par te fundamental par a el desar r ollo de este tr abajo de investigaci ón.
Al cuer po docente del Depar tamento de Inteligencia Ar tificial por su colabor ación y consejos dur ante mi estancia , los cuales me ayudar on a cr ece r como per sona e in vestigador a.
DEDICATORIA
A Dios.
Por su infinita bondad y amor que me per mite n llegar a este punto de mi vida .
A mis padr es.
Por ser el pila r fundamental en mi vida, por su apoyo, consejos y motivación constante dur ante esta tr avesía. Siendo un ejemplo de per sever ancia, tr abajo, dedicación y constancia .
Sin ellos esta meta no hubier a sido posible.
A mi her mana.
Por ser un ejemplo de dedicació n y esfuer zo, de quien apr endo día a d ía.
A mi familia.
Por estar siempr e conmigo.
A mi asesor .
Dr . Guiller mo de Jesús Hoyos River a p or su tiempo, paciencia e impulso en el desar r ollo de este tr abajo de investigaci ón.
Índice
AGRADECIMIENTOS ...2
DEDICATORIA ...3
CAPÍTULO 1. INTRODUCCIÓN ...6
1.1FUNDAMENTOS ...6
1.2OBJETIVO GENERAL ...8
1.3DESCRIPCIÓN DEL DOCUMENTO ... 11
CAPÍTULO 2. ESTADO DEL ARTE ... 12
2.1.ESPACIOS COLABORATIVOS PARA ESCRITURA ... 12
2.2.AMBIENTES DE OFICINA COLABORATIVOS ... 14
2.3.MARCADORES SOCIALES COLABORATIVOS... 17
2.4.PORTALES COLABORATIVOS ... 19
2.5.RESUMEN DEL ESTADO DEL ARTE... 20
CAPÍTULO 3. COLABORACIÓN SOBRE LA WEB: EL USO DE LOS HISTORIALES DE NAVEGACIÓN COMO COMPLEMENTO EN LA SINCRONIZACIÓN DE LA NAVEGACIÓN WEB ... 21
3.1.COLAB ... 22
3.2.COMPARTICIÓN DE LOS HISTORIALES DE NAVEGACIÓN ... 25
3.2.1.ACCESO A ENLACES... 27
3.2.2.BÚSQUEDA EXPLÍCITA ... 29
3.2.3.BÚSQUEDA IMPLÍCITA ... 31
CAPÍTULO 4. DISEÑO, DESARROLLO E IMPLEMENTACIÓN... 32
4.1.ARQUITECTURA DE COMUNICACIÓN ... 33
4.2.INTERCAMBIO DE ENLACES ... 39
4.3.FUNCIONAMIENTO DE LAS BÚSQUEDAS EXPLÍCITA E IMPLÍCITA ... 42
4.3.2.EL OPERADOR I_LOOK_FOR M ... 44
4.3.3.OPERADORES DE REFINAMIENTO DE BÚSQUEDA... 46
4.4.ARQUITECTURA LÓGICA... 47
4.5.FUNCIONES PRINCIPALES DEL SISTEMA ... 50
4.5.1.MÓDULOS PRINCIPALES DE LA PLATAFORMA ... 51
4.6.BASES DE DATOS ... 55
CAPÍTULO 5. EXPERIMENTACIÓN Y PRUEBAS ... 58
CAPÍTULO 6. CONCLUSIONES Y TRABAJO FUTURO ... 65
GLOSARIO ... 68
Capítulo 1. Introducción
1.1 Fundamentos
Una aplicación colabor ativa se puede definir como un sistema infor mático que asiste a un gr upo de per sonas dedicadas a una tar ea común , per mitiendo que cada una de éstas compar ta datos y pr ogr amas con las otr as a tr avés, gener almente, de una inter faz gr áfica. De esta maner a, los usuar ios pueden acceder a cier tos ser vicios que les facilitan la comunicación y el tr abajo de maner a conjunta sin impor tar si se encuentr an en el mismo espacio físico o no; o si el tr abajo se lleva a cabo al mismo tiempo o en difer entes momentos.
En tér minos gener ales este tipo de aplicacione s per miten compar tir infor mación en deter minados for matos ( video, texto, audio, etc étera ) . T ambién ofr ecen funcionalidades avanzadas que simplifican tar eas como la gener ación de infor mación, búsquedas, tr ansfer encias, accesos, etcéter a.
Su objetivo pr inc ipal consiste en pr oveer a los usuar ios de her r amientas que le per mitan coor dinar sus actividades de tr abajo, así como facilitar el pr oceso par a compar tir infor mación al inter ior del gr upo de per sonas que r ealizan una tar ea en común. El tr abajo colaborativ o es un ár ea compleja que involucr a Sistemas Distr ibuidos, Inteligencia Ar tificial, Bases de Datos, Sistemas Multi- agentes, Inter faces Gr áficas de Usuar io, Miner ía de Datos, entr e otr os.
de comunicación como son VoIP1, pizar r ones y discos vir tuales, entr e otr os; así como beneficios que otor gan al tener conectividad con un gr upo de tr abajo y acceso a la infor mación en tiempo r eal, todo esto dentr o del co ntexto de un navegador Web y haciendo uso de los mecanismos habituales de comunicación a este tipo de platafor mas.
Si bien es cier to que el desar r ollo en esta ár ea ha tenido gr an pr ogr eso en los últimos tiempos, también es cier to que aún no se acer ca lo s uficiente a la for ma par a que las per sonas colabor en en un ambiente pr esencial, quedando muchos r etos pendientes.
De for ma gener al, en el tr abajo colabor ativo los usuar ios apor tan infor mación al gr upo de tr abajo par a después tr ansfor mar el tr abajo indiv idual en datos más completos que se muestr en las obser vaciones y contr ibuciones de cada uno; pr omoviendo que un gr upo de usuar ios logr en metas comunes, bajo una filosofía de trabajo de “divide y vencerás”. Para lograr un a colabor a ción efectiva, la coor dina ción de las actividades es un aspecto impor tante, ya que deter mina la for ma en que los usuar ios or ganizar án sus actividades y así optimizar , en la medida de lo posible, la r ealización de cada una de las tar eas individuales que componen a una gr an tar ea, r e duciendo los tiempos per didos, evitando la duplicación de esfuer zos y, en consecuencia, se encontr ar á la for ma adecuada de administr ar r ecur sos comunes.
Por lo que se ha expuesto, todavía existen aspectos fundamentales que deben solucionar se, de tal for ma que en el futur o las aplicaciones colabor ativas basadas en plataformas Web se asemejar án más a un ambiente pr esencial, por lo tanto la comunicación y colabor ación entr e usuar ios se convier te en una pieza clave. De tal for ma que el uso adecuado de las aplicaciones colaborativas sea pr incipalmente par a la cooper ación de gr upos de usuar ios en una tar ea común.
1
1.2 Objetivo General
Las aplicaciones colabor ativas per miten, como se estableció, el inter cambio de imágenes, texto, video y voz, así como la coor din ación de actividades, están enfocadas a los usuar ios de medios digitales que necesitan r ealizar actividades de colabor ación sin la necesidad de estar en el mismo lugar físico, o en el mismo momento.
Depend e en gr an par te del diseño de las inter faces de usuar io, la usabilidad y el gr ado de comunicación, el tr abajo colabor ativo asistido por computador a ( CSCW) suele consider ar se como la disciplina científica que descr ibe cómo diseñar y desar r ollar este tipo de aplicaciones; eventualmente pr oponiendo nuevos par adigmas de colabor ación que se adapten de maner a más natur al a entor nos electrónicos y que, al mismo tiempo, no disten tanto de la for ma en que las per sonas colabor an en ambientes no electr ónicos. La taxonomía más utilizada par a la clasificación de las posibles dimensiones, en las cuales se puede llevar a cabo el tr abajo colabor ativo, es la de Johansen [1], la cual se basa en una clasificación espacio - tiempo que delimita las categor ías de estas aplicaciones, logr ando así cuatr o cuadr antes, uno par a cada una de las for mas en que se puede llevar a cabo el tr abajo colabor ativo. Este diagr ama se muestr a en la F igur a 1.
En este diagr ama se pueden apr eciar las cuatr o pr incipales for ma de inter acción entr e usuar ios, así como sus car acter ísticas pr incipales:
- Car a a car a ( mismo t ie mp o - mismo lu g ar ) . Cor r esponde a la for ma clásica de tr abajar en equipo. Per mite que dos o más per sonas, que se encuentr an en el mismo lugar , inter actúen y que la tecnología se utilice únicamente como sopor te, incluso se puede llegar a pr escindir de ésta bajo deter minadas cir cunstancias.
- Asín cr o n a- Local ( mismo lu g ar - d if eren t e t ie mp o ) . Se r ealiza en el mismo lugar en tiempos difer entes; es decir , un usuar io puede utilizar l a computador a par a iniciar un tr abajo. Después, en otr o momento per o en el mismo equipo, otr o usuar io puede continuar tr abajando sobr e el mismo pr oyecto.
- Sín cr o n a - Dist r ib u id a ( d if e r e n t e lu g ar - mismo t ie mp o ) . Se logr a cuando var ias per sonas inter actúan en distintos lugar es per o al mismo tiempo, logr ando así una colabor ación sin impor tar el lugar donde se encuentr en los usuar ios.
- Asín cr o n a- Distribu id a ( d iferente lu g ar - d if e ren te t iemp o ) . Logr a la cooper ación en difer ente lugar y tiempo. Por ejemplo, el cor r eo electr ónico.
Como puede apr eciar se, es en alguna de estas cuatr o dimensiones que sistemáticamente nos encontr amos cuando hacemos tr abajo en equipo y fr ecuentemente viajamos de una a otr a de maner a natur al, en función de los r equer imientos y r est r icciones de la colabor ación.
T ambién se mencionó , al momento de enunciar br evemente las pr incipales car acter ísticas de cada una de las dimensiones, el cuadr ante que más se adecúa a la for ma tr adicional de tr abajar cuando colabor amos es el modelo car a a car a ( e.g. r euniones de tr abajo) .
de las llamadas T ICs ( T ecnologías de Inf or mación y Comunicación) que el cuadr ante de colabor ación síncr ona distr ibuida comienza a hacer se pr esente.
Un elemento, impor tante de mencionar , es que cada una de éstas for mas de colabor ar imponen sus pr opios r etos en función, pr incipalmente, de las r estr icciones impuestas por el ambiente; por ende, es la per sona que for ma par te del equipo de tr abajo la que debe adaptar su maner a de tr abajar a estas r estr icciones, si se quier e llegar a tener éxito en la empr esa.
En el caso par ticular del uso de platafor mas basadas en la Web como medio par a el establecimiento de algún tipo de colabor ación, como se mencionó anter ior mente, r epr esenta un campo de estudio pr ometedor , ya que en vez de que el potencial usuar io se vea en la necesidad de instalar alguna aplicació n en su pr opia computador a ( o múltiples computador as, eventualmente) podr ía acceder a este tipo de tecnologías a tr avés del uso de un navegador Web.
Como se tr atar á detalladamente más adelante, dentr o del capítulo dedicado al Estado del Ar te, en la actual idad existe un buen númer o de pr opuestas tecnológicas que habilitan, de una u otr a maner a, a los navegador es Web par a que sean utilizados como platafor mas y así entablar labor es colabor ativas. Sin embar go, por el momento solamente se mencionar án de maner a intuitiva los dos casos que nos atañen y que dan nacimiento al pr esente tr abajo.
Una de éstas cor r esponde a la pr opuesta planteada en la tesis doctor al del Dr . Guiller mo de Jesús Hoyos River a [2]; consiste en la sincr onización explícita de las acciones de navegación de un deter minado usuar io, dentr o de los navegador es de los demás usuar ios per tenecientes a la misma sesión, y actualmente sincr onizados con el usuar io ya mencionado. Este caso puede ver se clar amente que cor r esponde al cuadr ante de la colabor ac ión síncr ona distr ibuida de la F igur a 1. Sin embar go, esta for ma es sólo una de las que puede tomar la colabor ación basada en platafor mas Web.
navegación de los miembr os de una sesión como r ecur so por el cual se pueden establecer r elaciones entr e éstos.
Entonces, en el pr esente tr abajo se abar car án otr as for mas que los usuar ios pueden utilizar par a establecer nexos de colabor ación a tr avés de sus pr opias actividades de navegación, el eventual análisis de los histor iales y la compar tición de la infor mación que, a la postr e, son una for ma de r epr esentación de sus r espectivos inter eses; pueden ser utilizados como her r amientas par a una posible identificación de pr opósitos comunes.
En este sentido, en un momento dado, los usuar ios establecer án sus esquemas per sonales en tér minos de disponibilidad de sus enlaces par a otr os usuar ios de la misma sesión, gener ando su pr opio histor ial de navegación.
1.3 Descripción del Documento
Capítulo 2. Estado del Arte
Como se ha mencionado, aunque de maner a r ápida, existe en la actualidad un impor tante númer o de pr opuestas r elativas a modelos y her r amientas que tienen por objetivo facilitar las actividades de colaboración a distancia entr e usuarios, poniendo un par ticular énfasis en aquellas basadas en tecnologías Web.
En este sentido, dur ante la elabor ación del estudio del Estado del Ar te que per mite justif icar nuestro tr abajo, hemos encontr ado que las alter nativas r elacionadas a la facilitación de la colabor ación, usando estr ictamente tecnologías Web, se encuentran limitadas a la explicación de sólo algunas de las pr incipales ver tientes, quedando impor tantes ár eas no explor adas, par a las cuales no se han pr opuesto soluciones.
En esta sección detallar emos las investigaciones actuales r elacionadas con CSCW desde el punto de vista de platafor mas Web, descr ibiendo de maner a global las posibilidades que ofr ecen y destacando el sopor te par a el tr abajo colaborativo. El objetivo pr incipal de las platafor mas colabor ativas es per mitir la inter acción de los usuar ios con el fin de sincr onizar actividades, compar tir r ecur sos e incr ementar el éxito en las tar eas.
2.1. Espacios Colaborativos para Escritura
Los espacios colabor ativos par a escr itur a per miten la inter acción entr e un gr upo de usuar ios y la gener ación de ideas en conjunto. A continuación se descr ibir án algunas her r amientas de tipo comer cial y académicas.
infor mación mediante texto, gr áficas y dibujos; estos elementos se pueden mover , cambiar de tamaño, eliminar y r eplicar , incluso los tr azos gener ados a mano alzada.
Los dibujos r ealizados en otr as sesiones de tr abajo pueden ser r eutilizados; es decir , aquella infor mación consider ada impor tante se almacenar á en una biblioteca per sonal, la cual tiene la posibilidad de hacer se pública o pr ivada ; en caso de ser pública pueden visitar la y utilizar la otr os usuar ios. La her ramienta posibilita el uso de ar chivos SVG, dibujos de Micr osoft Visio y Adobe Illustr ator , entr e otr os; par a este caso los usuar ios deber án contar con cuenta Pr o, en caso contr ar io no se per mite impor tar infor mación de otr as aplicaciones.
Otr a her r amienta colabor ativa con enfoque Cliente/Ser vidor es CoSke [4]. Ofr ece a cada usuar io un lienzo digital par a dibujar individual y gr upalmente, paleta de selección de color , contr ol deslizante par a camb iar el tamaño del pincel, botones par a bor rar y opción par a guar dar la imagen cr eada en la pizar r a vir tual. El ser vidor acepta conexiones, escucha las peticiones por medio de sockets y mensajes codificados por par te de todos los clientes, los cuales son co nver tidos en instr ucciones par a la pizar r a vir tual. Por ejemplo: mover la pizar r a, bor r ar la pantalla, cambiar el color asignado a un usuar io, entr e otr os.
De la misma maner a Scr ibblar [5] ofr ece un espacio colabor ativo mediante una pizar r a vir tual que di spone de var ias her r amientas par a inser tar figur as, editar sus pr opiedades y modificar las según se r equiera. Los usuar ios pueden unir se y usar la pizar r a de maner a compar tida.
Es posible cr ear sesiones en las que se pueden invitar a otr os usuar ios a dibujar , comunicar se con ellos usando el chat; impor tar imágenes, pr esentaciones y ar chivos en for mato pdf. A difer encia de las her r amientas mencionadas, los usuar ios pueden comunicar se por voz al iniciar la opción “audio broadcast”.
explicación más completa. La ver sión PRO, que r equier e licen cia, incor por a las opciones: dir ección exclusiva, mejor ancho de banda y tiempo de sesión ilimitado.
Novlet [6] sigue el mismo esquema de colabor ación per o con un enfoque de escr itur a. Los usuar ios pueden leer histor ias generadas por otr o y continuar escr ibiendo sobr e ellas . La aplicación divide el contenido en capítulos , estos pueden ser votados de maner a positiva o negativa, añadir comentar ios y cor r egir er r or es de los mismos.
Los usuar ios pueden agr egar a otr os usuar ios como favor itos, enviar mensajes pr ivados, visualizar datos estadísticos de cada histor ia y leer los comentar ios de cada una de ellas.
A difer encia de las anter ior es, no se necesita adquir ir una licencia par a obtener opciones adicionales de la her r amienta, únicamente es necesar io r egistr ar se en el por tal que lo distr ibuye.
Plotbot [7] sigue el enfoque de escr itur a y es similar a Novlet . Cada usuar io puede cr ear y/o editar fr agmentos de las histor ias hechas en conjunto, facilita la colabor ación entr e usuarios inter esados en la r edacción d e guiones, novelas e histor ias; pr opor ciona un histor ial de actividades, canal de RSS y la posibilidad de comentar. Es una her r amienta totalmente gr atuita y no r equier e licencias, únicamente se debe cr ear una cuenta en el por tal que lo distr ibuye.
2.2. Ambientes de Oficina Colaborativos
Los siguientes ambientes ofr ecen her r amientas colabor ativas par a tr abajos de oficina, per mitiendo la cr eación de contenidos de maner a sencilla y acceso a los mismos. Se pueden mencionar algunos como: Wr itewith [8], Sync.in [9], CoNote [10], Gobby [11] y el más popular de todos, Google Docs [12].
La función pr incipal de Wr itewith, además de la ya mencionada, es la de asignar tar eas concr etas, logr ando un seguimiento de todas las ver siones y cambios r ealizados por cada usuar io; se dispone de un canal RSS donde se podr án visualizar las modi ficaciones entre ver siones. F acilita la expor tación de ar chivos generados en algunos for matos sopor tados como son: T exto Simple, F or mato de Documento Por tátil ( PDF ) , F or mato de Documento Abier to ( ODT ) , etcéter a; asimismo la publicación de los documentos en Wor dpr ess y T ypepad. El uso de esta her r amienta es completamente gr atuito y sólo r equier e del r egistr o en el por tal que lo distr ibuye.
Por otr o lado, Sync.in también ofr ece la integr ación con r edes sociales y un histor ial de cambios par a ver las actualizaciones más impor tantes r ealizadas en el documento. Entr e sus car acter ísticas pr incipales están la facilidad de compar tir documentos con otr os usuar ios y la asignación de un color que distinguir á el texto que ingr esemos. Una opción inter esante es la línea de tiempo que muestr a la evolución de las ver siones del documento, con esta r epr esentación gr áfica es más sencillo visualizar los cambios efectuados al ar chivo de colabor ación.
La ver sión gr atuita tiene la desventaja de que los documentos se r ealizan y r evisan de for ma pública y cualquier per sona podr á acceder a la infor mación. Par a obtener pr ivacidad en los documentos se r equier e de un pago mensual.
CoNote es una aplicación que habilita la comunicación en gr upo logr ando la compar tición de anotaciones y documentos electr ónicos, así como la cr eación de noticias, boletines y for os. A difer encia de las anter ior es, su funcionalidad par a la edición de texto es limitada y no cuenta con un histor ial de los cambios r elevantes. Es una her r amienta diseñada pr incipa lmente par a uso escolar , por lo tanto no r equier e de ningún pago, únicamente del r egistr o en el por tal que lo distr ibuye.
La pr imer a es un editor de textos multiplatafor ma que logr a compar tir con var ios colabor ador es. Su pr incipal car acter ística es que per mite una inter acción en tiempo r eal con un gr upo de tr abajo a tr avés de canales cifr ados, es ide al par a pr ogr amación en par es.
Cuenta con la asignación de color es a cada usuar io, per mite la identificación r ápida del texto ingr esado, así como un canal de chat par a comunicar se dur ante la edición del documento. Debido a que es una her r amienta enfocada a lenguajes de pr ogr amación, r esalta la sintaxis de las instr ucciones ingr esadas.
Entr e sus car acter ísticas pr incipales están la asignación de una contr aseña y la modificación de múltiples documentos en una sola sesión. Oper a bajo el modelo Softwar e como Ser vicio ( SaaS) que consiste en un modelo de distr ibución de softwar e donde la infor mación que maneja se aloja en los ser vidor es de la compañía; licenciado bajo la GPL 2 por lo que no r equier e ningún pago.
Google Docs es la her r amienta más destacada en es ta clasificación; de las pr imer as en mantener documentos en la nube y ha logr ado simplificar las alter nativas par a compar tir los. Posibilita la opción de cr ear documentos de texto, hojas de cálculo, pr esentación y for mular ios de contacto, así como establece r per misos de acceso: pr ivados, cualquiera con el enlace o público en la Web.
Las únicas limitaciones cor r esponden al tamaño del ar chivo que es de máximo 250MB y sólo se tiene un total de 1GB de disco dur o vir tual par a ar chivos que no sean de Google Docs. En caso de r equer ir mayor espacio en disco vir tual se puede expandir a un costo muy bajo, 25 centavos de dólar adicional por cada Gigabyte; tr atándose de las ver siones empr esar iales el costo es de US$3.50.
2.3. Marcadores Sociales Colaborativos
Los mar cador es sociales son un tipo de medio que per mite almacenar , clasificar y compartir enlaces. Se asemejan a la opción de “favoritos” del navegador Web, con la difer encia de que son accesibles desde cualquier lugar con conexión a Inter net. Estas her r amientas se integr an cada vez más con otr os ser vicios de la Web 2.0 como r edes sociales ( F acebook, T witter , entr e otr os) o lector es de noticias ( RSS) ; ayudando en la gestión de la infor mación.
Las funciones pr incipales de los mar cador es sociales colabor ativos son inter cambiar colecciones de URLs y minimizar el tiempo que tar dan los usuar ios en clasificar y valor ar sus enlaces.
Otr a ventaja es que se pueden aña dir etiquetas ( palabr as clave) par a categor izar los enlaces y escr ibir comentarios, ayudando así a otr os usuar ios a encontr ar sitios Web inter esantes sobr e un tema en par ticular y que no dediquen tanto tiempo en r ealizar una búsqueda que otr o( s) usuar io( s) ya hizo.
Buzz It [13] es un applet de navegador que per mite a los usuar ios captur ar texto, enlaces, imágenes y video; poster ior mente si se desea se puede publicar en blogs, r edes sociales o compar tir con otr os usuar ios. Per mite almacenar enlaces donde pueden ser valor ados y comentados por cada usuar io, pueden ser de tipo pr ivado o público, este último nos br inda la opción de compar tir lo con en la pr opia r ed de amigos.
Cr owdfound [14] nos br inda las opciones descr itas anter ior mente y, además, la posibilidad de r ealizar un seguimiento a tr avés de sus canales de RSS, así como clasificar el enlace en las categor ías y subcategor ías pr edefinidas, esto per mite a los usuar ios identificar r ápidamente los inter eses de otr os en un tema en par ticular . El ser vicio tr ata de apr ovechar las clasificaciones de los enlaces par a encontr ar , añadir , r evisar y compar tir infor mación entr e los usuar ios r egistr ados en el sitio.
etiquetado, que descr iban el sentimiento que obtuvier on al ver lo, es decir se pueden ingr esar palabr as como diver tido, incr eíble o miedo ( por mencionar algunas) , y concede la posibilidad a otr os usuar ios de valor ar si la palabr a clave descr ibe al vídeo asignado. Si un video o palabr a clave es popular son pr esentados en la página pr incipal del sitio, ya que puede ser de inter és par a otr os usuar ios.
Lo inter esante es la integr ación con las r edes sociales T witter y F acebook, per mite compar tir lo dir ectamente con los usuar ios per tenecientes al gr upo de amigos pr opio.
DIAMS [16] es un sistema de distr ibución de enfoque colabor ativo que integr a Inteligencia Ar tificial: utiliza agentes que ayudan a los usuar ios al acceso, captación de infor mación, or ganización e inter cambio de datos. Su objetivo pr incipal es localizar infor mación en su colección de enlaces, r ealizando la búsqueda en sus dir ecciones Web y poster ior mente en el gr upo de usuar ios conectados.
El agente apr ende cuál es la infor mación r elevante dur ante las búsquedas par a compar tir la en Inter net y obtener enlaces de los usuar ios, se or ganiza con el estándar de metadatos de la W3C2.
Los age ntes se encar gan de facilitar la administr ación y colabor ación entr e usuar ios, así como localizar aquellos con inter eses similar es; par a ello se utilizó el sistema Jasper , debido a que puede indexar la infor mación r ecuper ada y manejo de r epositor ios destinados a facilitar la obtención de los enlaces.
DIAMS br inda her r amientas de fácil uso par a los usuar ios y una or ganización inteligente de la infor mación por medio de colecciones de datos. Incor por a un agente per sonal que tr abaja dir ectamente con el usuar io y lo ayuda en la or ganización y manejo de la r ecopilación, logr ando manipular y actualizar el contenido.
2
El agente pr opor ciona pantallas flexibles con un enfoque jer ár quico y tiene la capacidad de gener ar categor ías anidadas, alias y bucles en la estr uctur a, cr eando or ganizaciones dinámicas cuando es necesar io. Los r epositor ios de infor mación están or ientados a objetos y el agente per sonal cr ea una vista vir tual par a que el usuar io los maneje de maner a dinámica.
2.4. Portales Colaborativos
Es una nue va gener ación de por tales cuya car acter ística pr incipal es la colabor ación y par ticipación entr e los usuar ios. Se están convir tiendo en una her r amienta necesar ia par a el manejo de contenidos y tr abajo de maner a conjunta. Entr e los más destacados se encuent r an Wikilengua, F or vo y Wikipedia.
En Wikilengua [17] podemos compar tir infor mación útil sobr e la nor ma, uso y estilo del idioma Español ; con un enfoque pr áctico y par ecido a Wikipedia, los usuar ios pueden colaborar en el por tal. Los temas se or ganizan en var ias categorías: gr amática, or togr afía, léxico, nombr es pr opios, diseño y mundo de la lengua, cada una de ellas cuenta con una subcategor ía y ar tículos.
La colabor ación al por tal puede ser de for ma anónima, se r ecomienda r egistr arse par a par ticipar de for ma r egular . Wikilengua cr ece y se constr uye mediante una comunidad en la que pueden par ticipar autor es, tr aductor es, editor es, estudiantes, etcéter a.
Otr o caso es el de F or vo [18], un diccionar io en línea de pr onunciación que se enfoca, pr incipalmente, en almacenar infor mación r elacionada con la cor r ecta pr onunciación de las palabr as en difer entes idiomas; además de texto, es posible gr abar la pr onunciación de las mismas. Pr incipalmente busca r ecopilar todas las palabr as, incluyendo nombr es pr opios; est án limitadas a 40 car acter es y actualmente per mite clasificar las en 185 idiomas.
la infor mación compar tida y eliminan aquellas palabr as con contenido inapr opiado o que son inventadas. De igual maner a que Wikilengua, es un por tal donde se puede colaborar de for ma anónima o por medio de un usuar io r egistr ado en su por tal. La idea pr incipal es compar tir infor mación.
En esta clasificación, el más impor tante y con mayor colabor ación por par te de los usuar ios es Wikipedia [19]. Una enciclopedia libr e for mada por más de 17 millones de ar tículos en 278 idiomas y dialectos que han sido r edactados por la colabor ación de vo luntar ios en todo el mundo. Iniciada en ener o de 2001 es actualmente el pr oyecto de colabor ación más impor tante de la Web y se encuentr a entr e los 10 sitios más popular es del mundo, aunque debido a la falta de r egulación de la infor mación puede ser , en oca siones, poco confiable en su contenido.
Las her r amientas explicadas anter ior mente nos br indan un panor ama gener al de las funciones pr incipales de un tr abajo colabor ativo asistido por computador a, identificando los puntos pr incipales de cada una de ellas y obteniendo infor mación r elevante y de inter és par a esta pr opuesta de tesis. Por lo que, se busca logr ar una colabor ación con base en el uso de los histor iales de navegación de los usuar ios.
2.5. Resumen del Estado del Arte
Como puede apr eciar se en este br eve Estado del Ar te, son difer entes y var iadas las ver tientes en las cuales se pueden explor ar las nuevas alter nativas que per mitan a usuar ios tr abajar colabor ativamente haciendo uso de T ICs, y más en par ticular , haciendo uso de platafor mas Web.
De esta maner a, más allá de las alter nativas expuestas, nosotr os consider amos que la simple disponibilidad contr olada de los histor iales Web de usua r ios puede ser una her r amienta que se explor e ampliamente en beneficio del conocimiento mutuo y compar tido de la infor mación.
Como ser á expuesto en el siguiente capítulo, nuestr a hipótesis se basa en el hecho de que los histor iales de navegación pueden se r explotados como r epositorios de infor mación; misma que puede ser utilizada por otr os usuar ios de for ma pr oductiva, y, eventualmente, ser utilizados par a efecto de optimizar la pr opia labor de búsqueda de infor mación, o de simple navegación Web.
Capítulo 3. Colaboración sobre la Web: El uso de los
Historiales de Navegación como Complemento en la
Sincronización de la Navegación Web
El tr abajo colabor ativo coadyuva al logr o de objetivos comunes, optimizando fr ecuentemente r esultados, r educiendo la pér did a de tiempo en la r ealización de tar eas individuales y en función de la calidad de la or ganización del gr upo ; todo esto a par tir de la apor tación del conocimiento y competencias individuales de cada uno de los par ticipantes, compar tiéndolos con el r esto de los colabor ador es.
Si bien es cier to que la for ma en la que tr adicionalmente las per sonas han colabor ado par a el logr o de objetivos comunes ha tenido más o menos éxito, también es cier to que con la apar ición y pr opagación del uso de las T ICs se imponen n uevos r etos, tanto humanos como tecnológicos, que per miten al menos conser var las ventajas competitivas que tiene asociadas el tr abajo en equipo.
usuar ios, r emplazando los ambientes pr esenciales en favor de los ambientes a distancia , y logr ando una adaptación simbiótica entr e los sistemas y las per sonas que constituyen los equipos de tr abajo.
Más allá de las pr opuestas pr esentadas y br evemente analizadas en el capítulo de Estado del Ar te en esta ár ea, se maneja como hipótesis la posibilidad de explotar la pr opia actividad de la navegación Web como elemento que per mita la colabor ación entr e usuar ios, sea ésta de maner a dir ecta o indir ecta. Por ello, los usuar ios tienen la opor tunidad de compar tir sus enlaces de navegación siempr e y cuando así lo deseen.
En tér minos gener ales, podemos identificar u na for ma de colabor ación a tr avés de la cual los usuar ios podr án contr ibuir en mayor o menor medida ; consiste en el descubr imiento de posibles r elaciones de colaboración con base en el análisis de los histor iales de navegación de otr os usuar ios del mismo sistema colabor ativo.
3.1. CoLab
CoLab cor r esponde a la pr opuesta de la tesis doctor al del Dr . Guiller mo de Jesús Hoyos Rivera, titulada “CoLab: Conception et Mise en Œuvre d’un Outil pour la Navigation Coopérative sur le Web” (CoLab: Concepción e Imple mentación de una Her r amienta par a la Navegación Cooper ativa sobr e la Web) [4].
La hipótesis de esta pr opuesta r adica en el hecho de que los autor es consider an que, cuando los usuar ios navegan en la Web, se encuentr an aislados los unos de los otr os y no cu entan con un medio que les per mita compar tir entr e ellos sus exper iencias de navegación, a tr avés del envío de un mensaje, utilizando alguna her ramienta de comunicación exter na al navegador Web, par a enviar a su( s) conocido( s) el/los enlace( s) de inter és.
evidentemente la exper iencia de navegación no puede compar tir se de esta maner a.
Con base en los hechos anter io r es se consider a que ser ía útil contar con una her r amienta que per mita, de alguna maner a, sincr onizar los navegador es de var ios usuar ios, de tal for ma que la navegación de uno de ellos se vea automáticamente r eflejada en los navegador es de los demás.
Así sur ge CoLab, como una for ma de suplir aquellas funcionalidades que aún no han sido implementadas par a efecto de per mitir a diver sos usuar ios el compar tir sus pr opias exper iencias de navegación.
CoLab está basado en un modelo de or ganización Maestr o/Esclav o, per o con la car acter ística de que estos r oles son definidos ni asumidos de maner a estática por alguno de los usuar ios, sino que el modelo de or ganización sur ge a par tir de las iniciativas, pr oducto de las necesidades, de los usuar ios.
De esta maner a se pr opuso que la sincr onización de la navegación Web estuvier a basada en una estr uctur a ar bor escente llamada SDT ( Synchr onization Dependency T r ee), la cual tiene la capacidad de evolucionar su estr uctur a a medida que los usuar ios per tenecientes a una sesión vayan cr eando y supr imiendo r elaciones de sincr onización entr e ellos mismos . La for ma más elemental de cualquier SDT es aquella en la que hay un solo usuar io. Una for ma típica de visualizar los SDT es como en la F igur a 2.
En la r aíz de un SDT se encuentra el único usuar io que en ese momento tiene la capacidad de navegar por iniciativa pr opia; los demás usuar ios per tenecientes al mismo SDT se ven imposibilitados de llevar a cabo sus pr opias acciones, quedando dependientes de las acciones del usuar io que se encuentr a en la r aíz.
Dicho en otras palabras, los navegadores de usuarios están “asociados” al de quien se encuentr a en la r aíz, toda acción de navegación ejer cida por éste último se ver á r eflejada en los navegador es de los demás usuar ios per tenecientes al mismo SDT .
Estas r elaciones de sincr onización pr oporcionan la base sobr e la cual se sustenta el modelo total, pues se tr ata de r elaciones jer ár quicas cr eadas a voluntad y con el estr icto consentimiento d e los usuar ios involucr ados; éste es uno de los elementos innovador es de esta pr opuesta, pues los gr upos de tr abajo, vistos bajo la for ma de SDT , son for mados de maner a dinámica y jer ár quica y con base en sus pr opias necesidades de or ganización.
Como r ecién se mencionó, las r elaciones de sincr onización son cr eadas y supr imidas con base en las decisiones de los mismos usuar ios y, en el caso de la cr eación de éstas, se encuentran sujetas a un pr otocolo de autor ización. La supr esión de r elaciones de sincr onización es incondicional.
De esta maner a se pr opusier on dos oper ador es: I_F ollow_You y
You_F ollow_Me, par a efecto de cr ear r elaciones de sincr onización. El pr imer o
tiene como objetivo pr oponer la cr eación de una r elación de sincr onización, en la cual el usu ar io que hace uso del oper ador está dispuesto a per der su pr opia autonomía en favor de aquel al que le envía la pr opuesta; mientr as que el segundo oper a en el sentido contr ar io, en el que el usuar io que hace uso del oper ador invita a otr o usuar io a que pie r da su pr opia autonomía en favor de él mismo.
Figura 3. Operadores ( I_Follow_You y You_Follow_Me)
Es con base en este modelo que se logr a un modo de oper ación suficientemente flexible y lo ba stante apegado a lo que podr ía ser una ver sión ciber nética de nuestr a r ealidad cotidiana cuando tr abajamos de maner a colaborativa, pues efectivamente en el “mundo real” tenemos la capacidad de or ganizar nos de maner a flexible y dinámica, lo que, al asemejar se a nuestr a r ealidad, nos hace más fácil la aceptación de este par adigma.
3.2. Compartición de los Historiales de Navegación
La idea subyacente de la pr opuesta planteada en el pr esente tr abajo consiste en pr omover la colabor ación entr e usuar ios a tr av és del descubr imiento afor tunado de enlaces Web que puedan ser potencialmente de inter és común par a var ios usuar ios con base en el histor ial de navegación Web de otr os usuar ios activos.
que tr aer á como r esultado inmediato ma yor es posibilidades par a logr ar descubr imientos.
La maner a en que se for talece el descubr imiento for tuito es con base en la pr obabilidad no establecida de que otr os usuar ios, al estar activos en una misma sesión, tengan potencialmente inter eses similar es y, por lo tanto, los sitios Web que visitan pueden r esultar les atr activos.
Así, cuando un usuar io esté buscando infor mación podr á r evisar los enlaces visitados por otr os usuar ios y eventualmente encontr ar infor mación que sea de su inter és, debido a que se le pr esentar an enlaces que tengan r elación con las palabr as clave definidas por él.
Además de potenciar el descubr imiento casual se logr a r educir tiempo de búsqueda, el usuar io tiene la posibilidad de or denar los enlaces de acuer do a la valor ación y núme r o de visitas a cada uno. La valor ación puede ser asignada considerando diferentes cr iter ios; como la utilidad de la infor mación del enlace, la cual es evaluada por los usuar ios que lo hayan visitado; ellos consider ar án si fuer on r elevantes los datos encon trados, aunque es de maner a opcional la infor mación que se vaya obteniendo ser á de ayuda par a determinar si es útil o no el enlace.
De esta maner a, con base en una política de autor ización de acceso definida por cada usuar io, en función del tipo de navega ción que esté llevando a cabo, al menos una par te de los URLs que visite dur ante su pr opia sesión de navegación Web ser án almacenados por el sistema. El almacenamiento de estos URLs contendrá, adicionalmente, cier ta infor mación asociada, de for ma que sean fácilmente utilizables par a otr os usuar ios.
Evidentemente la política de acceso deber á estar en función del usuar io . Se puede dar el caso de que no le inter ese publica r los URLs de cier tos sitios que visite, pr obablemente se tr aten de sitios que contenga n infor mación sensible o per sonal.
Par a ello, se consideran las palabr as clave indicadas por el usuar io en
la platafor ma colabor ativa y se compar an con los metadatos3 de cada enlace, mostr ándole al usuar io sólo aquellos enlaces que cump lan con sus inter eses. Cabe mencionar que no se le impide r ealizar búsquedas difer entes a sus palabr as clave.
Esta estr uctur a y compar tición de infor mación r eafir ma la tesis de colabor ación Web, ya que cada usuar io activo estar á contr ibuyendo, de acuer do a su per cepción y pr efer encias per sonales, par a incr ementar r ápidamente la base de datos y, por lo tanto, siempr e existir á un sistema dinámico que tendr á un flujo constante de inter cambio de infor mación en donde cada usuar io podr á utilizar los enlaces apor tados por el gr upo, con la ventaja de que los podr á jer ar quizar en función de cier to valor que se le asigne y la fr ecuencia de visitas a cada enlace.
Los cr iter ios de valor ización pueden deter minar se por utilidad de la infor mación contenida, el inter és es pecífico del usuar io, o tener un valor más genér ico, en cualquier caso, existir á la opción de identificar infor mación específica y enfocada a las necesidades, r equer imientos y pr efer encias per sonales.
3.2.1. Acceso a enlaces.
Al navegar en la Web por la for ma en que están diseñados los navegador es, cada usuario genera un histor ial de sitios visitados, mismo que muestr a sus inter eses o pr efer encias en cuanto a búsqueda y localización de infor mación. La maner a en que cada usuar io accede a los sitios visita dos se ve afectada por diver sos factor es como pueden ser : per sonalidad del usuar io, diseño del sitio, facilidad de navegación dentr o del contenido, enlaces a otr os
sitios, impor tancia e inter és del contenido, así como la estr uctur a de las páginas del Sitio Web.
Estos histor iales que sir ven par a facilitar al navegador , y al usuar io, ayudan a r egistr ar y acceder r ápidamente a estos sitios en visitas subsecuentes. Evidentemente esto no es algo nuevo en sí, ya que las compañías de mer cadeo y publicidad suelen utilizar esta infor mación par a efectuar análisis estadísticos sobr e las pr efer encias y tendencias que muestr an los usuar ios y así enfocar sus campañas hacia esos clientes potenciales.
Este contr ol de infor macióna que se ve sometido cualquier usuario de l a Web, puede ser tan sencillo como analizar y pr opor cionar infor mación de sitios visitados, tendencias de compr as o pr oductos adquir idos, o tan complicado y r iesgoso como: el r obo de infor mación per sonal, datos de cuentas bancar ias o datos per sonales detal lados.
Sin embar go, a pesar de la par te negativa mencionada, en cuanto a los histor iales de navegación en este pr oyecto, cada usuar io va facilitando sus enlaces en for ma consensual, par a gr upos que compar ten o tienen inter eses y pr efer encias comunes, cuyo objetivo es facilitar y coadyuvar en la búsqueda de infor mación, por lo tanto pr omover y favor ecer las r elaciones y descubr imiento de infor mación for tuitos .
Asimismo en este tipo de ambientes de tr abajo, un usuar io dado no siempr e estar á dispuesto a comp ar tir todo su histor ial de navegación con otr os, independientemente del nivel de confianza que haya entr e ellos, ya que depender á de qué tan per sonal sea algún sitio visitado, como puede ser el caso del acceso a una cuenta de cor r eo electr ónico o por tales bancar ios, pondr ía en r iesgo aspectos de segur idad y pr ivacidad per sonal.
Este es un factor muy impor tante que debe ser tomado en cuenta, de for ma que la pr ivacidad de cualquier usuar io no pueda ver se compr ometida.
3.2.2. Búsqueda Explícita
Existe cier ta cantidad de usuar ios que potencialmente pu eden estar dispuestos a compar tir su navegación, par a colabor ar con otr os usuarios, y así logr ar sus pr opios objetivos más eficientemente. Hay que asumir el pr oblema que se pr esenta del otr o lado; cor r esponde a la búsqueda de URLs de inter és entr e todos lo s URLs disponibles en una sesión, pr oducto de la navegación actual o pasada de todos los usuar ios per tenecientes a la misma.
La cantidad de infor mación gener ada a par tir de la navegación de un gr upo de usuar ios puede incr ementarse r ápidamente, por lo que es impor tante consider ar la posibilidad de utilizar her r amientas que faciliten la localización de infor mación; los motor es de búsqueda pueden r ealizar esa función.
En este caso se pr opone una her r amienta que per mita al usuar io buscar tanto en los enlaces pr opios como en los de usuar ios que compar ten, con lo cual se obtendr á un acceso r ápido a la infor mación contenida. De esta maner a el usuar io no per der á tanto tiempo en la búsqueda de infor mación que pueda ser de su inter és.
Se consider an dos for mas a tr avés de las cuales se puede r ecuper ar infor mación r elevante con base en los URLs almacenados, pr oducto de la navegación del conjunto de usuar ios. Una de ellas consiste en la r ealización de búsquedas de maner a explícita, par a las cuales se esper a una r espue sta activa e inmediata.
La ventaja de la búsqueda explícita es que se tendr á acceso r ápido a la infor mación disponible en la her r amienta colabor ativa, y r ealizar á la consulta exclusivamente en sus enlaces y los de los usuar ios que compar ten, por lo que se busca que los datos distr ibuidos sean de utilidad entr e los difer entes usuar ios, encontr ando así inter eses entr e los mismos.
como meta - etiquetas, las URLs cor r espondientes se incluir án en el r esultado de b úsqueda.
Es impor tante mencionar que la platafor ma de colaboración no pr etende r eemplazar a los motor es de búsqueda, sino encontr ar los inter eses potencialmente similar es entr e los usuar ios de acuer do a sus búsquedas y palabr as clave.
Como ya se mencion ó, cada usuar io tiene inter eses par ticular es y pr ior idades de búsqueda, con la posibilidad de navegar en los histor iales de cada usuar io per o únicamente tendr á acceso a aquellos que son compar tidos, es decir de tipo público. Par a ello, fue modelado el oper ador I_Sear ch y la palabr a clave de nuestr o inter és; al ser seleccionada adecuadamente se pueden encontr ar concordancias en los títulos del sitio y en las meta - etiquetas del mismo, obteniendo r esultados que pueden ser de inter és par a el usuar io.
Es impor t ante comentar que la búsqueda ser á factible si el enlace contiene meta - etiquetas alusivas a su contenido, así como un título descr iptivo del Sitio Web que se está visitando. Si no se cumple con estos cr iter ios, se obtendr án listados con infor mación insufic iente o que no cumpla con las necesidades del usuar io.
Se r esalta que la posibilidad de agr egar etiquetas y valor ar los enlaces son opcionales, únicamente pr opor ciona infor mación adicional de ellos y la pr efer encia de los usuar ios, facilitando la cr eación implícita de un colabor ador cooper ativo. La inser ción de etiquetas y búsqueda por palabr as clave nos facilitan suger ir enlaces al usuar io que tengan r elación con sus inter eses, per mitiendo un gr ado de per sonalización elevado.
Consider ando la valor ación r ealizada por los usuar ios se puede deter minar qué enlace es idóneo par a mostr ar se, es decir , cada enlace podr á ser posicionado acor de a su ponder ación.
usuar ios. Se consider a que las palabr as clave son populares c uando tienen un uso fr ecuente en las búsquedas explícitas.
3.2.3. Búsqueda Implícita
A difer encia de la búsqueda explícita, el objetivo pr incipal r adica en el hecho de que el usuar io descubr a por casualidad enlaces que satisfagan sus pr edilecciones de u na maner a r ápida y sencilla sin dedicar mucho tiempo. Este pr oceso tiene un car ácter asociativo - deductivo y de tipo autónomo con difer entes opciones de configur ación y explor ación automatizada.
Los usuar ios pueden acceder a la infor mación r ecomendada qu e puede ser de su inter és, tomando como cr iter io aquellas etiquetas que fuer on definidas por el usuar io y las más utilizadas por el mismo. Esta búsqueda se apoya en el ser vicio pr opor cionado por la platafor ma de colabor ación, de esta maner a se r educe el ti empo dedicado a esta tar ea.
Se diseñó un Ser vicio Web cuyo algor itmo ejecutar á búsquedas mediante un oper ador denominado I_Look_For M, donde M ser á un conjunto de etiquetas de inter és per sonal par a cada usuario. Considerando estas palabr as clave y acor d e con sus pr efer encias o meta - etiquetas más utilizadas se r ealiza la búsqueda implícita, donde las peticiones se ejecutan dentr o de las sesiones existentes efectuándose de maner a autónoma.
La definición de palabr as clave, por par te del usuar io, es la pie za pr incipal par a este tipo de búsqueda, por lo que es impor tante que sean deter minadas adecuadamente par a br indar le infor mación que sea r ealmente de su inter és.
Se tiene la opción de visitar o descartar las URL’s mostradas o, si lo pr efier e, puede inhibir completamente el ser vicio de búsqueda implícita.
Bajo las consider aciones anter ior es es factible cr ear un méto do de búsqueda más selectiv a y eficaz, utilizando meta datos que contengan infor mación estr uctur ada, que descr iban el contenido y tipo de datos; con el análisis de estos meta datos se obtendr án r esultados asociativo - deductivo entr e los enlaces. El cr iter io de or denamiento está basado en el mayor númer o de visitas en or den decr eciente.
Un ejemplo de ello es que un usuar io haya definido palabr as clave
como: SixthSense4, Pr anav Mistr y5 y Pattie Maes6, así el Ser vicio Web, en caso de estar activo, encontr ar á r elación con Media Lab, T ecnología Móvil y T ED debido a que Pattie Maes tiene asociaciones con las palabr as clave solicitadas.
Con estas dos opciones de búsqueda el usuar io puede encontr ar infor mación sin impor tar la cantidad de enlaces compar tidos por otr os usuar ios, es decir , facilitar el acceso a la infor mación de maner a simple y sin dedicar mucho tiempo a la búsqueda.
Capítulo 4. Diseño, Desarrollo e Implementación
Con base en los conceptos planteados anter ior mente, llevamos a cabo la implementac ión de un pr ototipo exper imental con la finalidad de pr obar nuestr as hipótesis de base. Este pr ototipo es llamado CoLab++ ya que puede ser consider ado como una etapa poster ior de avance de la platafor ma CoLab, dando un nuevo sentido a la colabor ación a tr a vés de la navegación Web.
4 I n t e rf a z g e st ua l p o rtá t il q ue a ume nt a e l mu nd o f í si c o q u e n o s ro d e a c o n i nf orma c ión d igit a l. 5 A si st e n t e d e i nv e st ig ac ió n y c a n did at o a P h D e n e l M IT
En este capítulo se pr esentan los componentes más impor tantes que integr an la platafor ma CoLab++, como es la base de datos, los lenguajes de pr ogr amación usados par a la cr eación del pr ototipo, ar quitectur a de comunicación, entr e otr os aspectos.
4.1. Arquitectura de Comunicación
El planteamiento de una aplicación que conlleve a un tr abajo colabor ativo es compleja, ya que es necesar io consider ar puntos impor tantes como la concur r encia, latencia, distr ibución de infor mación, coor d inación de los gr upos de tr abajo dependiendo del espacio y tiempo, y pr incipalmente que el objetivo sea logr ar la colabor ación entr e usuar ios.
La intención pr incipal es pr opor cionar la funcionalidad necesar ia par a que los usuar ios inter actúen de maner a se ncilla y sin complicaciones, de tal for ma que el tr abajo en gr upo sea posible.
Consider ando que , en el pr esente tr abajo se abar car án otr as for mas en que los usuar ios establecerán nexos de colabor ación mediante la compar tición de sus histor iales de navegac ión. Se pr opone integr ar al navegador Web Google Chr ome© un plugin que facilite la inter acción entr e usuar ios.
La extensión fue desar r ollada par a este navegador, ya que no afecta su funcionamiento en caso de ser actualizado; caso contr ar io al navegador W eb Mozilla F ir efox®, donde las instr ucciones dependen de la ver sión en que se esté desar r ollando o ejecutando, gener ando así pr oblemas de compatibilidad en la platafor ma de colaboración. Par a el desar r ollo de CoLab++ se identifican tr es puntos pr imor diale s par a el tr abajo en gr upo, que son: comunicación, colabor ación y coor dinación [22].
par ticipantes envían mensajes en distintos momentos de tiempo, en este caso las notificaciones y cor r eo s electr ónico s se le envía al usuar io con las r ecomendaciones de acuer do a sus palabr as clave indicadas.
La colabor ación es logr ada con el descubr imiento de r elaciones de cooper ación eventual con base en el análisis d e los histor iales de navegación de los usuar ios.
Y por último la coor dinación, la cual ser á logr ada por el plugin integr ado al navegador Web, ya que se encar gará de notificar de maner a automática las r ecomendaciones de otr os usuar ios y r ealizadas por el a lgor itmo de búsqueda, es decir , or ganizar á y sincr onizar á la infor mación necesar ia.
Br indar al usuar io la flexibilidad necesar ia par a facilitar que las r elaciones ent r e usuar ios sur jan por si solas. E s por eso que al pr oveer una her r amienta que apor te fun cionalidades simplifique la colabor ación mediante la compar tición de los histor iales de navegación.
Debido a que CoLab++ está basado en el modelo Cliente - Ser vidor tiene como objetivo pr incipal gar antizar un alto r endimiento de la platafor ma colabor ativa mediante el uso adecuado de todos los r ecur sos disponibles y la administr ación eficiente de los enlaces compar tidos.
Este modelo per mite la compar tición del histor ial de navegación entr e var ios dispositivos conectados a una r ed, es decir , usuar ios que cuen ten con una sesión activa. Una ar quitectur a de este tipo posibilita que el usuar io pueda r ealizar una petición o cons ulta a un ser vidor par a saber dó nde están los usuar ios en la r ed.
El ser vidor se encar gar á de monitor ear quienes se encuentr an con sesión a ctiva y se ocupar á de gener ar un histor ial de navegación que contenga los r esultados a las peticiones de búsqueda.
Este modelo es utiliza do par a el diseño de ser vicios Web basados en el pr otocolo HT T P par a r ealizar acciones de lectur a, escr itur a y eliminación de infor mación, par a ello se tienen cuatr o pr incipales métodos ( GET , POST , PUT y DELET E) y una URL que define la acción por cada r equ er imiento ( figur a 4) .
Figura 4. Servicios REST
El diseño de Ser vicios Web y el diseño de inter faces XMLHT T P concede n con un estilo de llamada a pr ocedimiento r emoto per o sin usar SOAP; utiliza un pr otocolo Cliente -Servidor sin estado, es decir , cada mensaje HT T P contiene toda la infor mación necesar ia par a compr ender la petición en su totalidad.
Una de sus ventajas es la accesibilidad , ya que es fácil de ver y manipular datos; no impor ta el lenguaje de pr ogr amación utilizado, la URL del ser vicio no cambia por lo que puede ser r eutilizado sin impor tar la platafor ma de desar r ollo [23].
Los Ser vicios Web fuer on cr eados en el lenguaje de pr ogr amación PHP y las peticiones son r ealizadas por el usuar io mediante llamadas Ajax en la par te fr ontal de la aplicación colabor ativa. De esta maner a la exper iencia del usuar io es más atr activa, ya que se evita r efr escar la página constantemente e inter actuar en ella. El tiempo de esper a par a cada petición se r educe así como el tr áfico al ser vidor .
Uno de los objetivos es que el usuar io cuente con una her r amienta que le br inde las opciones necesarias par a logr ar una colabor ación y compar tición de su histor ial de navegación.
Los desafíos pr incipales de la aplicación consisten en logr ar la compar tición de infor mación entr e los usuar ios, mantener la segur idad de la misma , pr opagar los datos, logr ar la disponibilidad de los enlaces y la comunicación. El acceso al contenido debe ser de maner a sencilla, optimizando el ancho de banda, comunicación en tiempo r eal y segur idad en las sesiones.
Par a el manejo y almacenamiento de la infor mación se utilizan dos bases de datos: una de tipo r elacional ( MySQL) y otr a no r elacional ( NoSQL) . La pr imer a contiene los catálogos necesar ios que suministr an infor mación al sistema, es decir , el catálogo de meta - etiquetas, enlaces, r egistr o d e usuar ios, etcéter a; y la segunda almacena el histor ial de navegación de los usuar ios y listas de acceso, como se muestr a en la siguiente figur a .
Una de las ventajas de utilizar MySQL en el almacenamiento de los catálogos es su facilidad de uso y sencillez par a implementar aplicaci ones Cliente - Ser vidor . Esta aplicación , como ya se mencionó, ser á alojada en un solo ser vidor y se encar gar á de almacenar la infor mación gener al necesar ia par a el funcio namiento del complemento.
En cuanto a NoSQL , se r ealizó un análisis de tr es posibles bases de tipo no r elacional que podían utilizar se, como es CouchDB7, MongoDB8 y
Cassandr a9; debido a la r epr esentación de los datos, r apidez de inser ción y el ser vicio gr atuito en la nube se utilizó MongoDB.
Entr e las r azones de usar dos bases de datos consistió en manejar una colección de datos con un esquema var iante. Dependiendo de los datos obtenidos de cada enlace visitado sus datos pueden ser var ios, por lo que una base de datos con estr uctur a fija no es la adecuada como es el caso de MySQL.
Existe la posibilidad de manejar gr andes cantidades de datos, como es el caso de los histor iales de navegación, MongoDB favorece a guar dar gr andes cantidades de infor mación y en caso de ser r equer ido expandir el espacio de almacenamiento. Sus car acter ísticas nos per mite n ejecutar en diver sos clúster s. T al y como se muestr a en la siguiente figur a podemos tener la misma colección de datos en difer entes clúster s y apuntar a la col ección sin pr oblemas.
7 G e st o r d e b a se d e d a t os d e c ó d ig o a b iert o
8 S i st e m a d e b a se d e d at os No S Q L o rie nt ad o d e d oc u men to s
Figura 6. Arquitectura de MongoDB
De esta for ma se necesita configur ar el ser vidor que har á el papel de “Maestro” y los servidores restantes q ue serán denominados “Esclavos”. En caso de r equer ir mayor espacio par a los histor iale s de navegación el algor itmo enviar á la inser ción sin pr eocuparse de que el ser vidor pr incipal se encuentr e completamente lleno, es por eso que se definen los otr os ser vidor es.
Figura 7. Arquitectura de CoLab++
De esta maner a en CoLab++ se logr an separ ar adecuadamente la capa de datos y la capa enfocada a la s funciones mediante peticiones a los Ser vicios Web.
4.2. Intercambio de Enlaces
Como ya se mencionó anter ior mente, es a tr avés del inter cambio de enlaces se busca facilitar la colabor ación entr e un gr upo de usuar ios mediante la sincr onización explícit a de las actividades de navegación y el descubr imiento de eventuales r elaciones de colabor ación basadas en el análisis de los histor iales de navegación de los usuar ios.
Las URLs que son visita das y per mitidas por el usuar io ser án almacenadas en su colección de datos; en caso contr ar io de no ser guar dadas se evita r á tener esa infor mación que el usuar io no ha per mitid o compar tir .
Es por ello que la comp ar tición de los histor iales de navegación puede ser de tipo público o pr ivado, donde este último ser á visualizado exclusivamente por el usuar io.
Los usuar ios son r esponsables de definir qué enlaces desean compar tir y cuá les desean excluir en los r esultado s de búsqueda. Cada usuar io podr á , en un momento dado, definir su esquema per sonal en tér minos de accesibilidad de su pr opio histor ial de navegación par a ot r os usuar ios de la misma sesión.
Es impor tante pr opor cionar les la opción de establecer la disponibi lidad de su histor ial, de for ma que se pueda conservar nivel de pr ivacidad en función de sus deseos o necesidades. Por lo que se pueden identificar dos dir ectivas pr incipales: Allow y Deny.
Estas dir ectivas le per miten definir las r estr icciones que desea imponer en su histor ial de navegación par a otr os usuar ios de la misma sesión, da ndo como r esultado enlaces públicos y pr ivados según lo establezca.
De acuer do a la infor mación que tenga , el usuar io deber á categor izar mediante el uso del plugin los enlace s a compar tir o denegar , buscando minimizar los posibles r iesgos de divulgación de infor mación sensible. Es impor tante señalar que cada enlace que visita de otr o histor ial de navegación es almacenado, así que se deber á especificar si dicho enlace ser á comp ar tido o no.
De igual for ma, tiene la posibilidad de definir una lista de enlaces par a cada una de las siguientes políticas de acceso: “Allow - Deny” y “Deny - Allow”. Si desear a compar tir todo su histor ial de navegación deber á seleccionar la opción “Allow All”; caso contr ar io optar á por “Deny All” que denegar ía toda compar tición de enlaces ; únicamente con é ste último oper ador los enlaces no ser án almacenados en la colección de datos de MongoDB.
compar tidos, los r estantes, por omisión , ser án compar tidos a otr os usuar ios con sesión activa.
Por ejemplo, supongamos que el usuar io tiene acceso a su banca en línea ( www.banamex.com) , cor r eo electr ónico ( www.hotmail.com) y tutor iales ( www.tutor iales.com) ; en este caso desea compar tir exclusivamente el enlace que cor r esponde a tutor iales, par a ello utilizar á la dir ectiva “Allow - Deny” ingr esando en la platafor ma el en lace par a su banca en línea y cor r eo electr ónico, los demás ser án compar tidos .
Por otr o lado, con “Deny - Allow”, política r estr ictiva por omisión, el usuar io deberá ingr esar la especificación de las URLs que desea compar tir o hacer los públicos, aquellos no indicados ser án pr ivados. Consider ando el ejemplo anter ior , el usuar io debe ingr esar la URL cor r espondiente a los tutor iales, ya que es l a dir ección que desea compar tir ; los r estantes ser án denegados.
Por cada alter nativa, el usuar io podr á configur ar su listado de enlaces individuales, de tal for ma que facilite la disponibilidad de su histor ial de navegación, sea r estr ingiendo oper mitiendo un listado de enlaces individuales específicos.
Par a ello, el usuar io debe configur ar su pol ítica de acceso ; en caso de no tener la se desplegar á una notificación en el panel de administr ación del plugin, advir tiéndole que no cuenta con ninguna r estr icción de compar tición y que sus enlaces ser án compar tidos en su totalidad.
Es impor tante mencionar que la configur aci ón funciona de acuer do a su última elección de compar tición, por lo que deber á tener cuidado al establecer par ámetr os de disponibilidad de los enlaces par a cada opción.
Como puede r esultar ya evidente, la especificación de r estr icciones a par tir de URLs individuales puede llegar a ser una tar ea bastante tediosa, difícil, y eventualmente hasta imposible.
Es por esta r azón que CoLab++ per mite la especificación de URLs gener ales a par tir del uso de car ac ter es comodín, como es el caso del aster isco ( *) . Este símbolo sustituir á una secuencia de car acter es, dependiendo de la posición que ocupe, r eemplazando u na par te del nombr e del dominio e indicando que debe incluir todo aquello que cor r esponda a la dir ección Web.
Si se intr oduce al aster isco al inicio de la URL se incor porarán todos los subdominios del sitio indicado; es decir , si escr ibimos *.google.com, todos los subdominios como scholar .google.com, mail.google.com, docs.google.com, etcéter a, se adicion ar án a la selección.
En caso de aplicar lo al final indica que todas aquellas páginas cor r espondientes al sitio ser án incluidas; por ejemplo, la selección de las páginas www.uv.mx/mia, www.uv.mx/dia, pueden ser englobadas por www.uv.mx/* y tendr íamos el mismo r esultado. El objetivo pr incipal es facilitar la configur ación de su listado de acceso .
4.3. Funcionamiento de las Búsquedas Explícita e Implícita
Se descr ibe las pr incipales car acter ísticas de los dos oper adores que se han diseñado y que el usuar io puede utilizar par a sus búsquedas. P or un lado se encuentra el oper ador I_Search en el caso de aquellas consultas explícitas
y I_Look _F or M par a las implícitas.
4.3.1. El Operador I_Search
La búsqueda explícita (I_Search) se inicia cuando el usuar io r ealiza una solicitud de búsqueda al ser vidor ingr esando la palabr a clave, éste se encar gará de compar ar la solicitud del usuar io con las palabr as clave de todos los enlaces almacenados en cada uno de los histor iales de navegación.
Par tiendo del hecho de que hay var ios nodos con sesiones activas y un nodo busca una palabr a clave. P or ejemplo PHP, la tar ea del ser vidor es compar ar la palabr a PHP con las meta - etiquetas de los enlaces almacenados en cada histor ial, si cumple con la petición se agr ega a la lista de r esultados.
Cuando se ter mine de compar ar en todos los histor iales d e navegación se enviar á la infor mación r esultante. E l usuar io visualizar á los enlaces que cumplen con su petición, así como el nombr e de usuar io que está compar tiendo la infor mación. Si el usuar io dese a ver el histor ial de navegación completo de otr o r ealiza la petición dir ecta con el usuar io de inter és.
En otr as palabr as, el Ser vicio Web gener a una petición a la Base de Datos en MySQL par a localizar el ID de la palabr a clave buscada, poster iormente se r ealiza una búsqueda en todos los histor iales de navegación almacenados en la Base de Datos en MongoDB consider ando cor r esponda al ID, desplegando así los r esultados de la consulta en for mato JSON, siendo un ar chivo liger o par a el inter cambio de datos y c on una estr uctur a adaptable lo que per mite el fácil uso y lectur a del mismo; tal infor mación contiene todos los enlaces r elacionados con la palabr a clave solicitada por el usuar io y el ID del usuar io que tiene el enlace.
Debido a la cantidad de datos que se r equier en almacenar , así como el pr ocesamiento del mismo, infor mación como son los enlaces se guar dan en su for mato hash, es decir , de la maner a más r educida posible; por lo que, un r egistr o de veinte car acter es puede disminuir a seis.
Al final se tien e una colección más r educida debido al despliegue del
búsqueda en el catálogo almacenado en MySQL, por lo que se obtendr á el identificador y poster ior mente se consulta en todos los histor iales de navegación que se encuentr an en MongoDB, dando como r esultado un ar chivo JSON con los enlaces de búsqueda .
Figura 8. Funcionamiento de la Búsqueda Explícita (I_Search)
Este pr oceso fue diseñado de tal for ma que las consultas sean r ápidas y no afecte n el r endimiento del sistema , de maner a que , sin impor tar el númer o de usuar ios conec tados, el funcionamiento sea adecuado. Las consultas se r ealizan en ambas bases de datos y se despliega un ar chivo JSON par a facilitar la lectur a y compr esión de infor mación ; caso contr ar io, si se utilizar an otr os for matos o ar chivos de texto .
4.3.2. El Operador I_Look_For M
La búsqueda implícita (I_Look _F or M) es r ealizada en caso de ser habilitada por el usuar io. El ser vidor almacena, además del histor ial de navegación, las pr efer encias o palabr as de inter és por cada usuar io; se encar gará de buscar d e maner a autónoma en los histor iales de navegación de las sesiones existentes.