MODALIDAD PRESENCIAL ESCUELADECIENCIASDELACOMPUTACIÓN

Tamaño: px
Comenzar la demostración a partir de la página:

Download "MODALIDAD PRESENCIAL ESCUELADECIENCIASDELACOMPUTACIÓN"

Transcripción

1 UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA La Universidad Católica de Loja MODALIDAD PRESENCIAL ESCUELADECIENCIASDELACOMPUTACIÓN CIENCIAS COMPUTACIÓN CONFIGURACIÓN DE UNA ARQUITECTURA PARA RECUPERACIÓN DE DISEÑO DE UN MODELO PARA RECUPERACIÓN DE INFORMACIÓN INFORMACIÓN MEDIANTE EL USO DE UNA HERRAMIENTA DE SOFTWARE ORIENTADO A LA CREACIÓN C DE UNA BIBLIOTECA DIGITAL MÉDICA Trabajo de fin de carrera previo a la obtención del título de Ingeniero en Sistemas Informáticos y Computación AUTOR: DIRECTOR: Christopher her Ortega Patricio Espinosa Ortega Espinosa Ing. Guido o Riofrío Eduardo Calderón Riofrío Calderón Loja Ecuador 2011

2 CERTIFICACIÓN Ing. Guido Eduardo Riofrío Calderón DIRECTOR DE TESIS CERTIFICA: Haber dirigido y supervisado el desarrollo del presente proyecto de tesis previo a la obtención del título de INGENIERO EN SISTEMAS INFORMÁTICOS Y COMPUTACIÓN, y una vez que este cumple con todas las exigencias y los requisitos legales establecidos por la Universidad Técnica Particular de Loja, autoriza su presentación para los fines legales pertinentes. Loja, Junio Ing. Guido Riofrío Calderón 2

3 AUTORÍA El presente proyecto de tesis con cada una de sus observaciones, análisis, evaluaciones, conclusiones y recomendaciones emitidas, es de absoluta responsabilidad del autor. Además, es necesario indicar que la información de otros autores empleada en el presente trabajo está debidamente especificada en fuentes de referencia y apartados bibliográficos.... Christopher Ortega Espinosa. 3

4 CESIÓN DE DERECHOS Yo, Christopher Patricio Ortega Espinosa, declaro ser autor del presente trabajo y eximo expresamente a la Universidad Técnica Particular de Loja y a sus representantes legales de posibles reclamos o acciones legales. Adicionalmente declaro conocer y aceptar la disposición del Art. 67 del Estatuto Orgánico de la Universidad Técnica Particular de Loja que su parte pertinente textualmente dice: "Forman parte del parte del patrimonio de la Universidad la propiedad intelectual de investigaciones, trabajos científicos o técnicos y tesis de grado que se realicen a través, o con el apoyo financiero, académico o institucional (operativo) de la universidad".... Christopher Ortega Espinosa 4

5 AGRADECIMIENTO Agradezco a todas las personas que han contribuido a mi formación, tanto personal como profesional en especial al director de tesis, Ing. Guido Riofrío y codirector, Ing. Manuel Sucunuta, ya que gracias a su motivación y seguimiento he podido culminar de manera satisfactoria este proyecto de tesis. Christopher Ortega 5

6 DEDICATORIA Con mucho cariño dedico la presente tesis: A Dios, que me ha permitido culminar con éxito una de mis metas. A mis padres Oswaldo y Carmita quienes me han formado como una persona de bien y me han brindado su apoyo en todo momento de mi vida. Todo lo que soy les debo a ellos. A mis tíos quienes me han apoyado en todo momento. Christopher Ortega 6

7 Índice de Contenidos ÍNDICE DE FIGURAS ÍNDICE DE TABLAS PERFIL DEL ANTEPROYECTO DE TESIS INTRODUCCIÓN RESUMEN CAPÍTULO 1 1. Estado del Arte Recuperación de información (RI) Sistemas de evaluación RI Creación de Índices en la colección de documentos Definición de Biblioteca Tipos de Bibliotecas Biblioteca Electrónica Biblioteca Digital Biblioteca Híbrida Historia de los motores de Búsqueda Motores de Búsqueda Características de los Motores de Búsqueda Arquitectura de un Motor de Búsqueda Estrategias de búsqueda de información Metadatos Clasificación de los metadatos Metadatos Dublin Core (DCMI) Uso de Metadatos Implementación de una biblioteca digital médica Otras técnicas analizadas para el proceso de RI Algoritmo Stemming Procesamiento del Lenguaje Natural (PLN) Minería de Texto

8 CAPÍTULO 2 2 Indexación e Índice Invertido Indexación Descripción del proceso Indexación y búsqueda de documentos Descripción de índice Ejemplo de indexación documental Sistemas de Indexación Modelo de recuperación de documentos digitales Índice Invertido Tipos de Índice Invertido Ìndice invertido con direccionamiento a palabra Ìndice invertido con direccionamiento a documento Otras técnicas analizadas de Indexación Arreglo de Sufijos Archivo de Firmas Ventajas y desventajas de las técnicas de indexación CAPÍTULO 3 3. Recuperación de información y Relevancia de un documento Recuperación de información Diferencias entre recuperación de datos y recuperación de información Relevancia Cálculo de relevancia de un documento Elementos que intervienen en recuperación de información Modelos de Recuperación de información Modelo Vectorial Modelo Probabilístico Medidas de evaluación para un sistema de Recuperación de información Precisión Exhaustividad (Recall) Otras técnicas analizadas de Recuperación Modelo Booleano Modelo de Relevance Feedback

9 CAPÍTULO 4 4. Propuesta de una Arquitectura para recuperación de Información Arquitectura para un sistema de recuperación de información Descripción de la arquitectura de recuperación de información Capa de Presentación Capa Lógica de Negocios Capa de Acceso a datos Capa de Servicios CAPÍTULO 5 5. Herramienta de Software a Utilizar Justificación de la Herramienta Descripción de Nutch Arquitectura de Nutch Otras Herramientas analizadas Lucene SOLR Diferencias y semejanzas entre Lucene, Nutch y SOLR Trabajos Relacionados CAPÍTULO 6 6. Plan de Validación y Pruebas Pruebas al Sistema Propósito Identificación de motores de búsqueda a probar Metadatos utilizados por el motor de búsqueda Nutch Pruebas utilizando metadatos en Nutch Comparación de resultados obtenidos por Nutch y Google site search Porcentajes de exhaustividad y precisión Precisión expresado en porcentajes de análisis de varianza CONCLUSIONES Y RECOMENDACIONES Conclusiones Recomendaciones GLOSARIO DE TÉRMINOS ANEXOS Anexo1: Instalación de la Herramienta de Software Anexo2: Descripción de las figuras utilizadas en la arquitectura propuesta Anexo3: Principales algoritmos utilizados por el motor de búsqueda

10 Anexo4: Direcciones urls médicas utilizadas Anexo5: Fórmulas estadísticas ANOVA utilizadas en el experimento BIBLIOGRAFÍA ÍNDICE DE FIGURAS Figura 1.6.3: Arquitectura de un buscador Figura 2.1: Ejemplo de construcción de un índice Figura 2.2.1: Registro de la tabla de control y estructura de un índice Figura 2.2.2: Ficheros de ejemplo Figura 2.3.1: Modelo de recuperación de documentos digitales utilizando indexación Figura 2.4: Ejemplo de índice invertido resultante Figura 2.5.1: Estructura de índice Invertido con Direccionamiento a Palabra Figura 2.5.2: Estructura de índice Invertido con Direccionamiento a Documento Figura 2.6.1: Arreglo de sufijos Figura 2.6.2: Archivo de firmas Figura 3.4: Elementos que intervienen en recuperación de información Figura 4.1: Arquitectura propuesta para recuperación de información Figura 5.3: Arquitectura de Nutch Figura 5.4.1: Arquitectura de Lucene Figura 6.6.1: Exhaustividad entre Nutch y Google (site search) Figura 6.6.2: Precisión entre Nutch y Google (site search) ÍNDICE DE TABLAS Tabla 1.2: Criterios para evaluar un sistema de recuperación de información Tabla 1.8: Ejemplo de análisis de objetos de búsqueda y metadatos asociados Tabla 1.9: Clasificación de Metadatos Tabla 1.9.1: Metadatos Dublín Core (DCMI) Tabla : Categoría de documentos en minería de texto Tabla 2.2.3: Tablas de equivalencia para ficheros Tabla 2.2.4: Tablas de control y estructura para ficheros Tabla 2.7: Ventajas y desventajas de técnicas de indexación Tabla 3.2: Diferencias entre recuperación de datos y recuperación de información Tabla 3.3.1: Representación de la sumatoria de pesos de una consulta Tabla 5.5: Diferencias y semejanzas entre Lucene, SOLR y Nutch Tabla 6.5: Parámetros de exhaustividad y precisión de Nutch y Google (site search) Tabla 6.7: Tabla de porcentajes de precisión entre Nutch y Google (site search) Tabla 6.8: Análisis de varianza para motores de búsqueda Nutch y Google Tabla 6.8.1: Análisis de varianza para índices de precisión transformado a arco seno Tabla 6.8.2: Comparación de promedios para Nutch y Google (site search) Tabla 6.8.3: Resultados obtenidos por análisis de varianza

11 PERFIL DEL ANTEPROYECTO DE TESIS 1. TEMA DISEÑO DE UN MODELO PARA RECUPERACIÓN DE INFORMACIÓN ORIENTADO A LA CREACIÓN DE UNA BIBLIOTECA DIGITAL MÉDICA. 2. OBJETIVOS 2.1 OBJETIVO GENERAL Analizar las diversas técnicas y herramientas utilizadas en recuperación de información centrándome en una metodología óptima para el desarrollo de una arquitectura aplicable a un sistema de recuperación de información para la implementación de una biblioteca digital médica. 2.2 OBJETIVOS ESPECÍFICOS Estudio general del tema: "Recuperación de información" y de las técnicas que se utilizan en el proceso, analizando las mejores alternativas para la solución. Proponer una arquitectura sobre recuperación de información en la implementación de una biblioteca digital médica. Investigar y configurar una herramienta de software adecuada para recuperación de información. Hacer las respectivas pruebas de la herramienta accediendo a información alojada en la web. 11

12 3 APORTACIONES DE LA TESIS En este proyecto se propone una arquitectura para un sistema de recuperación de información (IR), la misma que posee técnicas de indexación, índice invertido y un módulo para el análisis de relevancia sobre la información recuperada. 3.1 Técnica de Índice invertido Índice invertido con direccionamiento a palabra En este tipo de índice se analiza la cadena enviada por el usuario como consulta y es analizada tomando en cuenta palabras irrelevantes (stoplists) y palabras vacías (stopwords). Las palabras que forman la cadena de consulta son almacenadas en un archivo en el cual se identifica la posición de cada palabra con respecto al documento que pertenece. Índice invertido con direccionamiento a documento En direccionamiento a documentos se va a identificar el tema de los documentos con los cuales se va a trabajar para poder recuperar por el nombre con el que está identificado. Las técnicas de índice invertido con direccionamiento a palabras y documento se detallan de mejor manera en el capítulo Modelo Híbrido probabilístico/vectorial Dentro de la arquitectura se incluye un componente de ranking de relevancia el cual trabaja con un subcomponente híbrido probabilístico/vectorial, usado para calcular la relevancia de un documento con respecto a la consulta formulada. Este subcomponente híbrido probabilístico/vectorial es un modelo matemático propuesto el cual está formado por la combinación del modelo vectorial con el modelo probabilístico, estos dos modelos trabajan en conjunto para analizar el documento, la consulta y finalmente la probabilidad de que la información que estoy recuperado sea relevante a las necesidades de usuario. Para mayor información sobre este modelo matemático revisar el capítulo 4. 12

13 3.3 Herramienta para el proceso de Recuperación de Información Finalmente se va a utilizar una herramienta para el proceso de recuperación de información. Para su definición se realizará un previo análisis del funcionamiento de las herramientas de software libre de Apache Software Foundation 1 que son: Lucene 2, SOLR 3, y Nutch 4. Todas estas se utilizan en procesos de recuperación de información, a excepción de SOLR que es utilizada en extracción de información 5. La ventaja de utilizar estas herramientas de software libre es que se las puede adecuar y configurar a las necesidades de información, además me permiten trabajar con sistemas operativos como Windows, Linux y MAC. La herramienta que se va a utilizar es Nutch, esta me permite realizar recuperación de información, también trabaja con la técnica de índice invertido y el componente de indexación se adapta a la arquitectura propuesta. Además se puede categorizar la información por orden de relevancia. El funcionamiento y arquitectura se describe de mejor manera en el capítulo 5. Nutch trabaja en conjunto con las herramientas nombradas anteriormente para procesos de indexación y recuperación de información, con el fin de acceder al recurso y analizar su estructura. El objetivo principal de una biblioteca digital es interactuar con información alojada en la web, acceder a un recurso por su contenido y de esta manera recuperar solamente información relevante a las necesidades de un usuario. Para el plan de validación y pruebas se va a realizar una comparación del funcionamiento de los motores de búsqueda Nutch y Google Site Search 6, enviando a la base de datos direcciones urls médicas para finalmente verificar los resultados obtenidos por cada uno de ellos. 1 Apache Software Foundation. Disponible en: 2 Apache Lucene. Disponible en: 3 Apache SOLR. Disponible en: 4 Apache Nutch. Disponible en: 5 Para más información sobre extracción de información. Revisar el glosario de términos 6 Motor de búsqueda personalizado de Google. Google Site Search. Disponible en: 13

14 INTRODUCCIÓN Muchas universidades, empresas y bibliotecas modernas utilizan ahora sistemas de recuperación de información para facilitar el acceso a libros, revistas, artículos y otros recursos digitales que se encuentran en la web. Toda esta información es de acceso libre sin restricciones, o privado como por ejemplo información del gobierno, de una institución en la cual solo pueden acceder ciertos usuarios con niveles de seguridad. Según (CORTÈS, 2004) Recuperación de Información es útil en áreas como automatización de oficinas 7 y cualquier disciplina que se basa en documentos para realizar su trabajo. Un documento es un objeto de datos, generalmente textual, aunque también pueden contener otro tipo de información tales como fotografías, gráficos, etc. La información que se va a recuperar de la web o de un repositorio tiene que ser relevante a las necesidades de un usuario, hay que tomar en cuenta que una consulta se representa como un estado mental formulado por cada persona. En un repositorio existe información de un área específica como por ejemplo la medicina, o de diversas áreas de la ciencia. Para acceder a la información que se encuentra almacenada en un repositorio o en la web se hace uso de herramientas informáticas, algoritmos los cuales me permiten recuperar información necesaria, a manera de agilitar una búsqueda de un artículo, documento o tema específico. Las enciclopedias digitales establecen campos semánticos para identificar un tema, permiten comprender en que rama de la ciencia se encuentra. Son medios de ayuda al estudiante y personas que desean identificar una consulta que formulan para cubrir sus necesidades de información. 7 Sistemas de automatización de Oficinas. Definición en Glosario de términos. Disponible en: 14

15 RESUMEN Este trabajo se inicia con un análisis y visión general sobre el tema "Recuperación de Información", se va a conocer los principales temas que se utilizan en el proceso investigativo. Además se realiza un análisis de metadatos y el estándar Dublin Core 8, aplicable a bibliotecas digitales. Posteriormente se analizará la técnica de indexación, la cual se utiliza para generar un índice de cada recurso. Dentro de la técnica de índice invertido está índice invertido con direccionamiento a palabra e índice invertido con direccionamiento a documento, usables al momento de analizar una consulta, generar el vocabulario y las concurrencias. Una vez que se ha analizado la técnica de indexación e índice invertido, la siguiente fase es la de recuperación de información y relevancia de un documento. Se analiza el modelo vectorial y probabilístico usables para analizar el documento con respecto a la consulta que efectúa un usuario. Estos modelos se agrupan más adelante para formar un modelo matemático híbrido probabilístico vectorial aplicable al módulo de relevancia de la arquitectura de software propuesta. Se propone una arquitectura de software para el proceso de recuperación de información, la cual posee todas las técnicas y modelos analizados en el proceso investigativo. Todos los componentes y sub componentes trabajan de forma secuencial orientándose al proceso por el que pasa la consulta que formula un usuario. Se hace un análisis comparativo de las herramientas de software libre de la empresa Apache Software Foundation: Apache Lucene, Apache SOLR y Apache Nutch, para el proceso de recuperación de información. Todas estas herramientas de software tienen sus respectivas funcionalidades, ya que me permiten realizar tareas diferentes de recuperación y extracción de información. Una vez que se ha realizado el análisis se procede a la elección de Nutch 9 ya que sus componentes se adaptan al funcionamiento de la arquitectura propuesta, me permite realizar recuperación de información y obtener resultados relevantes a las necesidades de un usuario, además es adecuada para bibliotecas digitales. Una vez establecida la herramienta de software se realizará la configuración para demostrar el proceso de recuperación de información, para lo cual voy a utilizar plugins, archivos y algoritmos, adaptándolos a la arquitectura de software propuesta. 8 Dublin Core Metadata Initiative. Disponible en: 9 Versión a utilizar: 15

16 Capítulo 1 Estado del Arte Divide et impera. Julio César Resumen En este capítulo se van a analizar las principales técnicas y estándares que existen actualmente en el proceso de recuperación de información, además se conocerán temas que se utilizan en el proceso investigativo. Este capítulo abarca una visión general de las tecnologías existentes en recuperación de información. 16

17 1. Estado del Arte 1.1 Recuperación de información Es un proceso que se encarga de obtener información almacenada en un repositorio o en la web a fin de poder interactuar con ella en un momento determinado. Para realizar el proceso de recuperación de información se utilizan diferentes herramientas de software como son: motores de búsqueda, crawler, agentes inteligentes, consultas a un repositorio el cual posee información digital en diferentes formatos como por ejemplo: PDF, XML, DOC, imágenes, videos, entre otros. En (FALGUNI, 2007) para realizar la búsqueda de un documento se la hace mediante palabras clave (Keywords) que me permitan localizar información que el usuario está buscando sobre un tema específico. Una palabra clave (Keyword) es un término que me permite identificar de manera única el contenido de un recurso al momento de realizar una búsqueda. Por ejemplo si se selecciona la palabra hoteles se puede estar buscando, el hotel más cercano, una imagen de hoteles o un análisis de hoteles de 5 estrellas en la ciudad de Quito. También existen los Meta Keywords que se utilizan para identificar las palabras claves de una página web. Las búsquedas se realizan a nivel del contenido estructural de campos textuales como por ejemplo: título, subtítulos y estructura interna. Uno de los problemas que surgen en la búsqueda de información son: Silencio documental: Según (RODRÍGUEZ, 2005) silencio documental se refiere a documentos que no han sido recuperados por el sistema, debido a que las palabras utilizadas no son las adecuadas para realizar la búsqueda. Ruido documental: Según (MARTÍNEZ., 2003) ruido documental se refiere a los documentos recuperados por el sistema que no son relevantes a las necesidades de información de un usuario. 1.2 Sistemas de evaluación RI En (MÉNDEZ, 2004) un sistema de recuperación de información se puede evaluar tomando criterios como: eficiencia de ejecución, eficiencia de almacenamiento y eficacia de recuperación de información. La importancia de estos criterios debe ser decidida por los desarrolladores del sistema, la selección de estructuras de datos adecuadas y los algoritmos para la aplicación. A continuación se especifica los criterios para evaluar un sistema de recuperación de información. 17

18 Tabla 1.2: Criterios para evaluar un sistema de recuperación de información Criterio Eficiencia de ejecución Eficiencia de almacenamiento Eficacia de recuperación de información Definición Es el tiempo que demora un sistema en ejecutar una tarea. Un buen sistema de recuperación de información es aquel que devuelve un resultado en corto tiempo. Se mide por la cantidad de información que almacena un repositorio, base de datos, o un motor de búsqueda. Además se toma en cuenta el número de bytes utilizados en información almacenada. Por ejemplo en un repositorio se puede tener almacenado 50MB en información de artículos sobre ciencia y tecnología. Se refiere a la información relevante recuperada en base a una petición formulada por un usuario. Un buen sistema de recuperación de información no es el que recupera una gran cantidad de información, sino el que recupera información relevante a las necesidades de un usuario 1.3 Creación de índices en la colección de documentos En esta fase se genera un índice o valor numérico que me permite identificar los documentos y otros recursos de manera única los cuales se encuentran almacenados en un repositorio o colección documental. El usuario formula una consulta sobre cualquier tema de interés, el sistema la transforma con el fin de representar la necesidad de información a manera de analizar y finalmente realizar el proceso de búsqueda del recurso por medio de su índice. (RAMÍREZ, 2001) 1.4 Definición de Biblioteca MAGAN José dice que: desde la antigüedad la biblioteca ha desempeñado una función importante en la custodia del saber. Su primera manifestación fue el libro oral, el cual perduró durante milenios, y convivió incluso con el escrito. Fue el medio de las civilizaciones para trasmitir su historia y tradiciones a las generaciones siguientes. (MAGAN J., 2000) En la actualidad las bibliotecas poseen múltiple información disponible en: libros, revistas, documentales, periódicos, etc. en sus respectivos stands. Para realizar un préstamo el bibliotecario tiene que registrar el libro en el sistema informático y agregar los datos personales del alumno para establecer el plazo de préstamo y las respectivas penalizaciones establecidas en el caso de la no entrega en el tiempo previsto. En la mayoría de áreas de la ciencia todo libro, artículo y publicación con información actualizada se encuentra en internet, con lo cual las bibliotecas actuales ya se están 18

19 volviendo obsoletas. La mayoría de libros que se encuentran en las bibliotecas, se los puede encontrar en internet en formato digital, lo cual facilita su acceso, ya que un estudiante puede estar en su casa revisando el libro sin necesidad de trasladarse a la biblioteca tradicional, lo cual genera menos tiempo y gastos en movilización. 1.5 Tipos de bibliotecas Es importante conocer los diferentes tipos de bibliotecas que existen en el medio, ya que se las puede diferenciar y conocer sus respectivas funcionalidades. A continuación se mencionan tres tipos de bibliotecas: Biblioteca Electrónica Una biblioteca electrónica es aquella que se encuentra formada por una infraestructura ordenada formada por libros y computadores, además cada computador está equipado con un software que permitirá gestionar y administrar la biblioteca en aspectos como: préstamos de libros a estudiantes, registro de libros prestados en un periodo determinado, sanciones a estudiantes por retraso o pérdida de un libro. Según LÓPEZ César una biblioteca electrónica cuenta con sistemas de automatización que le permiten una ágil y correcta administración de los materiales que resguarda, principalmente en papel. Así mismo, cuenta con sistemas de telecomunicaciones que le permiten acceder a su información. (LÓPEZ, 2005) La biblioteca tradicional de la UTPL (Universidad Técnica Particular de Loja) es una biblioteca electrónica, todas sus funciones están manejadas por un sistema informático. Para ver la disponibilidad de un libro el bibliotecario registra en el sistema el libro y busca por campos específicos como nombre, autor y código. Todas las actividades operativas dentro de la biblioteca se manejan de manera centralizada Biblioteca Digital Una biblioteca digital o virtual, constituye uno de los recursos tecnológicos de la sociedad del siglo XXI, que permite a los usuarios interactuar en la búsqueda de conocimientos científicos especialmente de las ciencias sociales, educación, sociología, ingeniería, para citar las más importantes, sin descartar la ciencias naturales, biología, ciencias de la tierra, ecología, historia de la ciencia y filosofía. La mayor parte de bibliotecas digitales residen en la web perteneciente a alguna institución educativa o autónoma, la cual va a ser conocida por personas que acceden a ese sitio. (FERNÁNDEZ L., 2003) 19

20 En la actualidad existen varias bibliotecas digitales, la mayoría están orientadas al área educativa, una de ellas es la biblioteca virtual de la UTPL 10 la cual posee información digital dirigida a estudiantes y personas interesadas en visitar el sitio web. Para acceder a la biblioteca se ingresa a: Todos los artículos que posee se orientan a cada una de las 23 carreras universitarias. Las bibliotecas digitales permiten el acceso a estudiantes y personas que estén interesadas en temas investigativos, ya que en la actualidad se maneja información digital de diversas áreas como por ejemplo: medicina, ingeniería, etc. Como es de conocimiento de todos, la información más actualizada se encuentra en la web y en repositorios Biblioteca Híbrida Es un modelo cuya utilidad se la puede desarrollar e incrementar según las necesidades de una institución educativa, fundaciones, organizaciones sociales etc. Por ejemplo se puede crear un modelo híbrido combinando una biblioteca virtual con una biblioteca electrónica, tomando en consideración que las funcionalidades próximas van a ser mucho más robustas que un modelo en común. Los resultados obtenidos van a permitir que el usuario posea mejores beneficios en el uso y manejo de la información que posee la biblioteca. (PÉREZ, 2004) 1.6 Historia de los Motores de Búsqueda En (RODRÍGUEZ H., 2007) se detalla la historia y evolución de los motores de búsqueda, tanto en técnicas como funcionalidad. World Wide Web Wanderer Los motores de búsqueda son sistemas de recuperación de información que surgieron en 1993 con la aparición del primer robot de búsqueda llamado WWWW (World Wide Web Wanderer). Este robot utilizaba la técnica de búsqueda lineal, la cual está basada únicamente en analizar el título de cada página web sin ingresar al contenido del texto. En la actualidad esta técnica está descartada pese a su ineficiencia en la obtención de resultados relevantes. 10 Biblioteca virtual de la UTPL. Disponible en: 20

21 Web Crawler El 20 de abril de 1994 Brian Pinkerton de la Universidad de Washington desarrolló el primer Web Crawler. Su diferencia en comparación a WWWW es que mejoraba el proceso de recuperación sobre recursos web, implementando la técnica de indexación de forma completa y buscando la información en todos sus campos de contenido. Además permitió que se obtuvieran resultados relevantes pese a su análisis de contenido en una página web. Una vez desarrollado e implementado este crawler, se procedieron a realizar pruebas para analizar su funcionamiento, mediante las cuales se observó que se llegaron a realizar cerca de un millón de consultas. Este proyecto fue el pilar para el funcionamiento de los siguientes motores de búsqueda, en base a este se desarrollaron nuevos web crawler, mejorando operaciones, implementando algoritmos más eficientes, con el fin de robustecer sus funcionalidades próximas. Alta Vista y Yahoo Un año después de la creación del primer web crawler por Pikerton. En 1995 aparecieron los buscadores Alta Vista y Yahoo, los cuales realizaban mejoras en cuanto a funcionalidad y obtención de un gran número de resultados. El funcionamiento de Alta Vista y Yahoo consistían en implementar la técnica de procesamiento de lenguaje natural 11, mediante la cual una consulta formulada por un usuario era transformada en un lenguaje entendible por el motor de búsqueda. Se trataba del uso del modelo booleano que se encarga de traducir la consulta en lenguaje natural a una cadena de números binarios en combinación de operadores lógicos del algebra booleana. Una de las ventajas de este modelo es que recupera un gran número de resultados acordes a una búsqueda, además realizaba búsquedas multilingües utilizando veinte y cinco idiomas mundiales. La mayor desventaja del modelo booleano es el tiempo de respuesta en la obtención de resultados. 11 Para la definición de Lenguaje natural. Revisar el glosario de términos. 21

22 Google En 1998 surgieron nuevas mejoras en cuanto a técnicas para perfeccionar las búsquedas y recuperación de información en la web. En este año se creó Google, uno de los motores de búsqueda más utilizados en el mundo por su eficiencia en la obtención de resultados relevantes. Este proyecto fue creado por los ingenieros Larry Page y Sergey Brin de la Universidad de Standford, utiliza técnicas de indexación que son más efectivas que las de los motores de búsqueda Alta Vista y Yahoo, pudiendo de esta manera analizar todo el contenido de una página web y presentando al usuario información de interés a sus necesidades de información. En 2003 Google implementó un cambio en torno a la búsqueda semántica con el fin de mejorar los aspectos de búsqueda y recuperación de información. La arquitectura actual de Google posee varios componentes y sub componentes que trabajan de manera secuencial con el fin de analizar la consulta y procesarla utilizando técnicas de indexación, el uso de un crawler para buscar las direcciones urls, un repositorio de índices almacenados por cada página web, algoritmo Page Rank para la relevancia de resultados obtenidos, entre otros que permiten que las funcionalidades de Google sean mucho mas robustas que los otros motores de búsqueda nombrados anteriormente. Como se ha podido observar anteriormente, la tecnología de los motores de búsqueda tiene su evolución en aspectos de mejora para la obtención de resultados. Todos los motores de búsqueda permiten recuperar información que se encuentra en la web utilizando ciertos campos para su acceso y recuperación. Hoy en día el motor de búsqueda más efectivo en recuperación de información es Google, porque permite acceder a un gran número de resultados acordes a la consulta formulada por un usuario. La empresa Google no solo brinda el servicio de buscador, sino varias utilidades al usuario, una de ellas es el motor de búsqueda personalizado que es site search 12, que me permite trabajar con un conjunto de direcciones urls de interés de un usuario para acceder a la información de manera rápida y recuperar una gran cantidad de resultados. 12 Google Site Search. Disponible en: 22

23 1.6.1 Motores de Búsqueda Un motor de búsqueda es un sistema de recuperación de información (SRI). Se encarga de buscar un recurso sobre la base de datos de índices generados por el crawler en las que luego los usuarios hacen sus búsquedas mediante palabras clave, metadatos o por contenido estructural del texto. (EPIFANIO, 2007) Los motores de búsqueda trabajan en conjunto con los repositorios para recuperar información que se encuentra alojada, como por ejemplo el motor de búsqueda Lucene se encarga de acceder al repositorio DSPACE 13 para buscar documentos digitales mediante un índice que me permite identificar el recurso que se desea recuperar Características de los motores de búsqueda Las características principales de los motores de búsqueda según el sistema de bibliotecas de la UCN 14 (Universidad Católica del Norte) se detallan a continuación: Búsqueda por campos especializados Crear consultas estructuradas para devolver resultados más precisos. Esto se suele realizar en motores de búsqueda como SOLR y Lucene nombrados a detalle en el capítulo 5. Permite buscar un recurso XML o PDF por ciertos campos como por ejemplo: dirección url, titulo, autor. Búsqueda por idioma Permite identificar un recurso según un idioma determinado al momento de realizar una consulta. Existen varios documentos en idiomas diferentes como por ejemplo español e inglés que son los más comunes. Búsqueda por formato Recupera información por el formato del recurso como por ejemplo: (PDF, DOC. XLS, HTML, etc.) Todas estas características son las que permiten que un motor de búsqueda recupere recursos acorde a ciertos campos de búsqueda para que de esta manera sea más efectivo el proceso de recuperación de información y obtener resultados adecuados a las necesidades de un usuario. 13 Repositorio DSPACE. Disponible en: 14 Características de los motores de búsqueda según la UCN. Disponible en: 23

24 1.6.3 Arquitectura de un Motor de Búsqueda Según (NAVAZO, 2006) la arquitectura de un buscador se basa en los siguientes elementos: Robot (crawler/spider): Es un programa que recorre la web analizando todas las direcciones urls que son enviadas como parámetro de búsqueda. Para cada dirección url el crawler va a buscar subdirecciones asociadas a ella. Por ejemplo dentro de la dirección url: se van a generar 30 subdirecciones asociadas. Indexador: Es un programa que recibe las páginas o recursos web recuperados por el crawler y crea un índice respectivo para identificarlos. Existen casos como la herramienta de software Nutch en que el crawler y el indexador trabajan en conjunto con el fin de realizar búsqueda e indexación de direcciones urls como una sola tarea. Base de datos de índice: Es donde se almacenan los índices de las páginas web y recursos que se están utilizando. Los índices se almacenan en la base de datos de índices del crawler (crawldb). Motor de Búsqueda: Es un programa que se encarga de analizar la consulta formulada por un usuario y de buscar en la base de datos de índice los documentos relacionados. El motor de búsqueda también corre localmente y realiza las búsquedas, retornando básicamente las URLs ordenadas. Interfaz: Representa la interfaz gráfica de usuario, la cual se encarga de recibir la consulta y mostrar los resultados obtenidos. Figura 1.6.3: Arquitectura de un buscador (NAVAZO, 2006) 24

25 1.7 Estrategias de búsqueda de Información El proceso de búsqueda de información consiste en recuperar un documento o recurso de distintas formas, como por ejemplo mediante la búsqueda por campos especializados, utilizando metadatos, realizando análisis de todo el texto del recurso, entre otros. (TIRRI, 2009) Al momento de realizar una búsqueda se deben seleccionar ciertos campos para acceder al documento requerido. En el ejemplo se va a buscar un artículo de tipo PDF utilizando la palabra Ingeniería de software en los siguientes campos: título, autor y tema, siendo posible recuperar el mismo recurso de distintos significados: Título: "Ingeniería de Software" Autor: " Ingeniería de Software, Pressman Roger" Tema: "Procesos de Ingeniería de Software" Como se puede observar, de las tres maneras se puede recuperar el artículo de tipo PDF de Ingeniería de Software, en este caso la búsqueda se la realiza mediante campos. En la actualidad existen herramientas de software para realizar el proceso de recuperación de información, pero cada una de ellas utiliza ciertos métodos de búsqueda del recurso. Las herramientas de software libre: Nutch y Google Site Search utilizan metadatos y analizan todo el contenido estructural del texto para realizar recuperación del recurso en la web. 1.8 Metadatos En la (W3C, 2010) metadatos son un conjunto de atributos que me van a permitir identificar un recurso el cual posee elementos descriptivos que me permiten que su recuperación sea más rápida y oportuna. En el ejemplo se va a poder observar lo explicado. Tabla 1.8: Ejemplo del análisis de objetos de búsqueda y metadatos asociados Metadatos Objeto Página Web PDF Libro Vehículo Información descriptiva del objeto (título, url, lenguaje, palabras clave) (título, autor, url, palabras clave) (título, autor, ISBN, edición) (placa, marca, modelo, año, color) 25

26 En la tabla 1.8 se muestran cuatro objetos diferentes, los cuales poseen atributos asociados a ellos para la descripción e identificación respectiva. Existen algunos estándares de metadatos, los más utilizados son: Metadatos Dublín Core 15 (DCMI) y LOM 16 (Metadatos para objetos de aprendizaje). Estándar aplicable a Bibliotecas Digitales El estándar Dublín Core fue desarrollado universalmente para la descripción de un conjunto de recursos en la web, su aplicación es muy general y también se lo utiliza más en bibliotecas digitales. Es uno de los estándares más utilizados en la mayoría de recursos web de la actualidad. Estándar aplicable a Objetos de aprendizaje El estándar LOM (Learning Object Metadata) es un estándar de e-learning aprobado por (IEEE :2002) sobre metadatos para objetos de aprendizaje y publicado por el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE). (LOM, 2002) 1.9 Clasificación de los Metadatos En la siguiente tabla tomada de AYLLON, Julio se especifican los tipos de metadatos y sus objetivos correspondientes. Tabla 1.9: Clasificación de los Metadatos (AYLLON, 2007) Tipo Objetivo Ejemplo Descriptivos Describen e identifican recursos de información. Permite a los usuarios la búsqueda y recuperación de información. Estructurales Administrativos Facilitan la navegación y la presentación de los recursos. Proporcionan información sobre la estructura interna de los documentos, así como la relación entre ellos. Facilitan la gestión de conjuntos de recursos. Incluye la gestión de derechos y sobre control de acceso y uso. Dublín Core o Etiquetas META de HTML XML y RDF o SGML MOA2 15 Metadatos Dublin Core. Disponible en: 16 Metadatos LOM. Learning Object Metadata. Disponible en: 26

27 1.9.1 Metadatos Dublin Core (DCMI) Dublín Core es una organización dedicada a la adopción de estándares de metadatos. Se creó con el propósito de facilitar la descripción y recuperación de recursos de información. Estos metadatos intentan establecer en la red los datos necesarios para describir, identificar y encontrar un recurso. (DUBLINCORE, 2011) Dublin Core está formado por quince definiciones semánticas descriptivas, que se utilizan para identificar un recurso. Existen herramientas de software como es el caso de Nutch analizado a detalle en el capítulo 5 que realiza recuperación de información y utiliza solamente algunas definiciones de este estándar como por ejemplo (DC. Title, DC. Subject, DC.Language, DC.Identifier, DC.Creator). Los elementos de Dublin Core pueden clasificarse en: Tabla 1.9.1: Metadatos Dublín Core (DCMI) (RED-IRIS, 2008) Contenido del recurso Etiqueta Dublín Core DC.Title: DC.Subject: DC.Description: DC.Source: DC.Language: DC.Relation: DC.Coverage: Descripción Titulo. El nombre dado al recurso. Materias y palabras clave. El tema del contenido del recurso. Descripción del contenido del recurso. Fuente. Referencia al recurso del que deriva el documento actual. Lengua. Idioma del contenido del recurso. Relación. Una referencia a un recurso relacionado al contenido. Cobertura. Ámbito del contenido del recurso. Puede tratarse de una especificación geográfica, temporal o legal. Propiedad intelectual del recurso DC.Creator: DC.Publisher: Editor. DC.Contributor: Autor. Responsable de la creación del contenido. Puede ser una entidad, una persona o un servicio. Editor. Responsable de que el recurso se encuentre disponible. Colaborador. Responsable de hacer colaboraciones al contenido del recurso. 27

28 Instancia del recurso DC.Date: DC.Type: DC.Format: DC.Identifier: Fecha. Fecha asociada a la creación o modificación del recurso. Se suele seguir la notación AAAA-MM-DD El tipo o categoría del contenido. Palabras clave de un vocabulario que describen la naturaleza del recurso. Formato. Descripción física del recurso, como su tamaño, duración, dimensiones, etc. si son aplicables. Identificación. Referencia unívoca para el contenido del recurso. Por ejemplo una URL o un ISBN Uso de los metadatos En (GAMBOA, 2005) los metadatos se utilizan para los siguientes propósitos: Acceder a un recurso en la web: Internamente en una página web se encuentran definidos ciertos metadatos que van a permitir acceder a un recurso, para que la recuperación sea más rápida. Por ejemplo una herramienta de software de recuperación de información trabaja con los siguientes metadatos: DC.Title, DC.Subject, DC.Identifier. Esto me permite realizar una búsqueda ingresando al contenido de la página web y accediendo al texto interno por los tres tipos de metadatos establecidos. Acceder a recursos educativos: En la actualidad existen recursos educativos que se los puede encontrar en la web o en un repositorio, todos estos poseen metadatos asociados para su recuperación, entre estos está el estándar Dublin Core y LOM (Learning Object Metadata), nombrados anteriormente. En el caso de la UTPL tiene un repositorio en el cual existen recursos que están establecidos con el estándar LOM y Dublin Core. 28

29 1.10 Implementación de una Biblioteca Digital Médica La biblioteca digital médica Medline Plus se encuentra disponible en: me permite interactuar con información del área médica en diferentes temas como: salud, medicina, suplementos, videos y multimedia. La información digital que posee Medline Plus son artículos en formatos tipo: PDF, XML y videos digitales, para seleccionar la información más adecuada a las necesidades de usuario. Según la escuela de Sistemas Informáticos de la Universidad de Complutense de Madrid en su proyecto titulado como: Desarrollo de un sistema de indexación y búsqueda sobre la base de datos de biomedicina Medline 17 ha podido implementar el motor de búsqueda de Lucene, el cual permite realizar el proceso de recuperación de información almacenada y finalmente acceder al repositorio de datos de Biomedicina Medline la cual posee una gran cantidad de recursos importantes para profesionales y estudiantes. (FERNÁNDEZ, 2008) El funcionamiento de esta biblioteca médica se centra en dos componentes que son el repositorio de información médica que contiene todos los recursos médicos en formato digital y el buscador Lucene que va a permitir acceder a la información almacenada. Ventajas de la biblioteca PUB-MED La interfaz grafica de la aplicación y sus funciones son de fácil acceso Para acceder a la información no es necesario registrarse en la biblioteca. Como resultado a la consulta obtengo resultados relevantes. La información se encuentra ubicada por orden alfabético. Los recursos a los cuales se accede son bastante didácticos para un estudiante o persona interesada en el área médica. 17 Desarrollo de un sistema de indexación y búsqueda sobre la base de datos de biomedicina Medline. Disponible en : 29

30 1.11 Otras técnicas analizadas para recuperación de Información Algoritmo Stemming Se encarga de analizar la raíz (stem) de cada palabra con el fin de realizar un análisis morfológico y recuperar las palabras que posean la misma raíz. Por ejemplo la raíz o stem con posee las siguientes palabras: contraloría, contabilidad, conesup, consejo. Esta técnica la utilizan los diccionarios digitales en el proceso de recuperación de palabras. En google si se pone la palabra con se va a obtener un conjunto de resultados orientados a esa raíz con el fin de analizar la similitud entre las palabras. Según (CASTILLO, 2002) existen diversos algoritmos para realizar el proceso de stemming, los más conocidos son: Porter Stemming Algorithm y Lovins Stemming Algorithm. El objetivo de estos algoritmos es eliminar sucesivamente los sufijos y finalmente obtener la raíz de la palabra. El algoritmo más eficiente en el proceso de análisis de la raíz de las palabras es el Porter ya que ocupa menos recursos y recupera un gran número de palabras al momento de realizar una consulta Procesamiento del lenguaje natural (PLN) Es una sub-rama de la inteligencia artificial, cuyo objetivo es la comunicación entre personas y el sistema que se va a utilizar. El usuario ingresa una consulta de un tema específico en lenguaje entendible por las personas y el sistema la traduce en lenguaje entendible a su representación. Los algoritmos de PLN se encargan de traducir la consulta que formula una persona y procesarla para finalmente obtener un resultado. Uno de los métodos que se utilizan para transformar las consultas de persona- sistema es el Modelo Booleano, el cuál traduce la consulta en números binarios con sus respectivos operadores lógicos and, or, not. PLN es una técnica que se utiliza en el proceso de extracción de información, dado que la extracción debe ser sintáctica y semánticamente coherente para el usuario. La extracción de información se encarga de analizar bloques de texto de un documento o recurso recuperado y procesarlo como tal, pero en el caso del procesamiento de la información se trata el concepto de recuperación y extracción de la información como uno solo ya que se va a recuperar un conjunto de recursos. Esta técnica se encarga de clasificar un documento en el sentido que se trata de sintetizar al máximo el contenido para luego organizarlo. (RODRÍGUEZ J., 2002) 30

31 Minería de Texto Es una técnica que me permite analizar todo el contenido estructural de un documento almacenado en una colección documental. Está formado por tres módulos lingüísticos independientes utilizados para analizar el texto: Módulo morfológico: Se encarga de reconocer las palabras enviadas en una cadena de texto. Modulo sintáctico: Analiza las oraciones de una consulta. Módulo semántico: Se encarga de analizar todas las relaciones entre palabras. Para representar una consulta, se utilizan grafos conceptuales que representan conceptos y relaciones. Los conceptos indican el atributo que se quiere representar. Una desventaja de representar las consultas utilizando grafos es que el sistema tarda un poco más en la presentación de resultados al usuario. (MONTES, 2004) El objetivo de esta técnica es clasificar los documentos textuales por categorías con el fin de representar el conocimiento de diversas áreas de la ciencia como por ejemplo: ingeniería, medicina, biología, agronomía, abogacía, entre otras. Si en un repositorio tengo 200 artículos, estos van a ser categorizados por áreas de conocimiento específicas como se muestra en la tabla Tabla : Categoría de documentos en minería de texto. Área de conocimiento Tipo de Recurso Número de documentos Ingeniería Artículo PDF 35 Medicina Tesis PDF 80 Biología Revista digital 12 Agronomía Tesis PDF 21 Abogacía Artículo PDF 52 Total de documentos del repositorio

32 Capítulo 2 Indexación e Índice Invertido Lo mismo le pasa al hombre que al árbol. Cuando más quiere subir a las alturas y a la luz, más vigorosamente tiende sus raíces hacia la tierra, hacia abajo, hacia lo oscuro y profundo. F. Nietzche Resumen: En este capítulo voy analizar la técnica de indexación e índice invertido para el proceso de recuperación de información, en el que propongo un modelo de ejemplo que me permitirá observar el proceso de funcionamiento de recuperación de documentos que se encuentran almacenados en un repositorio. Hay que tomar en cuenta que primero es la fase de indexación y luego la de recuperación. 32

33 2.1 Indexación En la actualidad existe una gran cantidad de información documental que se encuentra alojada en la web, repositorios de información, la cual exige técnicas especializadas de indexación que permitan un rápido acceso a los documentos que buscan los usuarios. Para realizar la búsqueda de un documento sobre un tema específico se utilizaba una búsqueda lineal que consiste en ir recorriendo secuencialmente todas las palabras del documento y comprobar la coincidencia de la palabra recorrida con la palabra buscada. Este tipo de búsqueda sólo será apropiada cuando el texto sea pequeño (por ejemplo, unos pocos megabytes) o bien, cuando no se pueda soportar el espacio adicional que ocupa el índice. La búsqueda lineal la utilizó el primer motor de búsqueda (world wide web worm) 18 que buscaba solamente el título de las páginas web y no accedía a su contenido, tardaba mucho tiempo en la obtención de resultados por petición de un usuario. Para mejorar la búsqueda de un recurso en la web se realizó un proceso de mejora que consiste en construir estructuras de datos textuales, denominados índices, para permitir acelerar la búsqueda. Se utiliza la técnica de indexación para construir y mantener un índice cuando el texto de una colección sea grande y necesite actualizarse en intervalos regulares de tiempo, como diariamente, semanalmente, etc. Actualmente las técnicas de indexación se utilizan en motores de búsqueda eficientes como Google, Lucene, Nutch, SOLR, Kngine 19, los cuales indexan una gran cantidad de recursos en la web y en repositorios locales, además el tiempo de respuesta de una petición y obtención de resultados es más rápido en comparación a la búsqueda lineal. En el proceso de indexación se utiliza un índice que es un numero o identificación asignado a un documento para localizarlo al momento de realizar una búsqueda para que esta se mas efectiva, y recuperar exactamente el documento que se desea obtener. En algunas bibliotecas digitales se utiliza la técnica de indexación para realizar búsquedas por título, autor, tema, que tenga la información relacionada acerca de donde se encuentra el número del libro (identificación respectiva) para encontrarlo rápidamente en el sistema. (LUACES, 2007) 18 Historia del primer motor de búsqueda world wide web worm (wwww). Disponible en: 19 Motor de búsqueda Kngine. Disponible en: 33

34 Según (MANNING C. D., 2009) el proceso de indexación consiste en asignar un índice a cada documento o recurso realizando un proceso de direccionamiento para recuperar la información que se encuentra almacenada en el repositorio o en la web. De esta manera se acelera el acceso a la información, como por ejemplo: documentos (pdf, doc). Si se elimina, modifica o ingresa nueva información al repositorio, hay que actualizar los índices para luego realizar las búsquedas eficientemente. A continuación se muestra un ejemplo del proceso de indexación (construcción de un índice) que consiste en identificar el documento asignando un valor numérico o índice para identificar los términos de que componen la consulta como se muestra en la figura 2.1 Search: Consultas sobre medicina natural Index: Archivo Índice Término Consultas Sobre Medicina Natural 2351 consultas 4312 sobre 6542 medicina 7432 natural Figura 2.1: Ejemplo de la construcción de un índice. (MANNING, 2009) Descripción del proceso Primeramente se clasifica en un archivo todos los términos que forman la consulta, a cada uno de ellos se le asigna un índice que sería un valor numérico para poder identificarlos. Para realizar el proceso de indexación se recorre los términos de la consulta (search) enviada por el usuario y esta se almacena en un archivo, extrayendo los términos que vayan apareciendo. Finalmente el valor total del índice es la asociación de todos los números que forman la cadena de texto que identifica el documento. El valor del índice obtenido para el documento Consultas sobre medicina natural es que lo identifica del resto. 34

35 2.2 Indexación y búsqueda de documentos El proceso de indexación es útil en la búsqueda de un tema, documento o recurso, mediante el acceso al contenido. Uno de los ejemplos más claros para acceder a un recurso en un diccionario o enciclopedia es localizar al final de las hojas del libro el respectivo índice el cual va a permitir identificar de manera más rápida la información de interés. En la actualidad desde la expansión del internet una de las técnicas más eficientes utilizadas por los motores de búsqueda actuales como Google, es la técnica de indexación a través del uso de índice invertido cuyo fin es analizar el recurso y obtener una respuesta rápida por parte del motor de búsqueda, de esta manera se acelera el proceso de obtención de resultados relevantes a una petición de usuario. (KLASS, 2007) Descripción de Índice Un conjunto de documentos estructurados está formado por varios archivos, cada uno de ellos contendrá al menos un documento que es definido como un TD (tipo de documento). Además, para conocer qué elementos están contenidos dentro de otro basta con saber qué región del texto cubre cada uno y para ello es suficiente saber en qué posiciones comienza y finaliza cada elemento estructural. (MANNING, 2009) Fichero Estructura Posición Inicial Posición Final Figura 2.2.1: Registro de la tabla de control y estructura de un índice. (MANNING, 2009) En la figura se muestra la organización básica de un registro, que forma la estructura elemental del proceso de indexación. En cada campo de dicho registro se representará para cada elemento la estructura que forma la colección, el fichero en el que aparece el tipo de elemento y las posiciones en las que comienza y termina. El registro presentado en la figura es una de las versiones más elementales del mismo y dependiendo de las necesidades de recuperación, se le pueden añadir más campos que permitan mejorar los tiempos de respuesta del sistema de recuperación, como por ejemplo una referencia que apunte al elemento estructural actual. (MANING C., 2009) 35

36 Los documentos que constituyen una colección se ajustan a un mismo TD 20 (tipo de documentos), pero hay casos en los que pueden existir tipos de documentos distintos, pero su contenido a nivel semántico sea el mismo. En este caso se tiene que definir nuevos campos a nivel estructural Ejemplo de indexación documental En este ejemplo se va a ilustrar los componentes de búsqueda de un recurso tipo web analizando toda su estructura. Se va a conocer los campos internos del documento para realizar el proceso de recuperación de información. (MANNING, 2009) Para ilustrar la técnica de indexación de un recurso tipo web se analiza primero su estructura interna. Mediante un ejemplo, se supone que una colección de documentos está formada por los ficheros que se muestran en la figura Estos documentos se ajustan a un TD (tipo de documento) que sirve para representar un recurso, en el cual toda la información que contiene está delimitada entre las etiquetas <DOC>, un recurso tendrá un título, uno o varios autores (delimitados entre las etiquetas <TITULO>...</TITULO> y <AUTOR>...</AUTOR> respectivamente), también tiene un campo de tipo dirección URL del recurso (<URL> </URL>) y además estará formado por secciones (etiquetas <SEC>...</SEC> las cuales pueden contener sub secciones (etiquetas <SUBSEC>...</SUBSEC>). 20 Para información sobre el término TD. Revisar Glosario de Términos. 36

37 P0 P1 P3 P5 P7 P8 P9 P10 P11 P12 P13 P15 P17 P18 P19 Fichero 1 <DOC> <URL> /</URL> <TITULO> Protocolo SNMP </TITULO> <AUTOR> Douglas Comer </AUTOR> <SEC> Modelo y arquitectura de SNMP </SEC> <SEC> Ejemplo de variables MIB </SEC> </DOC> <DOC> <TITULO> Seguridad en Internet </TITULO> <AUTOR> Douglas Comer </AUTOR> <SEC> Implementación de SSL e IP SEC </SEC> </DOC> P2 P4 P6 P14 P16 P 0 P 1 P 3 P 5 P 7 P 9 P 10 P 11 P 12 P 13 P 14 P 15 P 16 P 17 Fichero 2 <DOC> <URL> </URL> <TITULO> Agentes Móviles </TITULO> <AUTOR> Alberto Escudero </AUTOR> <AUTOR> Marco Gates </AUTOR> <SEC> Modelo de seguridad en agentes móviles <SUBSEC> Autenticación entre sistemas de agentes </SUBSEC> <SUBSEC> Soporte e infraestructura para comunicaciones </SUBSEC> </SEC> <SEC> Autenticación de agentes Modelo de comunicación </SEC> </DOC> P 2 P 4 P 6 P 8 Figura 2.2.2: Ficheros de ejemplo (MANNING, 2009) 37

38 A continuación se representan las tablas de equivalencia para representar los ficheros utilizados y los elementos estructurales, estos poseen un valor numérico (id) para identificarlos. Si se aplican las equivalencias entre los nombres que se muestran en la figura se obtiene la tabla de control de estructura que se ilustra en la figura Tabla 2.2.3: Tablas de equivalencia para los ficheros Fichero id Estructura id Fichero 1 1 DOC 1 Fichero 2 2 URL 2 TITULO 3 AUTOR 4 SEC 5 SUBSEC 6 Tabla 2.2.4: Tabla de control de estructura para los ficheros de ejemplo Fichero Estructura Inicio Fin Reg P0 P11 Reg P1 P2 Reg P3 P4 Reg P5 P6 Reg P7 P8 Reg P9 P10 Reg P12 P19 Reg P13 P14 Reg P15 P16 Reg P17 P18 Reg P'0 P'18 Reg P'1 P'2 Reg P'3 P'4 Reg P'5 P'6 Reg P'7 P'8 Reg P'9 P'14 Reg P'10 P'11 Reg P'12 P'13 Reg P'15 P'16 38

39 Descripción de la tabla En esta tabla de control existen 19 registros que son el número total de etiquetas que forman el fichero. La columna fichero almacena los dos ficheros que se están utilizando en el ejemplo. Para asignar el número de fichero, hay que recorrer las etiquetas correspondientes de los dos ficheros de la figura En la columna estructura se hace el recorrido de todas las etiquetas identificando sus campos estructurales y asignando el id que corresponde. Para realizar este recorrido, hay que referirse en la tabla que contiene el registro de todos los nombres de las etiquetas que se utilizan en los dos ficheros. La columna inicio y fin me permite recorrer las etiquetas de inicio a fin. Por ejemplo la etiqueta <DOC> empieza en la posición cero P0 y termina en la posición P11 del primer fichero. Este recorrido se lo hace en los dos ficheros que se están utilizando para el ejemplo de indexación. En las listas de ocurrencias, se almacena el número de registro (Reg.) de la tabla de control que corresponde al lugar en el que aparece la ocurrencia del término, o se almacena la identificación de una determinada estructura en un fichero. En un registro también se puede almacenar la frecuencia de aparición de un término al momento de realizar una consulta sobre un documento en un sistema de recuperación de información. Esto puede ayudar para determinar los documentos más visitados por el usuario. Cuando se desea buscar una palabra en un documento de estructura, se recorre secuencialmente la lista de ocurrencias de la palabra. Para cada elemento de la lista se consulta el registro y se compara el campo de estructura con el identificador de la estructura que se va a buscar. Se puede saber que elementos contienen a otros comparando las posiciones de inicio y final de cada estructura almacenadas en la tabla. Esto permite resolver consultas no solo por campos sino también sobre la estructura, por ejemplo permite resolver consultas del tipo: "Documentos sobre agentes móviles. Para el desarrollo de este ejemplo me basé en un modelo de análisis del capítulo 5 del libro Introduction to Information Retrieval de Chris D. Manning. (MANING C., 2009) 39

40 2.3 Sistemas de Indexación Los sistemas de recuperación de información indexan documentos para su posterior búsqueda. Se va a explicar de mejor manera la utilización de índices a partir de un ejemplo de indexación documental. La indexación documental es una estructura que almacenan un conjunto de entradas que ofrecen acceso rápido a los diferentes documentos a los que hacen referencia. El uso de la técnica de indexación permite que un sistema de recuperación de información realice búsquedas de manera rápida, pero tiene algunos inconvenientes que se nombran a continuación. (WALKER, 2007) Tener que llevar a cabo el proceso de creación de índices, es un poco lento en el caso de que haya que ingresar gran cantidad de documentos en el repositorio. Al momento de realizar actualizaciones, es decir si se ingresa más información al repositorio, hay que agregar nuevos índices a cada documento. En la actualidad el algoritmo de indexación de Lucene Index 21 permiten generar índices para cada documento o recurso web y realizar actualización si fuera el caso de agregar nueva información al repositorio para su búsqueda respectiva. Algunos motores de búsqueda como SOLR y Nutch y aplicaciones como la biblioteca médica MEDLINE 22 utilizan este algoritmo para construir el índice respectivo de los recursos que utilizan Modelo de recuperación de documentos digitales utilizando indexación Una vez analizada la técnica de indexación, se propone un modelo de recuperación de documentos digitales utilizando el proceso de indexación documental. Lo que se pretende realizar en este modelo es observar el funcionamiento de indexación con respecto a un documento. Los documentos que se encuentran almacenados en el repositorio corresponden al área médica celular y cada uno de ellos posee un índice que me va a permitir identificarlos al momento de realizar una búsqueda. 21 Algoritmo para crear un índice en Lucene. Create Index. Disponible en: 22 Biblioteca Médica MEDLINE. Disponible en: 40

41 Consulta Repositorio de Documentos Φ Anabólicos Naturales Indexación documental ID Termino Índice Documento 1 Anabólicos y Metabólicos MSTAK2 7:2 2 Sistemas metabólicos celulares 3:8 3 Análisis de Proteínas 9:4 4 Anabólicos y Metabólicos PACK 2:1 n Aminoácidos y Creatina 1:4 Partiendo de términos secuenciales Anabólicos y Metabólicos - 7:2 Anabólicos y Metabólicos - 2:1 Documentos Relevancia Referentes 2 100% Objeto de Búsqueda Doc.1: Anabólicos y Metabólicos MSTAK2 para aumento de peso. Doc.2: Sistemas metabólicos celulares para control de ATP. Doc.3: Análisis de proteínas para reducir la impureza de componentes Doc.4: Anabólicos y Metabólicos PACK para reducción de peso. Doc..N: Aminoácidos y Creatina para la energía y rendimiento físico. Figura 2.3.1: Modelo de recuperación de documentos digitales utilizando indexación. 41

42 Descripción del Modelo propuesto En la figura se puede observar el proceso de recuperación de documentos utilizando indexación A continuación se muestran las siguientes fases que detallan el funcionamiento del modelo propuesto: Primer Fase: Consulta En esta fase de consulta o interfaz principal, el usuario va a ingresar el tema del documento que desea consultar para ver la existencia o no en el repositorio. Segunda Fase: Repositorio de Documentos Se encuentra el repositorio de documentos, el cual almacena información digital sobre el área médica en formatos.pdf y.doc. Tercera Fase: Indexación Documental En esta fase se utiliza la técnica de Indexación documental, la cual agrega un índice a cada documento para poder identificarlo de manera única y finalmente realizar el proceso de indexación que consiste en posicionar el índice con el documento que se encuentra almacenado en el repositorio. El documento que se va a recuperar depende de la consulta que ingresa el usuario en la interfaz principal, ya que dependiendo de esta se va a recuperar uno o varios documentos de un contenido en particular. Cuarta fase: Partiendo de términos secuenciales Como resultado se recuperan dos documentos del repositorio con índices diferentes (7:2, 2:1), esto se debe a que el tema es similar, para lo cual se establece un orden de relevancia que me va a permitir obtener de manera ordenada los documentos recuperados. 42

43 Quinta fase Objeto de Búsqueda Finalmente se obtiene un número de documentos recuperados del repositorio y la relevancia sería una calificación estadística obtenida por la recuperación. Si se obtiene uno o varios documentos, la búsqueda será exitosa y la relevancia tendrá una calificación de 100% es decir que se ha recuperado un documento. Si en la fase de consulta se ingresa un tema y este no concuerda con ningún documento del repositorio, la búsqueda no tendrá éxito porque no se ha recuperado nada y por ende la relevancia será del 0%. Esta calificación estadística se basa en teoría de probabilidad, en la que existen dos posibles valores 0 y 1, el cero 0% (representa que no tuvo éxito) y el uno o 100% (representa a las búsquedas exitosas). 2.4 Índice Invertido Es una estructura que se aplica a la consulta que formula un usuario para identificar un documento. En este proceso se analizan los términos que forman toda la cadena de texto. Según (LIJUAN, 2004) índice invertido basa su funcionamiento en dos componentes: Vocabulario: Se almacenan todas las palabras que forman la cadena de consulta que envía el usuario al sistema. Ocurrencias: Se almacenan todas las posiciones de texto de la consulta, incluyendo stopwords 23 y stoplist 24. A continuación se presenta un ejemplo de lo explicado anteriormente: Figura 2.4: Ejemplo de índice invertido resultante (LIJUAN, 2004) 23 Para mayor información sobre el término stopwords. Revisar el glosario de términos. 24 Para mayor información sobre el término stoplist. Revisar el glosario de términos 43

44 En el vocabulario no se almacenan stopwords ni stoplist, esto se debe a que esta estructura no toma en cuenta palabras vacías ni irrelevantes como se puede observar en el ejemplo mostrado en la figura 2.4. Una necesidad de información se la traduce como una cadena de texto, la cual representa el 100% de la consulta, pero la estructura de índice invertido solamente acepta el 70% ya que el 30% representa palabras que no son objeto de búsqueda Esto permite reducir el espacio adicional que ocupan los índices al trabajar con un texto. 2.5 Tipos de Índice Invertido Según (MANNING, C., 2004) existen dos tipos de índices invertidos usables para analizar la consulta y los documentos para el proceso de búsqueda de información Índice Invertido con Direccionamiento a Palabra Es una estructura en la que el índice apunta a las posiciones de todas las palabras del texto. La cadena de texto se encuentra formada por un 20 a 35% de palabras vacías (stopwords) y palabras irrelevantes (stoplist). El objetivo de esta técnica es reducir este porcentaje y obtener un 75% de exactitud en el análisis de la cadena de texto. En el siguiente ejemplo se puede observar el funcionamiento del índice invertido con direccionamiento a palabra. Figura 2.5.1: Estructura del índice Invertido con direccionamiento a palabra. 44

45 Descripción del Proceso Se va a recorrer toda la cadena de texto de consulta de los documentos y asignar un valor numérico a cada posición de palabra, incluyendo stopwords y stoplists como por ejemplo: él, la, los, las, un, una, a, b, c, si fuera el caso que la consulta tuviera. El archivo o vocabulario es donde se almacenan todas las palabras que forman la cadena de consulta. Tomar en cuenta que en este archivo no se almacenan stopwords. En la segunda columna existen dos variables que son: c1 = En esta columna se identifica el documento al cual pertenece la palabra del archivo. c2 = Se almacenan las ocurrencias. En esta columna se asigna la posición de la palabra incluyendo los stopwords Índice Invertido con Direccionamiento a Documento En este tipo de estructura, las listas no apuntan a las palabras, sino al documento en el cual aparece dicha palabra. Esto permite ahorrar espacio por que todas las ocurrencias en el mismo documento están referenciadas solo una vez. Los recursos de espacio para direccionamiento de documentos se encuentran en torno a un 35% del tamaño del texto, esto se debe a que se identifica la consulta y se recuperan todos los documentos que contengan las palabras de esa cadena de texto. En el siguiente ejemplo se puede observar el funcionamiento del índice invertido con direccionamiento a documento. 45

46 Figura 2.5.2: Estructura del índice Invertido con Direccionamiento a Documento Descripción del Proceso En esta técnica se identifica las palabras que forman el tema de consulta para posteriormente recuperar uno o varios documentos en la web o en un repositorio. (MANNING, C., 2004) A continuación se detallan los pasos a seguir: En el primer archivo o vocabulario se almacena todas las palabras que forman los temas de los documentos del ejemplo, pero no se incluyen palabras irrelevantes (stoplist) ni palabras vacías (stopwords). En el segundo archivo se identifican los documentos a los cuales pertenece la palabra de la consulta formulada por el usuario. En el tercer archivo se almacenan todos los stoplist utilizados y su respectiva ubicación dentro del documento. Estos stoplist son una serie de palabras que no resultan ser útiles para la obtención de términos de indexación. Ejemplo: de, en, el, un una, a, c, etc. 46

47 Las técnicas de índice invertido con direccionamiento a palabra y documento trabajan en conjunto para analizar la consulta que formula el usuario y luego esta sea tratada con el fin de analizar todos sus campos estructurales orientándose a la cadena de texto formulada, para que finalmente se reduzca el conjunto de palabra vacías e irrelevantes, lo cual ayuda a mejorar aspectos de rendimiento de un sistema. En la actualidad, la mayoría de motores de búsqueda como Google 25, Yahoo 26, Kngine 27, utilizan estas técnicas de indexación para referirse solamente a recuperar recursos en la web sobre los campos de la consulta que formula el usuario. 2.6 Otras Técnicas Analizadas de Indexación Arreglo de Sufijos La búsqueda en un arreglo de sufijos se realiza de la siguiente manera: se establece un puntero el cual esta direccionado a las palabras de la consulta. A continuación una vez establecidos los punteros en cada palabra de la cadena de consulta se realiza el recorrido como se puede observar en la figura Este tipo de técnica tiene su aplicabilidad en extracción de información, cuando se analizan bloques de texto y grandes cadenas de caracteres. This is a text. A text has many words. Words are made from letters. text. A text has many words. Words are made from letters. text has many words. Words are made from letters. many words. Words are made from letters. Words are made from letters. Figura 2.6.1: Arreglo de sufijos. (RAMIREZ D., 2004) 25 Motor de búsqueda de Google. Disponible en: 26 Motor de búsqueda de Yahoo. Disponible en: 27 Motor de búsqueda de Kngine. Disponible en: 47

48 2.6.2 Archivo de firmas Es una estructura orientada a palabras. Ocupan poco espacio a costa de forzar una búsqueda sobre el índice. Esta técnica es eficiente solamente para textos de tamaño moderado, se ve superada por la técnica de índice invertido, la cual posee una estructura de funcionamiento más eficiente. Un archivo de firmas hace uso de una función de hash ( firma ), que transforma palabras en cadenas de bits junto con su posición en el texto. En esta técnica cada palabra del bloque la representa en números binarios (0 y 1) y finalmente crea una función de firma que agrupa todas las palabras que se está analizando en los cuatro bloques de texto, asignando a cada palabra un número binario que lo identifica. A continuación en el siguiente ejemplo se observa el funcionamiento de esta técnica. Figura 2.6.2: Archivo de firmas. (MORELL, 2009) 48

49 2.7 Ventajas y Desventajas de las técnicas de indexación analizadas En el cuadro comparativo se observa que todas las técnicas nombradas poseen ventajas y desventajas, pero se elige la técnica de índice invertido por su rendimiento y obtención de respuesta rápida al momento de ser aplicada en un motor de búsqueda, además trata toda la consulta simplificando las palabras irrelevantes lo cual ayuda en el tiempo de respuesta. Índice Invertido con Direccionamiento a palabras y documentos Tabla2.7: Ventajas y desventajas de las técnicas de indexación Técnica de Indexación Ventajas Desventajas Elimina palabras irrelevantes a fin de optimizar el tiempo de respuesta. Identifica un conjunto de documentos relevantes. Analiza toda la cadena de texto enviada como consulta. La implementación es compleja debido a que se requiere utilizar varios algoritmos para su funcionamiento. Arreglo se Sufijos Archivo de Firmas La mayoría de motores de búsqueda la utilizan por su rapidez en la obtención de resultados. Analiza párrafos y grandes cadenas de texto. Ocupa poco espacio al momento de analizar la consulta. Realiza un análisis de toda la estructura textual, lo cual genera mucho tiempo en la obtención de respuesta. Utiliza punteros para identificar cada palabra de la consulta, esto genera demoras en el proceso y mayor uso de memoria. Es eficiente solamente para textos de tamaño moderado. Asigna pesos booleanos a la cadena de texto enviada como consulta, lo que genera demoras en la obtención de una respuesta. 49

50 Capítulo 3 Recuperación de Información y Relevancia de un Documento Las preguntas no son nunca indiscretas, pero las respuestas lo son. Oscar Wilde Resumen En este capítulo se analiza todo lo referente a recuperación de información, como modelos utilizados, técnicas, métodos de evaluación y además se hace un estudio del análisis de relevancia (RANKING) de un documento. Dentro de la relevancia se va a establecer dos medidas para evaluar la calidad de recuperación, las cuales son precisión y exhaustividad. 50

51 3.1 Recuperación de Información Un motor de búsqueda es un sistema de recuperación de información que me permite interactuar con un conjunto de recursos en diferentes formatos digitales que se encuentran alojados en la web o en un repositorio como por ejemplo: PDF, XML, imágenes, videos, etc. Para acceder a esos recursos se tiene que interactuar con descripciones textuales, las cuales van a ser entendidas por el motor de búsqueda y finalmente me van a permitir identificar el recurso y poder recuperarlo. A diferencia de los sistemas de bases de datos relacionales, el texto no se puede almacenar en una tabla mediante registros ni campos, de manera que hay que buscar otros métodos para gestionar este tipo de información. El principal problema de este tipo de sistemas es que tratan con información y no con datos, por lo que no existe una representación formal de documentos de texto ni de las consultas realizadas. (SÁNCHEZ, 2005). Se definen dos fases en el funcionamiento de un sistema de recuperación de información: Fase de Indexación: Su objetivo es construir las representaciones de información que contiene cada documento o recurso. El proceso de funcionamiento de esta fase es analizado en el capítulo 2. Fase de Búsqueda: Su objetivo es representar la consulta formulada por el usuario y evaluar su semejanza con los documentos de la colección. La mayoría de sistemas de recuperación de información proporcionan herramientas potentes y eficaces para acceder a los documentos según ciertos campos. El usuario especifica la información que desea recuperar a través de una consulta, el sistema devuelve los documentos que estima son relevantes para los requisitos del usuario, finalmente éstos se presentan en una interfaz gráfica. Una buena interfaz gráfica de la aplicación me permitirá acceder de manera interactiva a sus funcionalidades. Según (MANING C., 2009) en recuperación de información se establecen dos puntos importantes: Punto de vista computacional: Consiste en construir un índice 28 para procesar consultas de los usuarios lo más rápido posible y desarrollar algoritmos de clasificación ranking que mejoren la calidad de la información recuperada. 28 Para mayor información sobre el término índice. Revisar el Glosario de Términos. 51

52 Punto de vista del usuario: Consiste en interpretar la necesidad de información de un usuario y analizar cómo esta afecta al funcionamiento del sistema. 3.2 Diferencias entre recuperación de datos y recuperación de información Existe una gran diferencia entre recuperación de información (information retrieval) y recuperación de datos (data retrieval) utilizando los siguientes criterios: En recuperación de datos (data retrieval) se maneja información estructurada, es decir se sabe exactamente lo que se desea, efectuando una consulta formada por un lenguaje estructurado, como es el caso de SQL, que me va a permitir recuperar los campos deseados como por ejemplo: nombre, puesto y salario. (PASCUAL, 2003) SELECT nombre, puesto, salario FROM Employees WHERE empresa = "Pronaca" and salario >= 2000 En recuperación de información (information retrieval) no existe un lenguaje estructurado que me permita recuperar exactamente la información deseada. Una consulta sería de la siguiente forma: Información sobre circuitos electrónicos DC142. Finalmente obtengo una cantidad de documentos, de los cuales hay que seleccionar los más relevantes a las necesidades de información. En la siguiente tabla se va a revisar las diferencias existentes entre recuperación de datos y recuperación de información expuesta por RIJSBERGEN. Tabla 3.2: Diferencias entre recuperación de datos y recuperación de información. (RIJSBERGEN, 2001) Recuperación de datos Recuperación de la información Acierto Exacta Parcial, la mejor Inferencia Algebraica Inductiva Lenguaje de consulta Fuertemente Estructurado Estructurado o natural Especificación de consulta Precisa Imprecisa Error en la respuesta Sensible Insensible 52

53 3.3 Relevancia Es una propiedad que tienen todos los sistemas de recuperación de información actuales, cuyo propósito es presentar información pertinente a una petición formulada por un usuario. La calidad de un sistema de recuperación de información depende de los resultados relevantes que presente (CRESTANY, 2003). Según (HENZIGER, 2004) la relevancia posee valores en una escala estadística de (0 y 1), que me van a permitir calificar si un documento es más relevante que otro. Un documento o recurso recuperado puede situarse dentro de estos valores, siendo así que el 0 representa el 0% es decir la ausencia total del documento al momento de realizar una consulta en el sistema de recuperación de información y no obtener ningún resultado. También pueden existir valores dentro de la escala como por ejemplo un 0,5 %, que representa que el documento es menos relevante a los requerimientos de usuario. Un 1% representa la relevancia total de los resultados obtenidos, es decir que este recurso recuperado cumple con todas las características de petición de un usuario Cálculo de Relevancia de un documento Para el cálculo de la relevancia de un documento con respecto a una consulta se presenta un modelo matemático propuesto por Robertson Stephen: Fórmula 3.3.1: Ecuación de Relevancia 29 Referencias de las variables utilizadas: è è c campos del documento Este modelo se encarga de analizar la consulta, que es tomada como una cadena de texto. A cada término se le asigna un peso el cual es un valor numérico que va a ser asignado como un campo para realizar la sumatoria final. El peso de los términos es el número total de posiciones ocupadas en la consulta artículos médicos mostrado en la tabla 3.3.1: 29 Modelo Matemático para el cálculo de la relevancia de un documento. Disponible en: 53

54 Tabla 3.3.1: Representación de la sumatoria de pesos de una consulta. Términos A r t ì c u l o s M è d i c o s Peso campos Wc c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 Sumatoria Σ 17 Aplicando la formula se puede observar que se suman los pesos de los campos utilizados lo cual da como resultado 17. La frecuencia inversa es el número de veces que aparece el término artículos médicos en un repositorio que contiene un número de documentos similares a esa consulta. Como resultado final del modelo matemático se puede concluir que en la web o en un repositorio existe uno o varios documentos relevantes orientados netamente al tema que se busca, esto quiere decir que en el ejemplo anterior se puede recuperar varios documentos sobre el tema artículos médicos y obtener resultados que cubran únicamente los requerimientos de un usuario, reduciendo así el ruido documental. 3.4 Elementos que intervienen en recuperación de información Según (VARGAS, 2002) recuperación de información consiste en un proceso que intervienen los elementos que se muestran en la figura 3.4 Figura 3.4: Elementos que intervienen en la recuperación de información (VARGAS, 2002) 54

55 En la parte superior de la figura se muestra la necesidad de información que consiste en un estado mental formulado por cada persona, esta se asocia con los documentos que posee el sistema. Los documentos son indexados para ser identificados en el proceso de comparación y finalmente recuperar información relevante (Documentos relevantes) a las necesidades de información de un usuario. 3.5 Modelos de recuperación de información Los principales modelos de recuperación de información son: modelo probabilístico, modelo vectorial y modelo booleano (usado muy poco debido a sus falencias). En la actualidad los grandes motores de búsqueda como Yahoo, Google, Kngine, Nutch, SOLR, utilizan estas técnicas ya que desde el año 2003 han demostrado ser eficientes en la obtención de resultados relevantes. (BRONCANO, 2005) El tema de este proyecto de tesis es un sistema de recuperación de información orientado a la creación de una biblioteca digital médica para lo cual se va a utilizar el modelo vectorial y probabilístico usables para analizar la consulta, el documento y finalmente la probabilidad de que la información que se va a recuperar sea relevante a las necesidades de petición de un usuario Modelo Vectorial Se representa con un ángulo que utiliza la función trigonométrica coseno que sirve para identificar un documento d con respecto a la consulta q como se puede observar en la figura y d q x Figura 3.5.1: Representación del modelo vectorial (FIGUEROLA., 2004) d= documento q= consulta Surgió pese a las falencias presentadas por el modelo booleano, ya que empleaba pesos binarios lo cual hace que el procesamiento de una consulta sea mucho más lento y por ende el sistema tarde en presentar los resultados. 55

56 Los sistemas de recuperación de información modernos como Kngine, SOLR y Nutch utilizan el modelo vectorial para analizar la información y consulta formulada por un usuario. Cuando se accede a realizar una consulta en cualquiera de estos sistemas, la obtención de resultados es rápida y se recupera únicamente información relevante. En la siguiente matriz se puede observar de mejor manera como funciona este modelo. Se utilizan tres variables que son: peso (w), término (t) y documento (d) que es el objeto de búsqueda de todo sistema de recuperación de información. Tabla 3.5.2: Matriz de frecuencia de términos (FIGUEROLA, 2004) t1 t2 t3 t4 tn d1 w11 w12 w13 w14 w1n d2 w21 w22 w23 w24 w2n d3 w31 w32 w33 w34 w3n d4 w41 w42 w43 w44 w4n dn wn1 wn2 wn3 wn4 wnn Para cada documento se encuentra asociado un peso con el término al que pertenece. En un repositorio o en la web se tiene un conjunto de documentos o recursos a los que se quiere acceder mediante una consulta, pero ésta se estructura internamente como se indica en la matriz de frecuencia de términos. En el modelo vectorial los pesos son valores positivos no binarios que indican el grado de relevancia de una palabra presente en el documento. A los términos de las consultas se les asocia un peso. Según (MANNING., 2009), el vector de consulta se define como: Fórmula,,., Para las preguntas se calcula el peso. Se representa de la siguiente manera: En los documentos se encuentra almacenada la frecuencia de aparición de cada término t. Para buscar un documento se realiza una consulta la cual está formada por (t1- tn) términos. Entre un documento d y un término t se encuentra asociado un peso w. 56

57 El resultado final de la consulta q es igual a la multiplicación del peso w por la consulta, la cual está formada por el documento d y el término t. Se representa de la siguiente manera: Además de predecir si un recurso es relevante o no. El modelo vectorial ordena los documentos de acuerdo al grado de similitud y permite recuperar información que responda parcialmente a la consulta. Los pesos de los términos se pueden calcular de varias maneras. Una de las más utilizadas es la fórmula analizada anteriormente. Ventajas del modelo Mejora el rendimiento y permite recuperar documentos que responden a la consulta de forma aproximada. Según (HERRERA A., 2006) el modelo vectorial permite hacer correspondencias parciales, es decir, ordena los resultados por grado de relevancia. Es un modelo utilizado por grandes motores de búsqueda como Kngine, SOLR, Nutch, que trabajan con gran cantidad de recursos digitales y recuperan información relevante a los requerimientos de usuario Modelo Probabilístico Se basa en el fundamento principal de teoría de probabilidades (CALZADA, 1970) que es:. Los resultados favorables equivalen a los documentos relevantes que se van a recuperar, y los resultados posibles representan todo el conjunto documental que se está utilizando. En este modelo los pesos asociados a los documentos y a las consultas son binarios, W 0,1, estos números representan la probabilidad de los resultados obtenidos, siendo así el 0 (cero) que representa a los documentos no relevantes y el 1 (uno) a los relevantes. Una consulta es un subconjunto de términos. R es el conjunto de documentos relevantes conocidos, y el conjunto complemento de R (es decir, el conjunto de documentos no relevantes). 57

58 El modelo probabilístico de la similitud de un documento (Sim) resultante quedaría como: Donde es la probabilidad de que el documento (d) sea relevante a la consulta y la probabilidad de que (d) no sea relevante. (VILLARES., 2003) Ventajas: Permite identificar recursos relevantes en orden decreciente. En primer lugar van a estar los más relevantes, siguiendo los menos relevantes. Este modelo lo utiliza la mayoría de motores de búsqueda, como por ejemplo Google, Kngine, Site Search (motor de búsqueda personalizado de Google), y otras de aplicaciones web existentes en la actualidad. Trabaja en conjunto con el modelo vectorial para analizar la consulta, el documento y finalmente la probabilidad de que los resultados que estoy obteniendo sean relevantes. Desventaja: Se debe elegir la información relevante de manera manual, seleccionando los recursos de interés recuperados. 3.6 Medidas de evaluación para un sistema de recuperación de información Estas dos medidas trabajan en conjunto y permiten calificar el rendimiento de un sistema de recuperación de información al momento de verificar los resultados obtenidos. Además proporciona una interpretación estadística de la forma en que un sistema actúa. (OLVERA, 2005) A continuación se van analizar las dos medidas más utilizadas para evaluar el rendimiento de un sistema de recuperación de información. 58

59 3.6.1 Precisión Esta medida me permite obtener solamente documentos relevantes de un conjunto de documentos recuperados. 100 Es una medida que posee un sistema para evitar el ruido, es decir evita documentos no relevantes. Está relacionada con dos conceptos: ruido y silencio documental. De este modo, cuanto más se acerque el valor de la precisión a 0, mayor será el número de documentos recuperados que no le sirvan al usuario y por lo tanto el ruido que encontrado será mayor. (SÀNCHEZ, 2002) Ejemplo para el índice de precisión En una respuesta de consulta sobre: Medicina Laser se han obtenido 10 documentos, pero 4 de ellos no son relevantes, el índice de precisión para ese resultado ha sido del 60% Exhaustividad (Recall) Es una medida que tiene un sistema para recuperar un conjunto de documentos independientemente si estos son o no relevantes. 100 Si el resultado de este cálculo tiene como valor 1 o 100% de probabilidad obtenida, se tiene una exhaustividad máxima, porque que se ha encontrado todo lo relevante que había en el repositorio, sin embargo es posible tener ruido, dado que no todos los documentos recuperados tienen por qué ser relevantes. (MANNING., 2009) Ejemplo para el índice de precisión En una respuesta de consulta sobre: Medicina Laser se han obtenido 10 documentos, pero 4 de ellos son relevantes, el índice de precisión para ese resultado ha sido del 40%. 59

60 Se puede observar que algunos buscadores de internet como Google, Yahoo, poseen altos niveles de exhaustividad, es decir tienden a recuperar varios documentos relevantes en la web, pero el índice de precisión es bajo ya que una pequeña parte de documentos son relevantes. La falta de precisión se debe a la calidad de ordenación de los motores de búsqueda, en el caso de Google si se analizan los 10 primeros resultados, es posible que índice de relevancia parezca muy alto. El problema es que puede haber otros documentos relevantes que se encuentren al final o entre los 40 recursos recuperados, pero por cuestiones de tiempo no se los examina. Estas dos medidas de evaluación se las va a aplicar en el plan de validación y pruebas en el capítulo 6, mediante el cual se validará los resultados de las herramientas de software Nutch, frente al motor de búsqueda personalizado de Google (site search). Luego de realizar estas pruebas, se emitirá un criterio en base a resultados obtenidos, para ver cuál es más efectiva. 3.7 Otras técnicas analizadas de recuperación Modelo Booleano Es un modelo simple basado en la teoría de conjuntos y el algebra booleana, utiliza pesos binarios (0 y 1) para asignarlos como pesos a la cadena enviada de consulta. Las consultas son expresiones booleanas y los términos de indexación están unidos por operadores booleanos AND, OR, NOT. Este modelo ha sido utilizado por muchos de los primeros motores de búsqueda como Alta Vista y la primera versión de Yahoo en (BRONCANO, 2006) En el modelo booleano, la similitud del documento (d) en la consulta (q) se define como: Ventajas:, 1, Permite analizar una consulta enviada por un usuario y obtener un gran número de resultados. Realiza recuperación de información que se encuentra alojada en la web. 60

61 Desventajas: Sus inconvenientes residen en que recupera muchos o pocos documentos. No utiliza un orden de relevancia (Ranking) para la información obtenida. Las consultas son demasiado grandes, ocupan una gran cantidad de operadores lógicos, lo que hace un proceso lento y poco eficiente Un motor de búsqueda que utiliza esta técnica es bastante lento al momento de procesar la consulta y mostrar los resultados Modelo de Relevance Feedback Es un modelo que se utiliza para analizar la relevancia de los resultados obtenidos. Trabaja de igual forma que el modelo booleano, los dos realizan la misma tarea. Se representa mediante la siguiente expresión matemática 30 propuesto por (KRAFT., 1997) La consulta óptima se la representa de la siguiente manera: 1 1 Donde es el conjunto de documentos relevantes en la colección y es el conjunto de no relevantes La modificación de la consulta se puede hacer de dos formas: manual o automática. En la manual como su nombre indica, el usuario dirá cuáles son los documentos más relevantes. En la automática se eligen asumiendo los (n) primeros relevantes. Ventajas: Mejora la recuperación de documentos relevantes en una búsqueda. Obtiene resultados relevantes y orientados a la consulta, analizando solamente las palabras enviadas. 30 Expresión matemática del modelo Relevance Feedback. Disponible en: 61

62 Desventajas Una palabra incorrecta en la búsqueda reduce la efectividad de obtener resultados relevantes. Es más difícil reconocer que información es relevante, se realiza un proceso manual. Para recuperar información relevante se necesita escribir una consulta de manera exacta. 62

63 Capítulo 4 Propuesta de una arquitectura para el proceso de recuperación de información El diseño es el lugar en donde una persona se puede parar con un pie en dos mundos. El mundo de la tecnología y el de la gente. Roger Pressman Resumen En este capítulo se describe el funcionamiento de la arquitectura propuesta para un sistema de recuperación de información y los componentes por los que está formada. La arquitectura se divide en cuatro capas que agrupan los componentes, subcomponentes y técnicas utilizadas en el flujo de trabajo para la estructura de índice invertido y relevancia de un documento. 63

64 4.1 Arquitectura para un sistema de recuperación de información Una de las conclusiones que se pudo obtener del estado del arte (capítulo 1), técnica de índice invertido (capítulo 2) y relevancia de un documento (capítulo 3), es la identificación de las funcionalidades de un sistema de recuperación de información. La mayoría de componentes y subcomponentes de esta arquitectura 31 o modelo propuesto fueron analizados en el capítulo 2 y capítulo 3, se orientan a la consulta, el proceso por el cual es analizada y finalmente la obtención de recursos relevantes. El enfoque principal del funcionamiento de esta arquitectura propuesta es el uso de indexación y la técnica de índice invertido que me permite analizar la consulta enviada por un usuario, para que luego sea procesada analizando los recursos que posee el repositorio. Otra técnica que se propone es un modelo híbrido probabilístico/vectorial que se encarga de analizar el documento con respecto a la consulta y la probabilidad de relevancia del resultado obtenido. En este modelo se utiliza la teoría de probabilidades que consiste en analizar los resultados favorables, sobre todos los resultados posibles encontrados. Finalmente, la arquitectura debe proporcionar toda la infraestructura necesaria para el modulo de indexación mediante el análisis de la consulta enviada. La arquitectura está diseñada de manera modular como se puede observar en la figura 4.1, lo que permitirá identificar claramente los cinco módulos principales que trabajan de forma secuencial La figura 4.1 muestra la propuesta de un sistema de recuperación de información para la implementación de una biblioteca digital en cualquier área, en este contexto se orienta al área médica. La arquitectura se divide en cuatro capas que son: Capa de Presentación, Capa Lógica de negocios, Capa de acceso a datos y Capa de servicios. Dentro de estas capas están módulos y sub módulos, cada uno realiza una tarea respectiva. En la figura se observan los cinco módulos que forman la arquitectura los cuales están identificados con un rectángulo, cada uno de estos posee sub módulos que están identificados con rectángulos redondeados. Estos sub módulos son las técnicas que se están utilizando en el proceso de evaluación de la consulta (Técnica de índice invertido) y análisis de la relevancia de los documentos recuperados 31 Para la definición del término arquitectura. Revisar el glosario de términos. 64

65 (Ranking de relevancia). Dentro del sub módulo (Técnica de índice invertido) existen cinco procesos que me permiten analizar la consulta enviada por el usuario. Dentro del sub módulo de (Ranking de relevancia) está el funcionamiento del modelo probabilístico vectorial que funciona a través del modelo vectorial y probabilístico analizados en el capítulo 3. 65

66 Figura 4.1: Arquitectura propuesta para recuperación de información 66

67 4.2 Descripción de la arquitectura de Recuperación de Información La arquitectura de software propuesta es un conjunto de componentes que interactúan entre sí para formar un todo cohesionado, este todo es el sistema de recuperación de información orientado a la creación de una biblioteca digital médica. Para la representación de esta arquitectura se va a utilizar una herramienta de software, que es escalable a las necesidades de información de un usuario. Se la puede configurar para tareas que se vaya a realizar, además es de acceso libre y distribuido bajo Apache Software Foundation 32. Se van a adaptar los componentes de la arquitectura a la herramienta de software, es decir cada componente y subcomponente va a ser representado en Nutch como: archivo, plugin, algoritmo, dependiendo lo que se vaya a demostrar. Cabe destacar que el funcionamiento del framework de Nutch es bajo plugins y archivos de configuración. El funcionamiento e instalación de la herramienta Nutch se detalla en el anexo 1, mediante el cual se puede observar que la mayoría de componentes y subcomponentes están representados. A continuación se va a describir las capas que forman la arquitectura y sus respectivos módulos: Capa de Presentación Se encuentra representada de color azul como se muestra en la figura 4.1. Dentro de esta capa se encuentra el módulo de consulta y la interface de consulta. Interface Consulta Representa la interfaz gráfica de usuario, me va a permitir acceder a las funcionalidades de la aplicación. La interfaz gráfica de usuario y sus respectivas funcionalidades se encuentran almacenadas en el servidor Apache Tomcat, para posteriormente hacer una invocación al puerto 8080 y poder acceder a los servicios de la aplicación. Módulo de Consulta Este módulo representa la fase inicial de consulta, donde el usuario ingresa las necesidades de información, para que posteriormente sean analizadas siguiendo todos los pasos secuenciales del modelo y finalmente obtener un número de resultados relevantes. En este módulo se envía la consulta que es recibida como una cadena de texto para que posteriormente la técnica de índice invertido realice su validación y análisis de caracteres. 32 The apache Software Foundation. Disponible en: 67

68 4.2.2 Capa Lógica de Negocios Se encuentra representada de color amarillo como se muestra en la figura 4.1. En esta capa se encuentran los siguientes módulos: Módulo de Indexación y Módulo de Recuperación. Estos módulos son el motor principal de funcionamiento de la propuesta, en ellos se produce el análisis de la consulta y relevancia de los resultados obtenidos. Módulo de Indexación En el capítulo 2 se ha descrito el funcionamiento de indexación y de la técnica de índice invertido, estos dos temas forman el núcleo principal de la investigación. Esta estructura se encarga de la construcción de un índice que se lo utiliza para identificar cada documento que se encuentra almacenado en un repositorio o en la web. La etapa de indexación textual se encarga del procesado de documentos para luego obtener la información necesaria. Para el proceso de búsqueda de direcciones urls y creación del respectivo índice se utiliza el crawler mediante el uso de un emulador de comandos cygwin, al que se le envía un número de parámetros y procesos para realizar la ejecución de direcciones urls. Por ejemplo cuando se ejecuta el crawler con un número de 10 direcciones en la base de datos urls, voy a obtener como resultado 45 o más urls, esto es debido a que su función principal es rastrear las direcciones en la web. Finalmente el crawler crea un índice para cada dirección url, con el fin de identificar de manera única en la base de datos de índices. Módulo de Índice Invertido En este sub-módulo se realiza la estructura principal del análisis de consulta en documentos de tipo: PDF y XML. Entre procesos aplicados esta la eliminación de stoplists (palabras irrelevantes), stopwords (palabras vacías), signos ortográficos, de puntuación y caracteres especiales. Para mayor detalle del funcionamiento de esta técnica revisar el capítulo 2. Dentro de esta técnica se realizan los siguientes procesos secuenciales: Creación de un índice: Se establece un valor numérico que es utilizado para identificar las palabras de la cadena de texto. Asignar un índice a cada palabra: Se asigna un índice a cada palabra de la consulta enviada, incluyendo stopwords y stoplist. Evaluar la consulta: Para realizar la evaluación de una consulta hay que generar un archivo o vocabulario en el que se almacenan las palabras, en este caso se eliminan los stopwords stoplist. 68

69 Identificar la cadena enviada: Una vez que se ha generado la estructura de archivo, posteriormente se va a identificar cada palabra almacenada, identificando el documento al que pertenece. Este proceso lo realiza la técnica de índice invertido con direccionamiento a documento. Realizar el posicionamiento de cadenas: Una vez realizados todos los pasos de esta técnica, el posicionamiento se refiere a la comparación de la cadena de texto con el contenido de los campos estructurales del recurso que está almacenado en el repositorio. Un campo estructural de un recurso puede ser: titulo, autor, subtítulos, dirección URL. Para representar el proceso de creación de un índice en cada documento voy a utilizar los algoritmos de Lucene (indexer) para crear el índice y (searcher) para la búsqueda. Estos algoritmos se los explica a detalle en el anexo 3. De esta manera se logra representar el módulo de índice invertido. Módulo de Recuperación Recibe como entrada la consulta formulada por un usuario que es analizada por la técnica de índice invertido y posteriormente se recupera uno o varios documentos acordes a esa cadena de texto realizando posicionamiento de cadenas de texto. Se utiliza el modelo vectorial utilizando la función coseno en la que se representa el documento con respecto a la consulta formulada por el usuario. Dentro de este módulo se encuentra el sub-módulo de Ranking de Relevancia, en el que se propone un modelo matemático para calcular la relevancia de un documento. El modelo matemático que se propone dentro del modelo probabilístico y vectorial funciona de la siguiente manera: Modelo matemático híbrido probabilístico/vectorial Este modelo trabaja con el modelo probabilístico y vectorial, que son analizados a mas detalle en el capítulo 3. 69

70 Definición del modelo matemático propuesto En teoría de probabilidades se relaciona el número de documentos relevantes con el total de documentos existentes en la web o en un repositorio. Los documentos relevantes son pertinentes al usuario y los no relevantes son todos los documentos que se encuentran presentes en el fondo documental. Se utiliza el modelo vectorial para identificar el documento y la consulta que son las entradas principales en un sistema de recuperación de información. Finalmente se obtiene como conclusión la probabilidad de que el número de documentos relevantes tiene que ser mayor al número de documentos no relevantes presentes en la web o en un repositorio., 70

71 Explicación de las variables utilizadas en el modelo matemático propuesto Es la probabilidad de que un documento sea relevante a las necesidades de un usuario. P(R) Es la probabilidad de seleccionar un documento en la colección y este sea relevante a la petición formulada en la consulta., Es el modelo vectorial que analiza la relevancia entre el documento y la consulta. Este proceso se demuestra de manera gráfica a través del uso de la función trigonométrica coseno. Es cualquier documento que se encuentra almacenado en la colección., Todas estas variables se aplican a la no relevancia de información. Es la conclusión del modelo matemático en la que los documentos relevantes tienen que ser mayor al número de documentos no relevantes presentes en la colección. La probabilidad del resultado de documentos recuperados no la puede calcular un sistema de recuperación de información sino va del punto de vista del usuario que se encarga de catalogar la información que cree pertinente. La relevancia en la herramienta de software utilizada se la representa a través del plugin del algoritmo Page-Rank. El modelo matemático probabilístico/vectorial como tal no se lo va a representar porque que es una propuesta para el análisis de la relevancia. 71

72 4.2.3 Capa de Acceso a datos Se encuentra representada de color naranja como se muestra en la figura 4.1. Esta capa está formada por los siguientes componentes: módulo gestor de contenido, repositorio de información y base de datos de índices. Módulo Gestor de Contenido Una vez analizada la estructura de la consulta por el modulo de indexación utilizando la técnica de índice invertido voy a pasar al modulo gestor de contenido que se encarga de gestionar la base de datos (BD) de las indexaciones realizadas en el sistema. Este módulo recibe la consulta analizada para que posteriormente sea comparada con los documentos que se encuentran almacenados en el repositorio de información. Estos documentos poseen un respectivo índice que me permite identificarlos únicamente del resto. El índice se almacena en una base de datos de índices para identificarlos al momento de realizar las búsquedas de un recurso. La información que se está utilizando se encuentra alojada en la web, y es una base de datos de direcciones urls pertenecientes al área médica. La base de datos de índices la genera el crawler al momento de realizar su ejecución. Una vez que finaliza su proceso de funcionamiento se crea automáticamente la carpeta crawldb Capa de Servicios Se encuentra representada de color verde como se muestra en la figura 4.1. Esta capa está formada por el módulo de resultados. Módulo de Resultados Este módulo se encarga de presentar los resultados relevantes a las necesidades de información de un usuario luego de haber realizado todas las etapas del proceso de funcionamiento de la arquitectura. Los resultados que se van a recuperar son un conjunto de recursos del área médica que se encuentran almacenados en la web, y son de diferentes tipos como por ejemplo: XML, artículos PDF, imágenes, entre otros. Se puede acceder a todos estos recursos a través de la interfaz grafica de usuario invocando a la dirección del servidor para acceder a las funcionalidades de la aplicación, realizar una consulta y recuperar un conjunto de resultados relevantes a las peticiones de un usuario. Como se puede observar todos los componentes y sub-componentes de la arquitectura trabajan de manera secuencial, analizando una consulta, verificando la información almacenada en la web y finalmente presentando recursos relevantes a la consulta formulada en la fase inicial de la interfaz gráfica de usuario. 72

73 Capítulo 5 Herramienta de Software a Utilizar El mundo actual, alimentado por la Web y centrado en la red, uno necesita saber mucho de muchos temas Resumen Oscar Wilde En este capítulo se hace un análisis y comparación de las herramientas de la empresa Apache Software Foundation de software libre, de las cuales se ha optado por utilizar la herramienta Nutch, ya que su funcionamiento y componentes se ajustan a la arquitectura propuesta anteriormente. 73

74 5.1 Justificación de la Herramienta La herramienta que se va a utilizar es Nutch 33, pertenece a la empresa Apache Software Foundation 34. Es un motor de búsqueda Web de código abierto basado en Lucene 35, implementado en java y de libre distribución (GPL), se utiliza para recuperación de información. La utilizan varias empresas como: la información 36 que es un sitio web de noticias y Portae 37, un sitio web de publicación y venta de inmobiliarias. Nutch posee un modulo gestor multilingüe, que me permite trabajar en 18 idiomas mundiales: ca de en es fi fr hu it jp ms nl pl pt sh sr sv th zh Es una herramienta escalable a las necesidades de un usuario, porque se la puede adaptar y configurar para diversas tareas que se vaya a realizar. Por ejemplo: recuperación de información, recuperación de recursos PDF, entre otras. 5.2 Descripción de NUTCH Nutch es un crawler y motor de búsqueda web desarrollado por Doug Cutting, me permite realizar el proceso de indexación a través del emulador de comandos cygwin y finalmente buscar los recursos en base al índice almacenado en la base de datos de índices crawldb. Este software integra el algoritmo de Page Rank para relevancia de información recuperada. Otra de las funcionalidades es que utiliza los algoritmos de Lucene create index para crear el índice respectivo, Index files para añadir recursos y searcher para buscar recursos. El funcionamiento de Nutch está compuesto por la plataforma de procesamiento de datos distribuidos Hadoop que permite el funcionamiento del crawler. Se encarga de procesar grandes volúmenes de información y es utilizada en aplicaciones como Facebook, ebay, Twitter, Meebo, The new York Times, IBM. (CHACÓN, 2006) 33 Sitio web de Apache-Nutch. Disponible en: 34 Sitio web de Apache Software Foundation. Disponible en: 35 Sitio web de Apache Lucene. Disponible en: 36 Sitio web de noticias. Disponible en: 37 Sitio web de publicación de inmobiliarias. Disponible en: 74

75 5.3 Arquitectura de Nutch Este proyecto está desarrollado en java bajo una arquitectura de software REST 38 y su interfaz se ejecuta como un JSP (Java Server Page) que analiza la consulta enviada por el usuario e invoca al método de búsqueda Nutch Bean. La arquitectura de Nutch se basa en el uso de plugins para su configuración. Cada uno de ellos realiza tareas diferentes como por ejemplo: el plugins de SOLR me permite analizar la estructura de un texto, el plugin de Lucene me permite realizar la indexación y búsqueda para recuperación de información, el plugin de Hadoop permite realizar el funcionamiento de la ejecución del crawler para el proceso de búsqueda de direcciones urls. Figura 5.3: Arquitectura de Nutch (NIETO, 2006) Descripción de los componentes de la arquitectura de Nutch Base de datos Web Es donde se almacenan las direcciones urls a las que se va a acceder cuando se ejecuta el crawler. Al momento de ejecutar el crawler, automáticamente se crea la carpeta crawldb la cual accede a la base de datos de urls o documentos que se quiere recuperar. 38 Para mayor información sobre el término REST. Revisar el glosario de términos. 75

76 Actualizaciones Trabaja con el archivo hadoop, que me va a permitir actualizar las direcciones urls, cuando se agregue o elimine direcciones. Lista de recuperación Es un archivo que contiene todas las URLs y documentos recuperados. Proceso de Recuperación Es el proceso en que se recupera una o varias direcciones urls, documentos y otros recursos, al momento de ejecutar el crawler. Contenido Una vez que se recupera: páginas web, documentos o cualquier otro recurso, estos poseen un contenido que es analizado utilizando un proceso de indexación que trabaja con la técnica de índice invertido que se usan en el proceso de recuperación de información. Proceso de Indexación Consiste en asignar un índice a cada recurso que se está utilizando. Por ejemplo: En la base de datos de urls se obtienen 40 recursos, cada uno de ellos posee un índice que lo va a identificar de manera única del resto de la colección. Índice invertido Se encarga de analizar la consulta que es enviada como una cadena de texto. Proceso de Recuperación En esta última fase es donde se va a recuperar toda la información relevante a la consulta que pasa por un proceso de indexación y es evaluada por la técnica de índice invertido. Una vez que se ha realizado este proceso de evaluación de la consulta, finalmente se recupera información almacenada en el servidor web. 76

77 5.4 Otras herramientas analizadas Se analiza las herramientas de software libre Lucene y SOLR porque trabajan en conjunto con Nutch para realizar tareas de análisis de la estructura del texto y procesos de indexación Lucene Es un motor de búsqueda creado por Doug Cutting. Trabaja con los algoritmos (indexer) para indexación de recursos y (searcher) para la búsqueda de información que se encuentra almacenada en un repositorio. Lucene no es un crawler, por lo que no permite realizar procesos de búsqueda y recuperación de direcciones urls. Es utilizado solamente cuando se va a interactuar con repositorios de información, como por ejemplo DSPACE 39.(LUCENE-WIKI, 2007) Arquitectura de Lucene Figura 5.4.1: Arquitectura de Lucene (HATCHER., 2009) 39 Repositorio de acceso libre DSPACE. Disponible en: 77

78 La arquitectura posee una base de datos en la que se almacenan los índices que posteriormente se utilizaran para recuperar documentos en diferentes formatos que se presentan. El componente de la arquitectura Lucene Analyzer está formado por algoritmos de indexación, actualización y búsqueda para recuperación de información. El parser se encarga de analizar el texto en sus distintos formatos: (HTML, Microsoft Word, PDF, Text File) Se utiliza esta herramienta para indexar y buscar datos almacenados en archivos: páginas web, documentos, archivos de texto simple, documentos Mircrosoft Word, PDF, o cualquier otro formato del que se pueda extraer información textual SOLR Es un software basado en Lucene, que permite realizar el procesamiento de recursos tipo (Word, PDF, HTML).Analiza la estructura de un documento mediante bloques de texto, es usable para proceso de extracción de información. Al igual que Lucene SOLR me permite trabajar únicamente con repositorios de información para indizar grandes colecciones de documentos a través de búsqueda a texto completo, no permite realizar procesos de crawler. Su interfaz y funcionamiento está basado en la tecnología REST (JSON/XML) de java. Al momento de acceder al servidor web para interactuar con las funciones de la aplicación, toda la interfaz gráfica y operaciones se basan en esta tecnología que hace más operativas las aplicaciones web actuales. SOLR utiliza los métodos GET para realizar búsquedas en el índice, y POST para agregar documentos. (APACHE-SOLR, 2007) En SOLR y Lucene el índice me permite identificar un recurso. El índice de Lucene se encuentra dentro de los índices invertidos usables para el análisis de un recurso que se va a recuperar. SOLR me permite interactuar con una gran cantidad de información y es utilizado para realizar búsquedas distribuidas. 78

79 5.5 Diferencias y semejanzas entre Lucene, SOLR y Nutch Tabla 5.5: Diferencias y semejanzas entre Lucene, SOLR y Nutch SOLR Lucene Nutch Es un motor de búsqueda Es un motor de búsqueda Es un crawler Analiza la estructura interna de todo el texto del recurso. Realiza la indexación y búsqueda de información. Realiza el procedimiento de búsqueda de recursos en la web para realizar recuperación de información. Trabaja en un repositorio. Trabaja en un repositorio. Trabaja con recursos en la web. Implementado en Java bajo licencia de libre distribución y Implementado en Java bajo licencia de libre distribución y Implementado en Java bajo licencia de libre distribución y promocionado por Apache promocionado por Apache promocionado por Apache Software Foundation. Software Foundation. Software Foundation. Es un software basado en Lucene. Es un software basado en Lucene. Analiza stopwords y stoplist. Analiza stopwords y stoplist. Analiza stopwords y stoplist. Analiza la información en un Analiza la información en un Para realizar la búsqueda y repositorio mediante consultas repositorio mediante consultas recuperación de información sobre enlaces. sobre enlaces. hay que ejecutar el crawler. Se lo utiliza en aplicaciones con repositorios centralizados y alojados en la web. Se utiliza para aplicaciones con repositorios centralizados y alojados en la web. La fuente de información para acceder a los recursos, es la base de datos de direcciones urls 5.6 Trabajos Relacionados Aplicaciones de Motores de búsqueda e Indexadores Las siguientes aplicaciones web utilizan: Lucene, Nutch, SOLR, APIs y motores de búsqueda, permitiendo encontrar un resultado de manera rápida y en algunos casos estableciendo un orden de relevancia acorde a la necesidad de información. (PARADIGMA-TECNOLOGICO, 2010) Aplicación 1: La Información Etiquetas: Crawling/categorización y agregación de noticias Proyecto: Desarrollo de robots de búsqueda y agregación de contenidos. Objetivo: Buscar y clasificar los contenidos a publicar en el portal de información. Crawler que agrega automáticamente contenido periodístico de otros sitios asociando las direcciones urls específicas. El contenido de La Información esta recolectado por crawlers de búsqueda. 79

80 Tecnologías empleadas: Lucene, Nutch, SOLR, WPT. Url: Descripción: Esta aplicación es un buscador el cual me permite recuperar información sobre un tema especifico como (deporte, farándula, cine, etc.), utiliza un crawler e indexación para el proceso de recuperación. Además me permite asociar una URL a cada artículo, para así de mejor manera observar en la web más información detallada sobre el tema de interés del usuario. Aplicación 2: PORTAE Etiquetas: Agrupamiento y búsqueda avanzada. Proyecto: Desarrollo de una aplicación que me permita realizar búsquedas de inmuebles. Objetivo: Realizar búsquedas sobre inmuebles que se encuentran publicados en España. El usuario puede elegir si va a alquilar o comprar una vivienda. Tecnologías Empleadas: SOLR, Nutch y Lucene Url: Descripción: Al igual que la aplicación nombrada anteriormente, PORTAE utiliza un crawler de indexación para realizar el proceso de recuperación de información, a diferencia que en este sitio web se va a elegir opciones como: apartamentos, oficinas, garaje, y las respectivas ubicaciones, resultados que son enviados a un proceso de búsqueda y finalmente obtener un resultado que satisfaga nuestras expectativas. Las dos aplicaciones nombradas anteriormente utilizan herramientas libres como Lucene, Nutch y SOLR que me permiten realizar el proceso de recuperación de información utilizando técnicas operativas de indexación, índice invertido, y un proceso de crawler para indexar a cada resultado una URL que me va a permitir de mejor manera obtener una búsqueda mas especifica de nuestras necesidades de usuario. 80

81 Capítulo 6 Plan de Validación y Pruebas El milagro más común de la ingeniería de software es la transición del análisis al diseño y del diseño al código Richard Due Resumen En este capítulo se presenta los resultados obtenidos en las diferentes pruebas con los sistemas de recuperación de información Nutch y Google (site search), utilizando una base de datos de 70 direcciones urls médicas sugeridas por la Escuela de Medicina de la UTPL, con las cuales se estimó la precisión y exhaustividad. En base a estas estimaciones se evidenció que el motor de búsqueda Nutch fue más eficiente en precisión frente a Google (site search). Para el análisis de la eficiencia de búsqueda Google y Nutch, se aplico la técnica de Análisis de varianza ANOVA de los porcentajes, transformados a arco seno, para reducir la variabilidad de los datos originales. 81

82 6.1 Pruebas al Sistema Constituyó una de las fases más importantes en el desarrollo del proyecto mediante la cual se trató de demostrar el proceso de recuperación de información utilizando los metadatos DC.Title, DC.Subject, DCLanguaje, DC.Creator y DC.Indentifer establecidos por la herramienta de software Nutch. Las pruebas se realizaron tomando en consideración los principios estadísticos relativos a tamaño de la muestra y los fundamentos de las probabilidades, para tener un estimado confiable de precisión y exhaustividad Propósito El plan de pruebas se propone como fin inmediato, verificar que la herramienta de software funcione adecuadamente. Las pruebas son consultas que se realizaron sobre un tema específico de diferentes fuentes del conocimiento de medicina aplicada, las mismas que se encuentran almacenadas en una base de datos del sistema. 6.2 Identificación de motores de búsqueda a probar Google (site search) Me permite agregar direcciones urls a la base de datos e interactuar a través de una consulta para ver su funcionamiento. El proceso de rastreo y búsqueda de direcciones lo realiza automáticamente, no necesita ejecución manual. Para acceder a Google (site search) ingreso a: Como requisito previo para utilizar este motor de búsqueda, tengo que tener creada una cuenta en google para acceder a los servicios de recuperación de información. Nutch Al igual que Google site search, Nutch me permite agregar direcciones urls a la base de datos e interactuar a través de una consulta para ver su funcionamiento. El proceso de rastreo y búsqueda de direcciones se lo realiza de manera manual, eso quiere decir que hay que enviar parámetros de búsqueda al crawler para que realice el rastreo de urls a través del emulador de comandos cygwin. Todo este proceso se detalla de mejor manera en el anexo 1. Para acceder a Nutch levanto el servidor apache Tomcat accediendo al puerto 8080: 82

83 6.3 Metadatos utilizados por el Motor de búsqueda NUTCH A continuación se describe los metadatos del estándar Dublin Core 40 que utiliza la herramienta Nutch para recuperación de información. Los metadatos utilizados son: DC.Title: Título, el nombre dado al recurso. DC.Subject: Palabras clave, el tema de contenido del recurso. DC.Language: Lengua, idioma de contenido del recurso. DC.Creator: Autor, responsable de la creación del contenido. Puede ser una entidad, una persona o un servicio. DC.Identifier: Identificación, referencia unívoca para el contenido del recurso. Por ejemplo una URL o un ISBN. 6.4 Pruebas utilizando metadatos en Nutch Las siguientes pruebas me van a permitir recuperar un recurso a través de los metadatos como se puede observar en las respectivas consultas. Cada prueba que se realiza es un recurso diferente que se encuentra almacenado en la base de datos de la herramienta. Como se puede observar en el ejemplo, puedo recuperar un recurso utilizando cualquier metadato, siempre y cuando esté dentro del estándar establecido que utiliza la herramienta. Prueba 1 Acceso a las urls de pruebas Tipo de Recurso: Sitio web de información digital medica Consulta 1 Metadato utilizado: (DC. Identifier) Consulta 2 EBSCOHOST publishing Metadato utilizado: (DC. Title) 40 Metadatos Dublin Core utilizados. Disponible en: 83

84 Consulta 3 Databases medical Hospitals medical institutions EBSCO publishing Provider of EBSCOhost Databases Complement Journal Subscriptions Metadato Utilizado (DC. Subject) Prueba 2 Acceso a las urls de pruebas Tipo de Recurso: Repositorio Web de artículos PDF Consulta 1 Metadato utilizado: (DC. Identifier) Consulta 2 PDF Search Engine Metadato utilizado: (DC. Title) Consulta 3 Search for a book Metadato Utilizado (DC. Subject) Prueba 3 Acceso a las urls de pruebas Tipo de Recurso: Enciclopedia Web Consulta 1 Metadato utilizado: (DC. Identifier) Consulta 2 Centers for disease control prevention Metadato utilizado: (DC. Title) Consulta 3 control your risk for heart disease Emergency preparedness Metadato Utilizado (DC. Subject) 84

85 Prueba 4 Acceso a las urls de pruebas Tipo de Recurso: Biblioteca digital medica Consulta 1 Consulta 2 Consulta 3 Metadato utilizado: (DC. Identifier) Centre for evidence based medicine Metadato utilizado: (DC. Title) university of oxford CEBM EBM tools and resources CEBM blog Metadato Utilizado (DC. Subject) Los recursos web que posee la base de datos de la herramienta son: Blogs Libros digitales Bases de datos medicas Artículos de temas de salud Temas de un área específica de salud humana. 6.5 Comparación de Resultados obtenidos por Nutch y Google (site search) Las pruebas de funcionamiento se realizaron formulando 23 consultas especializadas sobre diferentes temas de medicina que corresponden a la base de datos de direcciones urls utilizadas mostradas en el anexo 4. Los resultados obtenidos con los dos motores de búsqueda en prueba: Nutch y Google (site search) se presentan en la tabla 6.5, en cual se visualiza los parámetros de exhaustividad y precisión. 85

86 Tabla 6.5: Parámetros de exhaustividad y precisión de los motores de búsqueda Nutch y Google (site search) a partir de 23 consultas realizadas. Tema Consulta Exhaustividad Precisión Google Nutch Google Nutch 1 Databases medical Problemas en la columna vertebral acp hospitalist medical articles free medical journal Ebooks Medicina de urgencias y emergencias medicina para médicos y pacientes the k-12 schools Scirus for scientific information trip database clinical search engine The Patient as a Consumer US The American medical Association AM The journal of healthcare The emergency healthcare multimedia medical journals of infection the heart and circulation medical journal international lectures from medical schools the medmatrix AIDS The medicine molecular the value disease portal para especialistas en gastroenterología Porcentajes de Exhaustividad y Precisión En las figuras y se observa los resultados de precisión y exhaustividad tomados de la tabla 6.5 basados en las pruebas que se realizaron a los motores de búsqueda Nutch y Google (site search). 86

87 Exhaustividad: Se aplica esta medida para determinar el número de resultados obtenidos por los motores de búsqueda Nutch y Google (site search) Google site search Nutch Conclusión Figura 6.6.1: Exhaustividad entre Nutch y Google (site search) Se puede observar que Google (site search) obtuvo un mayor número de resultados que Nutch, esto se debe a que no solo interactúa con las direcciones urls enviadas, sino que utiliza el api de Google para realizar las búsquedas, lo cual genera que se produzca un mayor número de resultados relevantes y no relevantes a las necesidades de información 87

88 Precisión Se aplica esta medida para determinar el número de resultados relevantes obtenidos por los motores de búsqueda Nutch y Google (site search), de esta manera se reduce el ruido documental Google Nutch Figura 6.6.2: Precisión entre Nutch y Google (site search) 88

89 6.7 Precisión expresado en porcentaje de análisis de varianza Tabla 6.7: Tabla de porcentajes de Precisión entre Google (site search) y Nutch Google (site search) % Nutch % promedio Estos valores los obtuve al dividir los resultados favorables sobre los resultados posibles para Nutch y Google (site search), enmarcándome dentro del principio de la teoría de probabilidades. Modelo Matemático El método de análisis estadístico para comparación de la eficiencia de consultas relevantes para el usuario de una Biblioteca Digital sustentado en el motor de búsqueda Nutch, fue el análisis de varianza (ANOVA) de dos vías, cuyo modelo matemático tomado de (CALZADA, 1980) fue el siguiente: Yij =µ +αi +τj +ξij 89

90 Donde: Yij = Índice de precisión µ = promedio general de la prueba αi = Desviación de entre el método de búsqueda y el promedio general del ensayo (efecto) τj = Desviación entre los promedios de temas consultados y el promedio del motor de búsqueda usado ξij = El error experimental (variación no explicada) Las hipótesis asociadas al Análisis de Varianza sostienen: Ho: Los niveles de precisión de los dos motores de búsqueda, Google (site search) y Nutch, no se diferencian significativamente. Ha: Los niveles de precisión entre los motores de búsqueda Google (site search) y Nutch si difieren estadísticamente. Nota: Todas las fórmulas estadísticas que se van a utilizar en el análisis de varianza ANOVA de la tabla 6.8 se detallan de mejor manera en el anexo 5. 90

91 Tabla 6.8: Análisis de varianza para los motores de búsqueda Google (site search) y Nutch Porcentajes % Arco seno P Tema Google Nutch Google Nutch Total Databases medical Problemas en la columna vertebral acp hospitalist medical articles free medical journal Ebooks Medicina de urgencias y emergencias medicina para médicos y pacientes the k-12 schools Scirus for scientific information trip database clinical search engine The Patient as a Consumer US The American medical Association AM The journal of healthcare The emergency healthcare multimedia medical journals of infection the heart and circulation medical journal international lectures from medical schools the medmatrix AIDS The medicine molecular the value disease portal para especialistas en gastroenterología Total Termino de corrección Suma de cuadrados total Suma de cuadrados de temas consultados Suma cuadrados motores de búsqueda Suma de cuadrados del error Tc S.C.T S.C.t S.C.M S.C.E

92 Tabla 6.8.1: Análisis de varianza para índices de precisión transformados a arco-seno, donde p representa el porcentaje. Fuentes de variación GL SC CM Fc F0.05 F0.01 Temas búsqueda Sistemas Búsqueda Error total La comparación entre los promedios expresados en función angular (arco-seno), se realizo empleando el Test de Duncan con un nivel de significación del 1%. A continuación se indica la fórmula para el cálculo del Rango de Amplitud de Duncan (RAD). R. A. D CMe/n A. E. S νi g. l del error = /23 *4.02 = Tabla 6.8.2: Comparación de promedios para Google (site search) y Nutch Comparación promedios R.A.T Arco-seno Normalizar Google b Nutch a Tabla 6.8.3: Resultados obtenidos por el análisis de varianza Herramienta de software Porcentaje % Google (site search) 21.1 Nutch Conclusión: La diferencia entre los promedios y 21,1 supera al valor RAD, por lo tanto se puede evidenciar que el Motor de búsqueda Nutch es verdaderamente el más eficiente en la medida de precisión. Un análisis de varianza (ANOVA) me permite obtener resultados más aproximados y con un nivel de error mínimo que el uso de probabilidades, esto se debe a que posee un conjunto de modelos matemáticos estadísticos más operativos que un único modelo de 92

93 probabilidad. El análisis de varianza ANOVA trabaja en conjunto con la teoría de probabilidades como se puede evidenciar en la tabla 6.8. En este caso Nutch obtuvo mayores resultados que Google (site search) ya que son de mayor relevancia e interés para los requerimientos de consulta, esto se debe a que Nutch interactúa solamente con información que se envía a la base de datos de urls y busca únicamente en esas direcciones. 93

94 Conclusiones y Recomendaciones En los términos más simples, un líder es aquel que sabe a dónde quiere ir, y se levanta y va. John Erskine 94

95 Conclusiones Se ha propuesto utilizar la técnica de indexación y el uso de índice invertido para recuperar elementos estructurales, para lo cual voy a emplear el uso de índice invertido con direccionamiento a palabra y a documento. Estas estructuras me permiten analizar la consulta formulada por un usuario con el fin de validar toda la cadena de texto y recuperar información acorde a la pregunta formulada en la fase de búsqueda. El estándar que más se acopla a las bibliotecas digitales es el Dublin Core (DC), mediante el cual utilizo cinco etiquetas las cuales me van a permitir identificar un recurso al que se va a acceder. Las etiquetas utilizadas se orientan a: título, autor, palabras clave, idioma y dirección url donde se encuentra el recurso. Para calcular la relevancia de los resultados obtenidos de una consulta se utiliza el modelo vectorial y probabilístico para posteriormente proponer un modelo matemático híbrido probabilístico/vectorial, que me va a permitir analizar el documento con respecto a la consulta y obtener un mayor número de documentos relevantes a las necesidades de información. La arquitectura propuesta para el proceso de recuperación de información trabaja de forma secuencial de manera que la consulta formulada por un usuario es validada acorde a la información almacenada en el repositorio y finalmente clasificada en orden de relevancia descendente. La arquitectura es tomada como marco de trabajo para la configuración de la herramienta de software Nutch ya que esta trabaja mediante la configuración de archivos y plugins. En el plan de validación y pruebas utilizo dos medidas para verificar el funcionamiento de las herramientas de software Nutch y Google (site search). Las medidas utilizadas son exhaustividad y precisión. Los datos tomados en la muestra del experimento me permiten conocer que Google (site search) posee una exhaustividad más alta que Nutch, pese a que recupera más recursos pero de los cuales existen relevantes y no relevantes. Google es un motor de búsqueda muy potente y no existe otro motor de búsqueda que supere sus resultados en exhaustividad. 95

96 Para analizar la medida de precisión en el experimento, he utilizado análisis de varianza (ANOVA) que me va a permitir realizar cálculos estadísticos utilizando los datos tomados durante el experimento y concluir que Google (site search) obtuvo 21.1% y Nutch obtuvo % con lo cual se determinó que Nutch es más preciso en la obtención de resultados relevantes. Esto me permite conocer que Nutch obtiene un porcentaje alto por lo cual el nivel de documentos con ruido es muy bajo. Recomendaciones Verificar que exista información sobre el uso y manejo de la herramienta de software que se vaya a utilizar. Para adaptar cualquier herramienta de código abierto, es necesario realizar un previo análisis del funcionamiento, arquitectura y sistemas operativos con los cuales va a interactuar, esto me permite saber si se adapta a las necesidades de uso. Realizar pruebas a la herramienta de software para conocer si existen algunas falencias. Es más costoso solucionar un error cuando la aplicación ya este puesta en funcionamiento. 96

97 Glosario de Términos Solo hay una regla para diseñar casos de prueba: abarcar todas las funciones, pero no diseñar demasiados casos. John Erskine 97

98 GLOSARIO DE TÉRMINOS Araña (spider/crawler/robot): Es un programa utilizado para rastrear la red, se encarga de leer la estructura de hipertexto y accede a todos los enlaces referidos en el sitio web. Archivo o (vocabulario): Es una estructura que almacena todas las palabras que forman la cadena de consulta. TD (tipo de documento): Se refiere al tipo de documento, como por ejemplo: DOC, PDF, imagen, HTML,TXT. Extracción de la información: Trata todo el contenido del documento o recurso. En este caso para la extracción se analiza la estructura gramatical (frases, párrafos) para identificar información. Fichero: Es una estructura formada por todos los campos, etiquetas, que forman un recurso. Índice: Es un numero o identificación que se le asigna a un documento para localizarlo al momento de realizar una búsqueda para que sea más efectiva. Probabilidad: Se refiere a la posibilidad de que suceda un evento. Posee dos resultados posibles el 1 que equivale al 100% y el 0 al 0% del resultado de un experimento REST (Transferencia de Estado Representacional): Es un enfoque que muestra cómo desarrollar y proporcionar servicios en internet, es considerado como un estilo arquitectónico para el diseño de software a gran escala. Nos permite mostrar cómo debe comportarse una aplicación Web bien diseñada, donde el usuario progresara seleccionando enlaces (transiciones de estado) que devuelven la página siguiente (el siguiente estado de la máquina). Re indexación: Es volver a reconstruir el índice ante problemas como pérdida accidental de datos, inconsistencias introducidas o por errores. Stopwords: Son palabras que no agregan significado al documento como por ejemplo: letras sueltas, espacios de separación de palabras. Todo motor de búsqueda se beneficia de eliminar las stopwords 98

99 Stoplist: Es una lista de palabras irrelevantes que se encuentran cuando formamos una cadena de texto, como por ejemplo: el, la, los, las, un, una, a, b, c, d, etc. Sistemas Documentales: Es cuando almacenan y mantienen los documentos para que el usuario pueda realizar una consulta sobre algún documento relevante. Sistemas Referenciales: Es cuando el usuario es el encargado de localizar el documento para consultarlo. Sistemas de automatización de oficinas: También llamados OAS por sus siglas en inglés (Office Automation Systems) consisten en aplicaciones destinadas a ayudar al trabajo diario del administrativo de una organización, forman parte de este tipo de software los procesadores de textos, las hojas de cálculo, los editores de presentaciones, los clientes de correo electrónico, etc. Semántica: Se refiere a los aspectos del significado, sentido o interpretación del significado de un determinado elemento, símbolo, palabra, expresión o representación formal. Arquitectura de Software: Es un conjunto de componentes que interactúan entre sí para formar un todo cohesionado. El resultado será la arquitectura de recuperación de la información para la implementación de una biblioteca digital médica. Direccionamiento por bloque: Es analizar internamente la estructura de un texto por párrafos. Lenguaje natural: Es un lenguaje entendible por las personas en un idioma específico, por ejemplo: Algoritmos de inteligencia artificial -> Idioma en español Artificial intelligence algorithms -> Idioma en ingles 99

100 Anexo 1: Instalación de la Herramienta La perpetuidad de las cosas consiste en su variación. Seneca 100

101 Instalación de la herramienta de software Nutch Para la instalación de esta herramienta se toman en cuenta requerimientos de hardware y software como se indican a continuación: Requerimientos de Software: Sistemas Operativos Soportados: Windows XP, Windows 7, Linux y MAC. Sistema Operativo Utilizado: Windows XP. Software a instalar: Java JDK versión 1.5 en adelante, Apache Tomcat 6.0, emulador de comandos cygwin, Apache Nutch-1.1-bin. Se recomienda utilizar las versiones indicadas de java y del servidor Tomcat para que no existan problemas al momento de realizar la ejecución del crawler. Requerimientos de Hardware: Un computador Pentium 4 en adelante, con disco duro de 30 GB y 750 MB de RAM. Se necesitan todos estos requerimientos de hardware ya que el software que utilizo consume recursos de rendimiento del computador. La aplicación ocupa 75MB de RAM en rendimiento. Los recursos utilizados por la aplicación los podemos ver en el administrador de tareas de Windows en la opción rendimiento. Información a utilizar en la base de datos de la herramienta: La información que contiene la base de datos de Nutch son direcciones urls médicas ya que el objetivo de una biblioteca digital es interactuar con información que se encuentra alojada en la web. En el anexo 4 se puede observar las direcciones urls utilizadas por el crawler de Nutch. Detalle de Recursos en RAM utilizados por la aplicación Software Servidor Web Apache Tomcat 6.0 Emulador de comandos cygwin Acceso a consultas Aplicación Total de memoria Utilizada Recursos de memoria 50 MB/RAM 15 MB/RAM 10 MB/RAM 75 MB/RAM 101

102 Pasos a seguir para instalar la herramienta de software Nutch Paso 1: Descargar los siguientes programas que vamos a utilizar 1.1. Descargar el JDK 41 en su versión jdk1.6.0_27, para lo cual accedemos al sitio web de java: Descargar el servidor Web Apache Tomcat 42 en su versión del sitio web de apache: Descargar el emulador de comandos de LINUX cygwin 43 en su versión 1.7 del sitio Web: Este programa viene acompañado de un valioso set de herramientas GNU (que hasta ahora sólo podían ser utilizadas bajo Linux y Unix). Técnicamente, el pilar fundamental de Cygwin está constituido por la librería cygwin1.dll, que contiene las funciones que emulan la API de Linux, y hacia la cuál enlazan los programas compilados por la versión de gcc disponible para esta plataforma Descargar Nutch del sitio oficial -> (versión creada: 06/Junio/2010). Paso 2: Configurar variables de entorno de Java (JDK 1.6.0_21) Establecemos la variable de entorno del JDK que estamos utilizando. Esto se realiza en variables de entorno: Ponemos el nombre de la variable: JAVA_HOME y el valor: JDK. C:\Archivos de programa\java\jdk1.6.0_21 (este valor es la ruta donde se encuentra instalado el JDK) Figura 2: Configuración de JAVA _HOME 41 Java Developer Kit (JDK): 42 Servidor Apache Tomcat: 43 Emulador de comandos cygwin: 44 Apache Nutch-1.1-bin: 102

103 Paso 3: Configurar el servidor Apache Tomcat La instalación del servidor Apache Tomcat es sencilla, solamente hay que instalarlo siguiendo los pasos siguientes y verificar el puerto de conexión que sea el Finalmente para verificar su instalación correcta hacemos la petición a: localhost: 8080 que es un servidor que trabaja de manera local en el computador para acceder luego a la aplicación. Figura 3.1: Instalación del servidor Apache Tomcat Antes de acceder al servidor debemos seleccionar la opción Start service para levantar el servidor y acceder al puerto de escucha 8080 Figura 3.2: Iniciar servidor Apache Tomcat Paso 4: Configurar el emulador de comandos cygwin Una vez descargado el instalador del emulador de comandos cygwin del sitio web, hay que instalarlo, para lo cual se selecciona todas las opciones disponibles como se observa en la figura

104 Nota: Para instalar el emulador de comandos cygwin hay que estar conectados a internet ya que todos los paquetes necesarios para su instalación se descargan del servidor web de la empresa cygwin. Figura 4.1: Configuración de cygwin Paso 5: Descomprimir Nutch dentro del disco local C de la computadora 5.1 Descomprimir el archivo que contiene todo el proyecto apache-nutch-1.1-bin en el disco local C para realizar las respectivas configuraciones mostradas en los pasos siguientes. Paso 6: Configuración de los archivos de Nutch Para configurar el proyecto Nutch hay que modificar las siguientes carpetas que se muestran en la figura Carpeta conf Dentro de esta carpeta se va a configurar los siguientes archivos: Common-terms.utf8 Este archivo se lo importa al proyecto con el fin de que no existan problemas con la lectura de algunos caracteres al momento de ejecutar el crawler, además nos permite que no existan conflictos cuando se está instalando la herramienta en el sistema operativo Windows

105 Figura 6.1: Archivos que forman el proyecto Nutch Crawl-urlfilter A este fichero le vamos a enviar como parámetro de referencia la dirección o direcciones que tenemos almacenadas en la base de datos de la carpeta urls con las cuales queremos trabajar: +^ Figura 6.2: Referencia a las direcciones urls utilizadas 105

106 Las direcciones urls presentes en este archivo txt son orientadas al área médica en diferentes temas, pero podemos trabajar con cualquier tipo de direcciones urls, dependiendo de la orientación de las necesidades de negocio. nutch-site.xml Ingreso a este archivo para configurar el crawler, para lo cual se agrega cualquier dirección url como referencia. En este caso para la configuración del crawler se ha utilizado la dirección: Todas estas configuraciones se muestran a continuación en el archivo.txt Figura 6.3: Código para la configuración del crawler La configuración del crawler por defecto es <name>http.agent.name</name> y el valor por defecto que toma es <value>crawler.utpl.com</value> En el campo descripción (description) podemos poner cualquier descripción, para el ejemplo se puso crawler de prueba. Una vez realizados estos pasos guardamos los cambios realizados. 106

107 6.2 Carpeta urls (base de datos de direcciones urls médicas) Crear una carpeta dentro del proyecto apache-nutch-1.1-bin con el nombre de urls. Dentro del directorio urls crear un fichero de texto.txt con cualquier nombre, será el que contenga todas las urls que usará Nutch para generar el índice. Las direcciones urls que ingresamos pertenecen al área médica y son las que vamos a utilizar en el proceso de recuperación de la información. Estas direcciones van a ser analizadas por el crawler para que al momento de su ejecución este realice el proceso de indexación (asignación de un índice a cada url). El archivo que contiene las direcciones urls que vamos a utilizar es un.txt 6.3 Carpeta lib Esta carpeta contiene todas las librerías JAR que se va a utilizar para la configuración de apache-nutch. Librerías de Apache SOLR 45 Me permite analizar el texto de un articulo pdf o pagina Web, para lo cual hay que instalar las siguientes librerías Apache-solr-core Apache-solrj Sitio web de SOLR: 107

108 Librerías de Apache HADOOP 46 Esta librería nos permite que se realice el procesamiento de datos distribuidos con el servidor, este proceso lo podemos observar en el funcionamiento del crawler de Nutch. Para qué ser realice este proceso, instalamos las siguientes librerías hadoop core hadoop tools Librerías de Apache LUCENE 47 Esta librería nos permite realizar el proceso de indexación y recuperación de un recurso, para lo cual instalamos la librería: lucene-core Esta librería trabaja en conjunto con los algoritmos de indexación y búsqueda para el proceso de recuperación de información de un recurso. En el anexo 3 se explican a detalle los algoritmos con los que trabaja esta librería de Lucene. Librerías de Apache TIKA 48 tika-core Sitio web de Hadoop: 47 Sitio web de Lucene: 48 Sitio de descarga de Apache Tika: 108

109 Esta librería nos permite analizar los metadatos utilizados por la herramienta de software, usando librerías de parsing existentes. Esta librería trabaja en conjunto con las librerías de SOLR para el análisis de toda la estructura del texto y de los metadatos. 6.4 Carpeta logs En esta carpeta podemos observar el archivo hadoop.txt, el cual contiene la fecha y tiempo de ejecución del procesamiento de datos distribuidos al momento de ejecutar el crawler y obtener la respuesta del servidor Web. En este archivo se observa de manera detallada el funcionamiento del crawler de Nutch y el proceso de asignación de índice a cada dirección url que enviamos en la base de datos de direcciones urls. Todo este proceso lo realiza la plataforma Hadoop. El proceso que realiza el emulador de comandos lo podemos observar de mejor manera en este archivo. 6.5 Carpeta crawl Esta carpeta contiene la base de datos de índices que los genera el crawler de nutch al momento de ejecutar su funcionamiento. En esta carpeta se almacenan los índices de todas las direcciones urls buscadas ya que la función principal de un crawler es buscar en una dirección url otras direcciones urls bajo ese dominio. 6.6 Carpeta src En esta carpeta están todas las 225 clases que forman este proyecto, cada una de ellas posee una función específica. De todas estas clases se han importado y configurado los siguientes algoritmos. 109

110 Plugin del algoritmo Page-Rank Este algoritmo es propio de la empresa google y se lo utiliza para encontrar la relevancia obtenida de los recursos recuperados al momento de realizar una consulta en la herramienta de software. Este algoritmo cataloga la relevancia de manera descendente, es decir solamente muestra información acorde a una consulta específica. Algoritmos de Lucene Estos algoritmos son propios de Lucene 49, se utilizan para indexación y búsqueda de recursos obtenidos por el crawler. Para mayor información sobre el funcionamiento detallado de estos algoritmos revisar el anexo 3. Archivo Metadata En este archivo se especifican los metadatos utilizados por nutch al momento de realizar la recuperacion de un recurso web. El estandar que se utiliza es Dublin Core DC. Archivo SOLR Este archivo contiene los algoritmos de SOLR: Indexer y Writer que se utilizan para análisis de la estructura interna del texto de un recurso web. 6.7 Carpeta apache-nutch-1.1-bin 49 Libro Lucene in Action capitulo 1: 110

111 Finalmente dentro de la carpeta del proyecto nutch está la librería de java nutch.1.1.jar la cual permite asociar toda la aplicación para su funcionamiento integrándola con el emulador de comandos cygwin. Para verificar que todas estas librerías y plugins del proyecto estén importadas se verifica con el comando ls vía comandos utilizando cygwin. Paso 7: Configuración para el funcionamiento del motor de búsqueda 7.1 Ingresamos la ubicación del instalador del Nutch 1.1. En este caso se encuentra en el disco local C. Tomar en cuenta que para acceder a esta ubicación tenemos que poner los comandos cd /cygdrive + ruta de ubicación del programa + nombre y versión del programa. Figura 7.1: Comandos de configuración del motor de Búsqueda 7.2 Listar los programas instalados Ponemos el comando ls el cual nos lista lo siguiente: La ruta donde se encuentra la base de datos de urls y recursos que estamos utilizando. La imagen WAR que la copiamos en el servidor y que esta almacenada en la carpeta webapps. La librería JAR de NUTCH (si no se encuentra esta no podemos acceder a la aplicación) Figura 7.2: Listar los programas instalados con ls 7.3 Acceso al directorio de Nutch Accedemos al directorio de ubicación del instalador (c) y luego al instalador de la herramienta apache-nutch-1.1-bin. 111

112 Figura 7.3: Acceso al directorio de Nutch 7.4 Funcionamiento del crawler de Nutch Una vez realizados todos los pasos anteriores, estamos en condiciones de ejecutar el crawler. Para lo cual vamos a poner el comando: bin/nutch crawl urls -threads 5 - dir crawl -depth 3 -topn 10 Nota: Si deseo realizar una búsqueda de hasta unas 20 direcciones urls utilizo una búsqueda en profundidad de 3 (depth 3) Figura 7.4: Funcionamiento del crawler de Nutch para pocas urls Si deseo realizar una búsqueda de 100 o más direcciones urls utilizo una búsqueda en profundidad de 4 (depth 4) Figura 7.5: Funcionamiento del crawler de Nutch para varias urls Referencias de palabras reservadas a utilizar: dir: nombre del directorio donde se encuentra el Crawler. depth: indica la profundidad de enlace desde la página raíz que se debe rastrear. delay: determina el tiempo (numero de segundos) entre el acceso a cada host. threads: determina el numero de subprocesos que buscara en paralelo. topn: Indica el número de páginas a mostrar. 112

113 Paso 8: Verificar la ejecución 8.1 Si ejecutando el comando anterior y sale algún error, tenemos que revisar el tipo de error obtenido. Los errores más comunes son: No se encuentra la ruta del JDK. Error en algún archivo. No se encuentra el archivo predeterminado. Problemas con alguna versión del instalador del Nutch o del servidor apache No se encuentra la variable de entorno de JDK. En otros casos podemos tener error por no importar las siguientes librerías (JAR): Nutch-1.1, hadoop, jakarta. Todo esto depende de la versión de Nutch con la que estemos trabajando. 8.2 Funcionamiento del Crawler Si no tenemos ningún error y todo sale correcto obtenemos lo siguiente: Con estos parámetros vamos a lanzar el crawler sobre las urls indicadas en el fichero de texto dentro del directorio urls, con 5 hilos de ejecución (-threads), generará el índice en el directorio crawl (-dir), con una profundidad desde la página raíz de 3 niveles (-depth) y un máximo de 10 páginas por nivel (-topn). Una vez realizada la ejecución, se genera automáticamente la carpeta crawl, la cual contiene de manera estructurada: crawldb, index, linkdb, segments, todas estas carpetas poseen las URL`s indexadas, índices generados, para posteriormente acceder desde la interfaz grafica a la información. 113

114 Figura 8.2.1: Fase de inicio del crawler y lectura de procesos enviados Figura 8.2.2: Fase de creación de la base de datos de índices del crawler 114

115 Figura 8.2.3: Asignación de un índice a cada dirección url Figura 8.2.4: Proceso de finalización del funcionamiento del crawler 115

116 La Figura realiza el proceso de indexación de cada url especificada. En la figura a se puede observar el funcionamiento completo del crawler de nutch, en el cual podemos ver lo siguiente: Procesos Enviados: Procesos que enviamos para que realice la búsqueda (threads, depth, top). Injector: starting: Empieza el funcionamiento del crawler, tomando en cuenta los parámetros enviados. Indexer starting: Empieza el proceso para crear los índices para cada dirección url. Injector crawldb: crawl/crawldb: Funcionamiento de la base de datos de índices generados por el crawler. Se genera la carpeta de base de datos de índices, la cual es creada por las URLs que enviamos al motor de búsqueda. Se crea la carpeta crawldb. Injector: urldir urls: El motor de búsqueda accede a las direcciones URLs que enviamos. Injector: converting injected urls to crawl db entries: Conversión de las direcciones URL para rastrear las entradas db. Generator: topn: 10: Genera las 10 direcciones urls que se estableció en el parámetro topn10. Fetcher: starting: El proceso de búsqueda ha empezado. Se genera el proceso de búsqueda de direcciones URLs por profundidad, eso quiere decir que dentro de una dirección URL, pueden existir varias subdirecciones. fetching : Empieza buscando la primera dirección url, y así sucesivamente con todas las demás direcciones asignadas en la carpeta url. Adding File:/C:/apache-nutch-1.1-bin/crawl/indexes/part : Añade el archivo que contiene la ruta y el instalador de nutch que estamos utilizando. En este caso el instalador está localizado en el disco C y la carpeta crawl que posee las bases de datos de índices de cada url indexada por el crawler. crawl finished: crawl: Finaliza el funcionamiento el crawler de Nutch y posteriormente ya podemos interactuar con la herramienta realizando el proceso de recuperación de la información. 116

117 Todo el proceso del funcionamiento del crawler de Nutch lo realiza hadoop (procesamiento de datos distribuidos) ya que estamos accediendo a un servidor web externo para obtener información sobre las direcciones urls que enviamos al motor de búsqueda. Una vez que salió todo el proceso exitoso, ya podemos interactuar con la información que enviamos a la base de datos del motor de búsqueda a través de la herramienta. Abrimos un navegador web e invocamos al puerto 8080 para acceder a realizar la respectiva fase de recuperación de la información indexada por el motor de búsqueda. Paso 9: Ingresar a la carpeta Apache Tomcat 9.1 En el directorio donde se encuentra Nutch tengo el archivo nutch-1.1.war, que será el que desplegaremos en el Tomcat y que nos permitirá realizar la comunicación entre cliente y servidor, es decir entre la aplicación y el servidor Apache Tomcat. Para desplegarlo, simplemente hay que copiarlo en el directorio webapps del Tomcat y utilizar el Tomcat Manager para empezar el servicio. Para realizar el proceso anterior se accede a la siguiente ruta: C:\Archivos de programa\apache Software Foundation\Tomcat 6.0\webapps 9.2 Modificar el fichero nutch-site.xml en el directorio C:\Archivos de programa\apache Software Foundation\Tomcat 6.0\webapps\nutch-1.1\WEB- INF\classes del Tomcat para indicarle a la aplicación web donde está el índice de los recursos que va a buscar. 117

118 Figura 9.2: Ingresar a la carpeta del servidor Apache Tomcat En este caso se va a incluir en el fichero nutch-site.xml. No olvidar que en <value> poner la ruta de instalación de nutch seguido de la carpeta crawl. Figura 9.3: Modificar el archivo nutch site Paso 10: Construcción de la Interfaz grafica de usuario de la aplicación Como la aplicación es orientada al área médica, se va a construir una interfaz grafica de usuario acorde a nuestras necesidades. Para la construcción de la interfaz se utilizo un editor de código y páginas web Adobe Dreamweaver CS5 50 y para la 50 Sitio de Adobe Dreamweaver: 118

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Máster en Lenguajes y Sistemas Informáticos: Tecnologías del Lenguaje en la Web Universidad de Educación a Distancia Marzo 2013

Máster en Lenguajes y Sistemas Informáticos: Tecnologías del Lenguaje en la Web Universidad de Educación a Distancia Marzo 2013 Presentación de Trabajo de Fin de Máster PROPUESTA DE BÚSQUEDA SEMÁNTICA: APLICACIÓN AL CATÁLOGO DE MAPAS, PLANOS Y DIBUJOS DEL ARCHIVO GENERAL DE SIMANCAS Máster en Lenguajes y Sistemas Informáticos:

Más detalles

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA)

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA) Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA) Agenda 1. Introducción 2. Concepto Documento Electrónico 3. A que se le denomina Documento Electrónico 4. Componentes de un Documento Electrónico

Más detalles

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi Gestión de Permisos Bizagi Suite Gestión de Permisos 1 Tabla de Contenido Gestión de Permisos... 3 Definiciones... 3 Rol... 3 Perfil... 3 Permiso... 3 Módulo... 3 Privilegio... 3 Elementos del Proceso...

Más detalles

MÓDULO IV INTERNET: ESTRATEGIAS DE BÚSQUEDA DE INFORMACIÓN ACADÉMICA PROGRAMA DE EDUCACIÓN EN INFORMACIÓN

MÓDULO IV INTERNET: ESTRATEGIAS DE BÚSQUEDA DE INFORMACIÓN ACADÉMICA PROGRAMA DE EDUCACIÓN EN INFORMACIÓN MÓDULO IV INTERNET: ESTRATEGIAS DE BÚSQUEDA DE INFORMACIÓN ACADÉMICA PROGRAMA DE EDUCACIÓN EN INFORMACIÓN PANORÁMICA M-2 M-2 Biblioteca Biblioteca y sus sus servicios servicios M-3 M-3 Biblioteca Biblioteca

Más detalles

Sistemas de Recuperación de Información

Sistemas de Recuperación de Información Sistemas de Recuperación de Información Los SRI permiten el almacenamiento óptimo de grandes volúmenes de información y la recuperación eficiente de la información ante las consultas de los usuarios. La

Más detalles

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. UNIVERSIDAD DE CARABOBO FACULTAD DE CIENCIA Y TECNOLOGÍA DIRECCION DE EXTENSION COORDINACION DE PASANTIAS Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. Pasante:

Más detalles

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios "Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios Miguel Alfonso Flores Sánchez 1, Fernando Sandoya Sanchez 2 Resumen En el presente artículo se

Más detalles

EXPERTOS EN DESARROLLO WEB

EXPERTOS EN DESARROLLO WEB EXPERTOS EN DESARROLLO WEB ADAPTACIÓN A LA NUEVA NORMATIVA SOBRE COOKIES NUEVA NORMATIVA SOBRE EL USO DE COOKIES A D SITUACIÓN DESEADA SITUACIÓN ACTUAL Se establecen multas a las empresas que no informen

Más detalles

Guía de los cursos. Equipo docente:

Guía de los cursos. Equipo docente: Guía de los cursos Equipo docente: Dra. Bertha Patricia Legorreta Cortés Dr. Eduardo Habacúc López Acevedo Introducción Las organizaciones internacionales, las administraciones públicas y privadas así

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

ANEXO : PERFILES. Guía de Comunicación Digital para la Administración General del Estado. ANEXO PERFILES

ANEXO : PERFILES. Guía de Comunicación Digital para la Administración General del Estado. ANEXO PERFILES ANEXO : PERFILES Guía de Comunicación Digital para la Administración General del Estado. ANEXO PERFILES ANEXO: PERFILES. 3 1. REQUISITOS ANTES DE TENER EL SITIO WEB. 4 1.1 TOMA DE REQUISITOS. 4 1.2 ANÁLISIS

Más detalles

CURSO COORDINADOR INNOVADOR

CURSO COORDINADOR INNOVADOR CURSO COORDINADOR INNOVADOR PRESENTACIÓN La tarea que el Ministerio de Educación se propone a través de Enlaces, en relación al aseguramiento del adecuado uso de los recursos, con el fin de lograr un impacto

Más detalles

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS SISTEMA DE ESPECIICACION DE REQUERIMIENTOS Presentado por: Jefferson Peña Cristian Álvarez Cristian Alzate 10 CONTENIDO 1. INTRODUCCIÓN 1.1. PROPÓSITO 1.2. AMBITO DEL SISTEMA 1.3. DEFINICIONES, ACRÓNIMOS

Más detalles

5.2. PROYECTO RODA. http://roda.ibit.org/index.cfm (6/07/04).

5.2. PROYECTO RODA. http://roda.ibit.org/index.cfm (6/07/04). 5.2. PROYECTO RODA Se trata de un proyecto 1 piloto de demostración tecnológica, cofinanciado por el PROFIT 2003, cuya duración se fijó de Enero 2003 a Marzo de 2004. Los participantes son ROBOTIKER, la

Más detalles

Unidad 1. Fundamentos en Gestión de Riesgos

Unidad 1. Fundamentos en Gestión de Riesgos 1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.

Más detalles

Gestión de la Configuración

Gestión de la Configuración Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de

Más detalles

PROCEDIMIENTO ESPECÍFICO. Código G083-01 Edición 0

PROCEDIMIENTO ESPECÍFICO. Código G083-01 Edición 0 Índice 1. TABLA RESUMEN... 2 2. OBJETO... 2 3. ALCANCE... 2 4. RESPONSABILIDADES... 3 5. ENTRADAS... 3 6. SALIDAS... 3 7. PROCESOS RELACIONADOS... 3 8. DIAGRAMA DE FLUJO... 4 9. DESARROLLO... 5 9.1. DEFINICIÓN...

Más detalles

I. OBJETIVOS INTRODUCCIÓN. Oscar Daniel Camuendo Vásquez e-mail: oscardny86@hotmail.com

I. OBJETIVOS INTRODUCCIÓN. Oscar Daniel Camuendo Vásquez e-mail: oscardny86@hotmail.com DISEÑO, IMPLEMENTACIÓN E IMPLANTACIÓN DE UNA APLICACIÓN WEB DE ADMINISTRACIÓN Y CONTROL DE CALIFICACIONES PARA LA UNIDAD EDUCATIVA PARTICULAR OVIEDO (SECCIÓN SECUNDARIA), UTILIZANDO SOFTWARE LIBRE. Oscar

Más detalles

Son funciones de la Unidad de Archivo las que a continuación se describen:

Son funciones de la Unidad de Archivo las que a continuación se describen: Son funciones de la Unidad de Archivo las que a continuación se describen: 1. Guardar y custodiar los documentos propios de la Secretaría de Relaciones Exteriores, sus direcciones y unidades, con el fin

Más detalles

Ministerio de Educación, Cultura y Deporte. Joomla! La web en entornos educativos. Guía del alumnado

Ministerio de Educación, Cultura y Deporte. Joomla! La web en entornos educativos. Guía del alumnado Ministerio de Educación, Cultura y Deporte Joomla! La web en entornos educativos Guía del alumnado INTEF 2012 Joomla! La web en entornos educativos Guía Didáctica En este apartado describiremos las características

Más detalles

O jeto de apre r ndizaje

O jeto de apre r ndizaje Herramientas de Gestión para Objetos de Aprendizaje. Plataforma AGORA Victor Hugo Menéndez Domínguez Universidad Autónoma de Yucatán, México :: mdoming@uady.mx Manuel Emilio Prieto Méndez Universidad de

Más detalles

Sistemas de Gestión de Calidad. Control documental

Sistemas de Gestión de Calidad. Control documental 4 Sistemas de Gestión de Calidad. Control documental ÍNDICE: 4.1 Requisitos Generales 4.2 Requisitos de la documentación 4.2.1 Generalidades 4.2.2 Manual de la Calidad 4.2.3 Control de los documentos 4.2.4

Más detalles

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES Raúl Palma G. y Guillermo Bustos R. Escuela de Ingeniería Industrial Universidad Católica de Valparaíso Casilla

Más detalles

Objetivos del proyecto:

Objetivos del proyecto: Crear una página web corporativa atractiva, fácil de usar, que permita dar a conocer nuestra empresa, nuestros servicios y nuestros productos, a través de un medio con tanta importancia como es Internet.

Más detalles

Módulo 7: Los activos de Seguridad de la Información

Módulo 7: Los activos de Seguridad de la Información Módulo 7: Los activos de Seguridad de la Información Se explica en este tema cómo deben abordarse la elaboración de un inventario de activos que recoja los principales activos de información de la organización,

Más detalles

SISTEMA DE GESTIÓN ACADÉMICA.

SISTEMA DE GESTIÓN ACADÉMICA. SISTEMA DE GESTIÓN ACADÉMICA. MANUAL DE USUARIO Glosario. 1 6.1. Conceptos Académicos usados en las Funcionalidades. AUTORIZACIONES: Documento a través del cual se permite a un estudiante realizar aquello

Más detalles

Gestión de Configuración del Software

Gestión de Configuración del Software Gestión de Configuración del Software Facultad de Informática, ciencias de la Comunicación y Técnicas Especiales Herramientas y Procesos de Software Gestión de Configuración de SW Cuando se construye software

Más detalles

Prof. Julio Cerdá Universidad de Alcalá. Gestión electrónica de documentos y acceso a la información

Prof. Julio Cerdá Universidad de Alcalá. Gestión electrónica de documentos y acceso a la información Prof. Julio Cerdá Universidad de Alcalá Gestión electrónica de documentos y acceso a la información 1 DOCUMENTO DIGITAL Y DOCUMENTO ELECTRONICO El El ciclo ciclo vital vital de de los los documentos 2

Más detalles

ORIENTACIONES SIMCE TIC

ORIENTACIONES SIMCE TIC ORIENTACIONES SIMCE TIC Sistema Nacional de Medición de Competencias TIC en Estudiantes ORIENTACIONES SIMCE TIC Sistema Nacional de Medición de Competencias TIC en Estudiantes INDICE Introducción 7 Prueba

Más detalles

Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final

Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final INTRODUCCION En principio surgió la idea de un buscador que brinde los resultados en agrupaciones de

Más detalles

Primer avance de proyecto de software para la gestión de inscripciones en cursos

Primer avance de proyecto de software para la gestión de inscripciones en cursos Primer avance de proyecto de software para la gestión de inscripciones en cursos 1. Introducción Andrés Felipe Bustamante García, Carolina Sarmiento González En este documento se presentan los resultados

Más detalles

Instructivo Gestor de Colecciones Coordinacio n Proyecto Curricular

Instructivo Gestor de Colecciones Coordinacio n Proyecto Curricular UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS SISTEMA DE BIBLIOTECAS REPOSITORIO INSTITUCIONAL RIUD Instructivo Gestor de Colecciones Coordinacio n Proyecto Curricular OBJETIVO Gestionar la Colección

Más detalles

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322 Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322 Nicole García Gómez 2830047-6 Diego Riquelme Adriasola 2621044-5 RESUMEN.- La minería de datos corresponde a la extracción

Más detalles

CRM Gestión de Oportunidades Documento de Construcción Bizagi Process Modeler

CRM Gestión de Oportunidades Documento de Construcción Bizagi Process Modeler Bizagi Process Modeler Copyright 2011 - Bizagi Tabla de Contenido CRM- Gestión de Oportunidades de Venta... 4 Descripción... 4 Principales Factores en la Construcción del Proceso... 5 Modelo de Datos...

Más detalles

Introducción a los sitios de SharePoint en Office 365

Introducción a los sitios de SharePoint en Office 365 Introducción a los sitios de SharePoint en Office 365 Universidad Central del Este Contenido 1. QUÉ ES UN SITIO SHAREPOINT?... 3 2. CÓMO INGRESAR AL ÁREA DE SITIOS?... 3 3. DESCRIPCIÓN GENERAL DEL ÁREA

Más detalles

Un Sistema Inteligente para Asistir la Búsqueda Personalizada de Objetos de Aprendizaje

Un Sistema Inteligente para Asistir la Búsqueda Personalizada de Objetos de Aprendizaje Un Sistema Inteligente para Asistir la Búsqueda Personalizada de Objetos de Aprendizaje Ana Casali 1, Claudia Deco, Cristina Bender y Valeria Gerling, Universidad Nacional de Rosario, Facultad de Ciencias

Más detalles

Plataformas virtuales

Plataformas virtuales Plataformas virtuales Índice Introducción 1 Qué es una plataforma virtual? 2 Para qué sirve una plataforma virtual? 3 Cómo se usa una plataforma virtual? 5 Tipos de plataformas virtuales 6 Conclusión

Más detalles

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red. Comercio electrónico. (e-commerce) Las empresas que ya están utilizando la red para hacer comercio ven como están cambiando las relaciones de la empresa con sus clientes, sus empleados, sus colaboradores

Más detalles

E-learning: E-learning:

E-learning: E-learning: E-learning: E-learning: capacitar capacitar a a su su equipo equipo con con menos menos tiempo tiempo y y 1 E-learning: capacitar a su equipo con menos tiempo y Si bien, no todas las empresas cuentan con

Más detalles

INTRANET DE UNA EMPRESA RESUMEN DEL PROYECTO. PALABRAS CLAVE: Aplicación cliente-servidor, Intranet, Área reservada, Red INTRODUCCIÓN

INTRANET DE UNA EMPRESA RESUMEN DEL PROYECTO. PALABRAS CLAVE: Aplicación cliente-servidor, Intranet, Área reservada, Red INTRODUCCIÓN INTRANET DE UNA EMPRESA Autor: Burgos González, Sergio. Director: Zaforas de Cabo, Juan. Entidad colaboradora: Colegio de Ingenieros del ICAI. RESUMEN DEL PROYECTO El proyecto consiste en el desarrollo

Más detalles

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS 4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia

Más detalles

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Cenditel, Mayo 2011 Licencia de Uso Copyright (c) 2010, Alvarez J., Solé S., Briceño R., Fundación CENDITEL. La Fundación CENDITEL

Más detalles

La Web Semántica como herramienta para e-learning

La Web Semántica como herramienta para e-learning La Web Semántica como herramienta para e-learning Lidia Marina López llopez@uncoma.edu.ar Departamento de Ciencias de la Computación Universidad Nacional del Comahue Buenos Aires 1400 8300 Neuquén Tel.

Más detalles

Administración Local Soluciones

Administración Local Soluciones SISTEMA INTEGRADO DE GESTIÓN DE EXPEDIENTES MODULAR (SIGM) MANUAL DE USUARIO DE ARCHIVO PRÉSTAMOS Y CONSULTAS SIGM v3 Administración Local Soluciones Control de versiones Versión Fecha aprobación Cambio

Más detalles

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... Tabla de Contenido PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... 2 1. LA PRESENCIA DE INFORMACIÓN Y AYUDA ÚTIL PARA COMPLETAR LOS TRÁMITES EN LÍNEA.... 2 2. LA DISPONIBILIDAD DE DIVERSOS

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

http://www.nicasoft.com.ni

http://www.nicasoft.com.ni BSC-RH es un sistema automatizado de planificación estratégica y gestión, utilizado en empresas para direccionar las actividades del negocio a la visión y estrategia de la organización. Mejora la comunicación

Más detalles

EMPRESAS PÚBLICAS DE MEDELLÍN E.S.P. DIRECCIÓN CONTROL INTERNO PROYECTO NORMALIZACIÓN ACTIVIDAD DE AUDITORÍA INTERNA

EMPRESAS PÚBLICAS DE MEDELLÍN E.S.P. DIRECCIÓN CONTROL INTERNO PROYECTO NORMALIZACIÓN ACTIVIDAD DE AUDITORÍA INTERNA DCI-PN-EA-01 VERSIÓN 02 Página 2 de 12 TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 2. ROL... 3 3. PROFESIONALIDAD... 3 4. AUTORIDAD... 4 5. ORGANIZACIÓN... 4 6. INDEPENDENCIA Y OBJETIVIDAD... 5 7. ALCANCE...

Más detalles

ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS

ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS ESTUDIO SOBRE EL POSICIONAMIENTO EN BUSCADORES DE PÁGINAS WEB Y LA RELEVANCIA DE LA ACTUALIZACIÓN DE CONTENIDOS

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE Código: F004-P006- GFPI Nº 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE Programa de Formación: Técnico en programación de software. Nombre del Proyecto: Sistema de información para la gestión empresarial

Más detalles

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre.

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Tema: Sistemas Subtema: Base de Datos. Materia: Manejo de aplicaciones

Más detalles

GESTIÓN DE CLÍNICAS COLEGIO OFICIAL DE VETERINARIOS DE BIZKAIA

GESTIÓN DE CLÍNICAS COLEGIO OFICIAL DE VETERINARIOS DE BIZKAIA GESTIÓN DE CLÍNICAS COLEGIO OFICIAL DE VETERINARIOS DE BIZKAIA Memoria del proyecto ÍNDICE 1 - INTRODUCCIÓN... 3 2 - OBJETIVO Y ALCANCE... 4 3 - SOLUCIÓN FUNCIONAL IMPLANTADA... 5 3.1 SENCILLEZ DE USO...

Más detalles

Servicios y aplicaciones clave de la web 2.0

Servicios y aplicaciones clave de la web 2.0 Servicios y aplicaciones clave de la web 2.0 Etiquetado y social bookmarking La web 2,0 ha permitido crear comunidades llamadas Social Bookmarking o marcadores sociales, las cuales son una forma en la

Más detalles

TECNOLOGÍAS LINGÜÍSTICAS Y ACCESO A LA INFORMACIÓN: LA EXPERIENCIA DE BITEXT EN LA ADMINISTRACIÓN PÚBLICA

TECNOLOGÍAS LINGÜÍSTICAS Y ACCESO A LA INFORMACIÓN: LA EXPERIENCIA DE BITEXT EN LA ADMINISTRACIÓN PÚBLICA TECNOLOGÍAS LINGÜÍSTICAS Y ACCESO A LA INFORMACIÓN: LA EXPERIENCIA DE BITEXT EN LA ADMINISTRACIÓN PÚBLICA Director General Bitext.com Director Técnico Bitext.com Palabras clave Gestión de documentos, gestión

Más detalles

PRESENTACIÓN DEL PRODUCTO

PRESENTACIÓN DEL PRODUCTO PRESENTACIÓN DEL PRODUCTO esernet, s.l. Sebastián Elcano, 32 Planta 1 Oficina 22 28012 Madrid Teléfono: 91 433 84 38 -- Fax. 91 141 21 89 www.esernet.com -- esernet@esernet.com 1. Introducción 2. Descripción

Más detalles

Resumen General del Manual de Organización y Funciones

Resumen General del Manual de Organización y Funciones Gerencia de Tecnologías de Información Resumen General del Manual de Organización y Funciones (El Manual de Organización y Funciones fue aprobado por Resolución Administrativa SBS N 354-2011, del 17 de

Más detalles

TECNÓLOGO EN INFORMÁTICA PLAN DE ESTUDIOS

TECNÓLOGO EN INFORMÁTICA PLAN DE ESTUDIOS Administración Nacional de Universidad de la República Educación Pública Facultad de Ingenieria CF Res..0.07 Consejo Directivo Central Consejo Directivo Central Res..05.07 Res. 17.0.07 TECNÓLOGO EN INFORMÁTICA

Más detalles

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE MARZO 2007 Este documento contesta las preguntas más frecuentes que se plantean las organizaciones que quieren

Más detalles

SIMAD CLOUD. La Gestión Documental ahora en la nube, más eficiente SISTEMA INTEGRADO DE ADMINISTRACIÓN DOCUMENTAL

SIMAD CLOUD. La Gestión Documental ahora en la nube, más eficiente SISTEMA INTEGRADO DE ADMINISTRACIÓN DOCUMENTAL La administración documental profesional es una completa herramienta documental dirigida preferiblemente a pequeñas y medianas organizaciones para ganar control sobre sus documentos, con énfasis en la

Más detalles

Master en Gestion de la Calidad

Master en Gestion de la Calidad Master en Gestion de la Calidad 3. La Calidad en la Actualidad La calidad en la actualidad 1 / 9 OBJETIVOS Al finalizar esta unidad didáctica será capaz: Conocer la calidad en la actualidad. La familia

Más detalles

FACULTAD DE CONTADURIA Y CIENCIAS ADMINISTRATIVAS FINANZAS I NORMAS DE INFORMACION FINANCIERA

FACULTAD DE CONTADURIA Y CIENCIAS ADMINISTRATIVAS FINANZAS I NORMAS DE INFORMACION FINANCIERA Normas de Información Financiera Durante más de 30 años, la Comisión de Principios de Contabilidad (CPC) del Instituto Mexicano de Contadores Públicos A. C. (IMCP) fue la encargada de emitir la normatividad

Más detalles

INSTRUCTIVO DE ADMINISTRADOR ALFRESCO COMMUNITY 4.2

INSTRUCTIVO DE ADMINISTRADOR ALFRESCO COMMUNITY 4.2 INSTRUCTIVO DE ADMINISTRADOR ALFRESCO COMMUNITY 4.2 Grupo de Innovación y Apropiación de Tecnologías de la Información Archivística Compilador: Pedro Antonio Gómez Guarín INSTRUCTIVO DE ADMINISTRADOR ALFRESCO

Más detalles

Qué es una página web?, qué conoces al respecto?, sabes crear una página

Qué es una página web?, qué conoces al respecto?, sabes crear una página Semana 13 13 Empecemos! Bienvenidos a una nueva sesión, llena de aprendizajes! En semanas anteriores estudiamos lo que son bases de datos, estructuras de datos y métodos de ordenamientos, todo lo cual

Más detalles

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV Página 1 de 6 1. OBJETIVO El presente documento tiene la finalidad de citar los beneficios de la migración de la herramienta de análisis de riesgo, mantenimiento e inspección que en lo sucesivo se denominará

Más detalles

Guía para Desarrollo de Sitios Web - Gobierno de Chile

Guía para Desarrollo de Sitios Web - Gobierno de Chile www.guiaweb.gob.cl > 109 110 < www.guiaweb.gob.cl La Guía en Internet: www.guiaweb.gob.cl Guía para Desarrollo de Sitios Web - Gobierno de Chile Como se ha indicado en los capítulos iniciales, esta Guía

Más detalles

PE06. RESPONSABILIDAD SOCIAL

PE06. RESPONSABILIDAD SOCIAL Índice 1. Objeto 2. Alcance 3. Referencias/Normativa 4. Definiciones 5. Desarrollo de los procesos 6. Seguimiento y Medición 7. Archivo 8. Responsabilidades 9. Flujograma ANEXOS: No proceden Edición Fecha

Más detalles

ESTRATEGIAS RECOMENDADAS PARA BUSCAR INFORMACION EN INTERNET

ESTRATEGIAS RECOMENDADAS PARA BUSCAR INFORMACION EN INTERNET ESTRATEGIAS RECOMENDADAS PARA BUSCAR INFORMACION EN INTERNET Antes de comenzar la búsqueda tienes que Enunciar el tema para luego decidir la herramienta y estrategias que debes usar Herramientas de búsqueda

Más detalles

GUÍA PARA SISTEMAS DE RASTREABILIDAD

GUÍA PARA SISTEMAS DE RASTREABILIDAD REQUISITOS GENERALES Y RECOMENDACIONES PARA IMPLEMENTAR RASTREABILIDAD DE ALIMENTOS AGROPECUARIOS PRIMARIOS Y PIENSOS 1 CAMPO DE APLICACIÓN Esta guía específica los requisitos mínimos que debe cumplir

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

ANEXO 26-A COMITÉ PERMANENTE DE INTERPRETACIÓN SIC N 32 ACTIVOS INTANGIBLES COSTOS DE SITIOS WEB. (Modificada en 2008) (IV Difusión)

ANEXO 26-A COMITÉ PERMANENTE DE INTERPRETACIÓN SIC N 32 ACTIVOS INTANGIBLES COSTOS DE SITIOS WEB. (Modificada en 2008) (IV Difusión) ANEXO 26-A COMITÉ PERMANENTE DE INTERPRETACIÓN SIC N 32 ACTIVOS INTANGIBLES COSTOS DE SITIOS WEB (Modificada en 2008) (IV Difusión) Interpretación SIC-32 Activos Intangibles - Costos de Sitios Web Referencias

Más detalles

CAPÍTULO I INTRODUCCIÓN

CAPÍTULO I INTRODUCCIÓN CAPÍTULO I INTRODUCCIÓN Una página Web es un documento situado en una red informática al que se accede mediante enlaces de hipertexto, y éste es aquel texto que contiene elementos a partir de los cuales

Más detalles

Recuperación de información Bases de Datos Documentales Licenciatura en Documentación Curso 2011/2012

Recuperación de información Bases de Datos Documentales Licenciatura en Documentación Curso 2011/2012 Bases de Datos Documentales Curso 2011/2012 Miguel Ángel Rodríguez Luaces Laboratorio de Bases de Datos Universidade da Coruña Introducción Hemos dedicado la primera mitad del curso a diseñar e implementar

Más detalles

CURSO DE ADAPTACIÓN DE DIPLOMADO EN FISIOTERAPIA A GRADUADO EN FISIOTERAPIA

CURSO DE ADAPTACIÓN DE DIPLOMADO EN FISIOTERAPIA A GRADUADO EN FISIOTERAPIA 2013 CURSO DE ADAPTACIÓN DE DIPLOMADO EN FISIOTERAPIA A GRADUADO EN FISIOTERAPIA FACULTAD DE CIENCIAS DE LA SALUD UNIVERSIDAD DE ZARAGOZA. 1 DENOMINACIÓN DEL TÍTULO. Graduado o Graduada en Fisioterapia

Más detalles

ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL Facultad de Ingeniera en Electricidad y Computación

ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL Facultad de Ingeniera en Electricidad y Computación ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL Facultad de Ingeniera en Electricidad y Computación Tema: NEGOCIOS EN INTERNET SUBASTATODO.COM Integrantes: Marianas Arias Peña 1 María Teresa Figueroa 2 José Zambrano

Más detalles

MANUAL DEL TRABAJO FIN DE GRADO EN FISIOTERAPIA GUÍA PARA LOS TUTORES

MANUAL DEL TRABAJO FIN DE GRADO EN FISIOTERAPIA GUÍA PARA LOS TUTORES 2011 MANUAL DEL TRABAJO FIN DE GRADO EN FISIOTERAPIA GUÍA PARA LOS TUTORES Universidad de Zaragoza Escuela de Ciencias de la Salud Grado en Fisioterapia Trabajo Fin de Grado 1. Introducción Qué es el Trabajo

Más detalles

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE 3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE Software Configuration Management (SCM) es una disciplina de la Ingeniería de Software que se preocupa de [Ber92] [Ber84] [Bou98] [Mik97]: Identificar y documentar

Más detalles

MOODLE PARA ASESORES, GUIA DE APOYO.

MOODLE PARA ASESORES, GUIA DE APOYO. FORTALECIMIENTO DE LAS CAPACIDADES, COMPETENCIAS Y HABILIDADES EN CIENCIA, TECNOLOGÍA E INNOVACIÓN EN NIÑOS, NIÑAS, JÓVENES E INVESTIGADORES DEL PUTUMAYO. MOODLE PARA ASESORES, GUIA DE APOYO. El concepto

Más detalles

UNIVERSIDAD AUTÓNOMA DEL CARIBE

UNIVERSIDAD AUTÓNOMA DEL CARIBE Página: 1/5 UNIVERSIDAD AUTÓNOMA DEL CARIBE SOPORTE DE PLATAFORMA GESTIÓN INFORMÁTICA Página: 2/5 1. OBJETO El objeto del procedimiento es garantizar una plataforma tecnológica y un sistema de comunicación

Más detalles

CAPITULO III A. GENERALIDADES

CAPITULO III A. GENERALIDADES CAPITULO III INVESTIGACION DE CAMPO SOBRE EL DISEÑO DE UN SISTEMA AUTOMATIZADO DE CONTROL INVENTARIO Y EXPEDIENTES DE MENORES DE EDAD PARA EL CENTRO DE DESARROLLO INTEGRAL LA TIENDONA EN LA ZONA METROPOLITANA

Más detalles

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14 EVALUACIÓN A TRAVÉS DE LA WEB: EL SISTEMA TUTORMAP 1 R.Criado, D.Martín y S. Sánchez (GIEMATI, Dpto. de CC. Experimentales e Ingeniería de la URJC) Resumen En este trabajo se describen las características

Más detalles

Sistema para Gestión Hotelera Visión

Sistema para Gestión Hotelera Visión Sistema para Gestión Hotelera Visión Tabla de Contenidos 1. Introducción 4 1.1 Propósito 4 1.2 Alcance 4 1.3 Definiciones, Acrónimos, y Abreviaciones 4 1.4 Referencias 4 2. Posicionamiento 4 2.1 Oportunidad

Más detalles

GENERALIDADES DE BASES DE DATOS

GENERALIDADES DE BASES DE DATOS GENERALIDADES DE BASES DE DATOS A fin de evitar que idénticos datos se encuentren repetidos en múltiples archivos, parece necesario que los comunes se almacenen en un archivo único y que este archivo sea

Más detalles

POLÍTICAS DE SEGURIDAD PARA EL DESARROLLO DE SISTEMAS DE CAPUFE

POLÍTICAS DE SEGURIDAD PARA EL DESARROLLO DE SISTEMAS DE CAPUFE SISTEMAS DE ÍNDICE PÁGINA INTRODUCCIÓN OBJETIVO 3 FUNDAMENTO LEGAL 4 DEFINICIONES 5 POLÍTICAS 6 De la base de datos Del acceso a los sistemas De los sistemas Web Ambientes de Desarrollo, Calidad o Pruebas,

Más detalles

Gestión y Desarrollo de Requisitos en Proyectos Software

Gestión y Desarrollo de Requisitos en Proyectos Software Gestión y Desarrollo de Requisitos en Proyectos Software Ponente: María Jesús Anciano Martín Objetivo Objetivo Definir un conjunto articulado y bien balanceado de métodos para el flujo de trabajo de Ingeniería

Más detalles

Ponencia Redes y Sistemas de Información Especializadas LA VIRTUALIZACION DE LA INFORMACION EN LA RED DE BIBLIOTECAS UNIVERSITARIAS DE SAN ANDRES

Ponencia Redes y Sistemas de Información Especializadas LA VIRTUALIZACION DE LA INFORMACION EN LA RED DE BIBLIOTECAS UNIVERSITARIAS DE SAN ANDRES LA VIRTUALIZACION DE LA INFORMACION EN LA RED DE BIBLIOTECAS UNIVERSITARIAS DE SAN ANDRES Por: Lic. Hugo Morales Bellido 1 Univ. Rogelio Callizaya Nina 2 Dentro de las redes de información universitaria

Más detalles

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra Cómo gestiono el Plan Anual de Adquisiciones de mi Entidad en el SECOP II? Crear equipo Crear Plan Anual de Adquisiciones Publicar Plan Anual de Adquisiciones Modificar Plan Anual de Adquisiciones Buscar

Más detalles

Manual PARA EL ADMINISTRADOR DE LA WEB DE PRÁCTICAS PRE PROFESIONALES Y PASANTÍAS

Manual PARA EL ADMINISTRADOR DE LA WEB DE PRÁCTICAS PRE PROFESIONALES Y PASANTÍAS Manual PARA EL ADMINISTRADOR DE LA WEB DE PRÁCTICAS PRE PROFESIONALES Y PASANTÍAS UNIVERSIDAD TÉCNICA DE MANABÍ Dirección General de Vinculación con la Sociedad FLUJOGRAMA DE PROCESOS USADOS EN LA WEB

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

MOTOR DE RESERVAS NET HOTELES V3.0 SIN COMISIÓN PARA ESTABLECIMIENTOS HOTELEROS. http://www.motordereservas.es

MOTOR DE RESERVAS NET HOTELES V3.0 SIN COMISIÓN PARA ESTABLECIMIENTOS HOTELEROS. http://www.motordereservas.es MOTOR DE RESERVAS NET HOTELES V3.0 SIN COMISIÓN PARA ESTABLECIMIENTOS HOTELEROS http://www.motordereservas.es Información y Contratación: 902 193 444 INFORMACION GENERAL El Motor de Reservas Net Hoteles

Más detalles

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes

Más detalles

Metodología básica de gestión de proyectos. Octubre de 2003

Metodología básica de gestión de proyectos. Octubre de 2003 Metodología básica de gestión de proyectos Octubre de 2003 Dentro de la metodología utilizada en la gestión de proyectos el desarrollo de éstos se estructura en tres fases diferenciadas: Fase de Éjecución

Más detalles

Sistema de Gestión de Proyectos Estratégicos.

Sistema de Gestión de Proyectos Estratégicos. [Documento versión 2.0 del 24/06/2015] Sistema de Gestión de Proyectos Estratégicos. El sistema de Gestión de Proyectos Estratégicos (GPE), es una poderosa herramienta para administrar y gestionar los

Más detalles

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura 1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos

Más detalles

ANÁLISIS DE LA SITUACIÓN ACTUAL DEL SISTEMA DE CONTROL DE RECLAMOS DE LA EMPRESA PROTOTIPO

ANÁLISIS DE LA SITUACIÓN ACTUAL DEL SISTEMA DE CONTROL DE RECLAMOS DE LA EMPRESA PROTOTIPO CAPITULO 3 ANÁLISIS DE LA SITUACIÓN ACTUAL DEL SISTEMA DE CONTROL DE RECLAMOS DE LA EMPRESA PROTOTIPO En este apartado se detallaran los procesos con los que cuenta la empresa actualmente en estudio, ya

Más detalles

QUÉ ACTIVIDADES PODEMOS HABILITAR EN EL CAMPUS VIRTUAL?

QUÉ ACTIVIDADES PODEMOS HABILITAR EN EL CAMPUS VIRTUAL? QUÉ ACTIVIDADES PODEMOS HABILITAR EN EL CAMPUS VIRTUAL? En este tutorial presentamos los distintos tipos de actividades disponibles en el Campus Virtual UNER. Para agregar una actividad dentro de un tema:

Más detalles

Seven ERP Guía De Referencia - Imágenes

Seven ERP Guía De Referencia - Imágenes Seven ERP Guía De Referencia - Imágenes Digital WARE Ltda. Calle 72 # 12-65 P.2 Bogotá, Colombia 2004 Digital Ware, Ltda. Todos Los Derechos Reservados Toda la documentación utilizada en Seven ERP está

Más detalles

El Portal de la Transparencia

El Portal de la Transparencia La base para la Publicidad Activa de información recogida en la Ley de Transparencia 1. Introducción La concepción y diseño técnico del Portal de la Transparencia, son fruto de un Acuerdo de Colaboración

Más detalles

PROCEDIMIENTO DE PRESTACIÓN DE SERVICIOS TECNOLÓGICOS

PROCEDIMIENTO DE PRESTACIÓN DE SERVICIOS TECNOLÓGICOS PROCEDIMIENTO DE PRESTACIÓN DE SERVICIOS TECNOLÓGICOS OBJETIVO Facilitar el proceso de enlace entre la comunidad universitaria, el sector productivo e instituciones gubernamentales mediante el aprovechamiento

Más detalles