Buscador de escritorio multimedia CIII Desktop Search

49 

Loading....

Loading....

Loading....

Loading....

Loading....

Texto completo

(1)

Universidad Carlos III de Madrid

Repositorio institucional e-Archivo http://e-archivo.uc3m.es Trabajos académicos Proyectos Fin de Carrera

2009-10

Buscador de escritorio multimedia CIII

Desktop Search

Parra Corredor, Eugenio

http://hdl.handle.net/10016/10651

(2)

1

UNIVERSIDAD CARLOSIII DE MADRID

BUSCADOR DE ESCRITORIO MULTIMEDIA:

CIII Desktop Search

Eugenio Parra Corredor

Proyecto fin de carrera

Ingeniería técnica en informática de gestión Escuela politécnica superior

(3)

2

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(4)

3

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(5)

4

Introducción

Buscadores desktop

¿Qué es un buscador desktop?

Programa capaz de buscar archivos en un ordenador personal. Similar a los buscadores en Internet, los buscadores de escritorio presentan los resultados de manera inmediata.

¿Por qué son necesarios?

Con el aumento en la memoria de los discos duros se necesitan herramientas capaces de trabajar y recuperar la gran cantidad de archivos que pueden almacenar.

(6)

5

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(7)

6

Objetivos y requisitos de desarrollo

Índice

• Objetivos generales.

• Características en la búsqueda de archivos de texto.

• Características en la búsqueda de archivos y directorios.

• Características en la búsqueda de archivos que puedan cambiar a un formato de texto plano.

(8)

7

Objetivos y requisitos de desarrollo

Objetivos generales

• Crear un programa que permita realizar búsquedas sobre archivos almacenados en el ordenador personal. • El programa creará un sistema de índices, para realizar

las búsquedas de manera inmediata. • Se podrán realizar búsquedas sobre:

– El contenido en archivos de texto – Nombre de archivos y directorios

– Archivos que puedan cambiar su formato a texto plano (código fuente,html)

• Los índices se actualizarán automáticamente si se produce algún cambio en el sistema de archivos.

• El proceso de creación de índices debe ser atómico.

• En procesos con un coste de tiempo elevado se usaran varios hilos de ejecución.

(9)

8

Objetivos y requisitos de desarrollo

Objetivos generales

• Contará con un sistema de control de errores.

• Se podrá asignar información a los archivos en función de metadatos.

• Los archivos que aparezcan en el programa se podrán ejecutar.

(10)

9

Objetivos y requisitos de desarrollo

Características en la búsqueda de archivos de texto.

• Buscar forzando la coincidencia en mayúsculas y minúsculas.

• Buscar usando expresiones regulares.

• Buscar por los metadatos asignados a los archivos.

• Derivar términos de búsqueda a partir de los originales en los idiomas Ingles y Español.

• Poder indicar palabras que no deben aparecer en el contenido del texto de los archivos.

• Buscar coincidencias exactas de varios términos. • Proporcionar un sistema de corrección ortográfica.

• Los resultados se presentarán ordenados mediante un ranking según la relevancia.

• Al seleccionar un archivo se mostrarán otros documentos relacionados. • La búsqueda será contextualizada.

(11)

10

Objetivos y requisitos de desarrollo

Características en la búsqueda de archivos y directorios.

• Sugerir términos mientras escribe el usuario.

• Filtrar los resultados por la extensión del archivo y por los metadatos asociados.

• Guardar las búsquedas para usarlas posteriormente.

• Se permitirá acceder al contenido de los directorios resultados

(12)

11

Objetivos y requisitos de desarrollo

Características en la búsqueda de archivos que puedan

cambiar a un formato de texto plano.

• Filtrar los resultados por extensión de archivos.

• Mostrar los resultados ordenados mediante un ranking de relevancia.

• Al seleccionar un resultado se mostrará el contenido en la vista previa y se resaltarán los términos de búsqueda que contenga.

• Se podrá navegar por lo distintos términos encontrados.

(13)

12

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(14)

13

Entorno de desarrollo

• El lenguaje utilizado es Visual Basic .NET y el sistema

operativo Windows XP

• Los sistemas operativos compatibles para la ejecución

del programa son Windows XP, Windows 2000 y

Windows Vista.

• La base de datos creada es un sistema de

índices que están almacenados en el disco

en archivos de texto formateados.

(15)

14

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

(16)

15

Resultados

Descripción de la aplicación

Interfaz

El estilo de la interfaz es en lo posible minimalista, reduciendo en lo posible la complejidad y así proporcionar claridad y sencillez en el manejo al usuario.

(17)

16

Resultados

Descripción de la aplicación

• La interfaz está dividida en cuatro bloques, los tres primeros dedicados a las búsquedas y el último a la configuración.

• Se accede a los distintos bloques mediante pestañas localizadas en la parte superior.

• En la zona inferior se muestran los mensajes informativos al usuario a través de un cuadro de texto.

• La parte más importante es la zona central donde se desarrolla el programa.

Eugenio Parra Corredor

(18)

17

Resultados: Descripción de la aplicación

• Crear un programa que permita realizar búsquedas sobre archivos almacenados en el ordenador

personal.

• El programa creará un sistema de índices, para realizar las búsquedas de manera inmediata. • En procesos con un coste de tiempo elevado se

usaran varios hilos de ejecución. • Se podrán realizar búsquedas sobre:

– El contenido en archivos de texto – Nombre de archivos y directorios

– Archivos que puedan cambiar su formato a texto plano (código fuente, html)

Implementación de objetivos generales

Eugenio Parra Corredor

(19)

18

Resultados: Descripción de la aplicación

• Se podrá asignar información a los archivos en función de metadatos.

Implementación de objetivos generales

Eugenio Parra Corredor

Metadatos:

• Contará con un sistema de control de errores. Mediante estructuras TRY–CATCH. Todos los errores controlados, un total de 107, tienen un código único y están documentados.

(20)

19

• Los índices se actualizarán automáticamente si se produce algún cambio en el sistema de archivos. Se utiliza la clase FileSystemWatcher. La

actualización de los índices se realiza en segundo plano

• Los archivos que aparezcan en el programa se podrán ejecutar.

• El proceso de creación de índices debe ser atómico. Copias de seguridad nombreIndice.txt.bak

Implementación de objetivos generales

Resultados: Descripción de la aplicación

Eugenio Parra Corredor

Caída del sistema:

Cambio en el sistema de archivos:

(21)

20

Resultados: Descripción de la aplicación

• Buscar forzando la coincidencia en mayúsculas y minúsculas.

Implementación de búsqueda de archivos de texto

Eugenio Parra Corredor

Concretar búsqueda mayúsculas y minúsculas:

Potencia de búsqueda:

• Búsqueda usando expresiones regulares.

• Buscar por los metadatos asociados.

• Derivar términos de búsqueda a partir de los originales en los idiomas Inglés y Español. Mediante tablas de derivación.

Búsqueda flexible:

Uso de metadatos:

Historial de búsquedas:

(22)

21

Resultados: Descripción de la aplicación

Implementación de búsqueda de archivos de texto

Eugenio Parra Corredor

• Poder indicar palabras que no deben aparecer en el contenido del texto de lo archivos.

Términos que no deben aparecer en los documentos:

Exactitud de términos:

• Buscar coincidencias exactas de varios términos.

Encontrar el documento:

• La búsqueda será contextualizada.

• Proporcionar un sistema de corrección ortográfica.

(23)

22

Resultados: Descripción de la aplicación

Implementación de búsqueda de archivos de texto

refPalabras wifi&1250 Palabras wifi&35$320$8$14200 @35$323$3$14355 RutasFich 35&D:\Libros\Redes de computadoras

Eugenio Parra Corredor

• No se almacena en memoria los índices con mayor tamaño

(24)

23

Resultados: Descripción de la aplicación

Implementación de búsqueda de archivos de texto

– Número de coincidencias.

– Distancia al principio del documento.

– Relevancia del fichero: la suma de la relevancia de los términos de búsqueda dentro del documento.

Wij = TFij * log(N/DFi)

Donde:

Wij = valor de relevancia

TFij = conciente del número de veces que aparece la palabra en el documento, entre el número de la palabra que más se repite.

N = número de documentos indexados.

DFi = el número de documentos que contienen esa palabra.

• Los resultados se presentarán ordenados mediante un ranking según

la relevancia. Este ranking se realiza con la suma de varios pesos:

(25)

24

Resultados: Descripción de la aplicación

Implementación de búsqueda de archivos de texto

Eugenio Parra Corredor

relaciónFicherosPalabras

35&redes$internet$lan$ip$red

relaciónPalabrasFicheros redes&35$12$20

internet&35$10 lan&35$11$20 ip&35

red&35&20$12$44

–Si el documento esta en formato Word, se le suma el valor que tenga la palabra en el índice de puntaciones creado cuando se indexa el

documento.

Documentos relacionados:

• Al seleccionar un archivo se mostrarán otros documentos relacionados.

(26)

25

Resultados: Descripción de la aplicación

Implementación de búsqueda de archivos y directorios

Eugenio Parra Corredor

Desconocimiento del término de búsqueda:

• Sugerir términos mientras escribe el usuario.

Filtrar resultados:

• Filtrar los resultados por la extensión del archivo y por los metadatos asociados.

Usabilidad de la búsquedas:

• Guardar las búsquedas para usarlas posteriormente. Se guardan los filtros.

Navegación en el sistema de archivos:

(27)

26

Resultados: Descripción de la aplicación

Implementación de

búsqueda de archivos que puedan

cambiar a un formato de texto plano.

Filtro de resultados:

• Filtrar los resultados por extensión de archivos.

Vista previa:

• Al seleccionar un resultado se mostrará el contenido en la vista previa y se resaltarán los términos de búsqueda que contenga.

Navegar por la vista previa:

• Se podrá navegar por lo distintos términos encontrados.

Adecuar los resultados al interés del usuario:

(28)

27

Resultados

Comparativa con otro buscadores

A continuación se analiza la eficacia del programa y se realiza una

comparativa con tres buscadores que se encuentran en el mercado, son:

- Sistema operativo: Windows XP Profesional versión 2002 service Pack 2 - Procesador: AMD Athlon 64x2 Dual Core Procesor 5200 + 2.70GHz

- Memoria RAM: 2 GB

- Total del tamaño de los archivos indizados: 413GB.

La prueba a la que han sido sometidos los buscadores ha sido la indexación de datos almacenados en un disco duro y se han tomado medidas del tiempo que han consumido en crearlos y el tamaño de los índices.

• Copernic Desktop Search 2, Exalead Desktop y Google Desktop Search.

Los datos técnicos del equipo donde se han realizado las pruebas son:

(29)

28

Resultados: Comparativa con otro buscadores

Copernic Desktop Search 2

•Nombre: Copernic Desktop Search 2 •Tiempo empleado : 29 min 50 seg

(30)

29

•Nombre: Exalead Desktop

•Tiempo empleado : 7 horas 42 min 55 seg •Tamaño de lo índices: 205 MB

Resultados: Comparativa con otro buscadores

(31)

30

•Nombre: Google Desktop Search •Tiempo empleado : 12 horas 14 min 20 seg •Tamaño de lo índices: 246 MB

Resultados: Comparativa con otro buscadores

(32)

31

Resultados

Comparativa con otro buscadores

CIII Desktop Search

•Nombre: CIII Desktop Search •Categoría: Archivos de texto

•Tiempo empleado : 1 hora 50 min 30 seg

•Tamaño de los índices : 74.03 MB

•Nombre: CIII Desktop Search •Categoría: Sistema de archivos

•Tiempo empleado : 8 min 52 seg

•Tamaño de los índices : 9.64 MB

•Nombre: CIII Desktop Search •Categoría: Cambio texto plano •Tiempo empleado: 39 min

(33)

32

Resultados: Comparativa con otro buscadores

CIII Desktop Search

•Nombre: CIII Desktop Search •Tiempo empleado : 2 Horas 2 Minutos •Tamaño de lo índices: 85.71MB

(34)

33

Resultados: Comparativa con otro buscadores

Comparativa de resultados

Tiempo indexación 29,83 554 122 734 0 200 400 600 800

Coper Exalead Google CIII

Buscadores Minutos Copernic Desktop Exalead Desktop Google Desktop CIII Desktop

(35)

34

Resultados: Comparativa con otro buscadores

Comparativa de resultados

Tamaño del índice

577 185 85 300 0 100 200 300 400 500 600 700 800

Coper Exalead Google CIII

Buscador Tamaño MB Copernic Desktop Exalead Desktop Google Desktop CIII Desktop

(36)

35

Resultados: Comparativa con otro buscadores

Tabla de funcionalidades generales

Leyenda:

(37)

36

Resultados: Comparativa con otro buscadores

Tabla de funcionalidades en la búsqueda de documentos

Leyenda:

(38)

37

Resultados: Comparativa con otro buscadores

Tabla de funcionalidades en la búsqueda de

archivos y directorios

Leyenda:

(39)

38

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(40)

39

Conclusiones

 Objetivos generales.

 Características en la búsqueda de archivos de texto.

 Características en la búsqueda de archivos y directorios.  Características en la búsqueda de archivos que puedan

cambiar a un formato de texto plano.

Lo objetivos que se plantearon al comienzo se han cumplido.

(41)

40

Índice

• Introducción

• Objetivos y requisitos de desarrollo

• Entorno de desarrollo

• Resultados

• Conclusiones

• Desarrollos futuros

(42)

41

Desarrollos futuros

• Ampliar la usabilidad del programa.

• Incrementar las funcionalidades.

• Adaptación en nuevas plataformas.

(43)

42

Fin de la presentación

Preguntas

(44)

43

UNIVERSIDAD CARLOSIII DE MADRID

BUSCADOR DE ESCRITORIO MULTIMEDIA:

CIII Desktop Search

Eugenio Parra Corredor

Proyecto fin de carrera

Ingeniería técnica en informática de gestión Escuela politécnica superior

(45)

44

Corrección ortográfica

combustivle konvustivle palabrasFonética konvustivle$combustible combustible

(46)

45

Coste

Coste horas:

2000 horas X 33€ / hora = 66000 €

Equipo:

Portatil hp, Intel Core 2 Duo 1.8 GHz = 450€

TOTAL: 66450€

Eugenio Parra Corredor

- El número de líneas de código es 8721

- 107 errores controlados con estructuras try-catch. - La base de datos está formada por 31 índices.

(47)

46

Análisis del programa

Análisis

Alcance del software:

El objetivo es crear un programa que facilite el acceso y uso de la información almacenada en un ordenador personal siendo

especialmente útil cuando el número de archivos es muy grande. Se implementarán varias opciones para facilitar la búsqueda de la información al usuario.

Perspectiva del producto:

La intención es mejorar el rendimiento y proporcionar varias funcionalidades que otros buscadores del

mercado no poseen. El programa es una fusión entre los buscadores de escritorio y herramientas Media Center, para posibilitar su uso como un gestor de archivos y no sólo como una herramienta de búsqueda.

(48)

47

Análisis del programa

Diseño

El objetivo durante el desarrollo del código fuente es:

• Conseguir los mejores resultados en la velocidad de proceso. • Minimizar el consumo de recursos.

• Reducir el tamaño de los índices.

• Estructurar bien el programa para facilitar la comprensión. • Controlar los error de ejecución.

(49)

48

Análisis del programa

Implementación:

- El código está divido en 11 módulos que contienen estructuras y funciones que resuelven objetivos comunes.

- El programa lo componen 341 funciones y procedimientos. - El número de líneas de código es 8721

- 107 errores controlados con estructuras try-catch. - La base de datos está formada por 31 índices.

- Los índices se almacenan en estructuras de acceso inmediato como Tablas Hash y Arraylist.

- Para crear varios hilos de ejecución se usa la clase

BackgroundWorker proporcionada por Visual Basic .NET.

- Para vigilar el sistema de archivos sobre posible cambios se usa la clase FileSystemWatcher.

- Se usa la librería System.Text.RegularExpressions para desarrollar las expresiones regulares.

Figure

Actualización...

Referencias

Actualización...

Related subjects :