O sistema de organização de arquivos por meio de diretórios e subdiretórios tem se mostrado ineficiente há muito tempo. Os principais motivos disso são a falta de tempo para organizar e nomear arquivos, a dificuldade de encontrar os arquivos no sistema de pastas e o volume muito grande de dados para tratar.
Os sitemas de busca para internet trouxeram um novo conceito na organização da informação. O usuário não precisa saber exatamente onde está a informação e nem precisa organizá-la, mas apenas acumulá-la. Olhe para a sua mesa! Parece organizada? Ou é um amontoado infindável de papéis?
Mas nem tudo é uma maravilha. Como encontrar algo rapidamente num lugar desorganizado? A resposta é a indexação prévia. Um indexador é responsável pela transformação automática da informação numa forma recuperável. Nesse contexto surgem os recuperadores textuais como o Joogle - softwares que permitem a indexação e recuperação eficiente de documentos de texto.
O recuperador textual Joogle possui dois módulos: Indexador e Buscador. O Indexador faz uma varredura no computador onde está atuando para indexar os arquivos de texto encontrados. Posteriormente, o Buscador pode recuperar os arquivos já indexados baseando-se no seu conteúdo.
Existe um Indexador que lê e grava no banco de dados e um Buscador que lê parte do banco de dados de acordo com a busca realizada.
Indexador <--> Banco de Dados --> Buscador
Texto original: "O endereço do Joogle é www.joogle.com.br"
Texto indexado: o, endereco, do, joogle, e, www, com, br
O que foi feito: conversão para lowercase, retirada de acentuação e pontuação, retirada de palavras repetidas.
Busca por: "Banãna -doce +Saláda"
Resultados: arquivos que contenham "banana" e "salada" e não contenham "doce"
Busca por: "Maçã cajú cocadA"
Resultados: arquivos que contenham "maca" ou "caju" ou "cocada"
O Joogle apresenta uma interface gráfica swing independente de sistema. A GUI do Buscador fornece as opções de busca e um campo para a string de busca. Os resultados são o nome e localização dos arquivos. É possível abrir o resultado na própria aplicação. O GUI do Indexador fornece as opções de indexação. Enquanto a indexação se processa, é exibido um log que informa sobre o status da indexação.
Atividades/Semanas | 2.a/out | 3.a/out | 4.a/out | 1.a/nov | 2.a/nov | 3.a/nov | 4.a/nov |
Requisitos | X | X | X | ||||
Design | X | ||||||
Indexador | X | X | X | X | |||
Buscador | X | X | X | X | X | ||
Interface Gráfica | X | X | X | X | X | X | |
Teste de unidade | X | X | X | X | X | X |
Membros/Semanas | 3.a/out | 4.a/out | 1.a/nov | 2.a/nov | 3.a/nov | 4.a/nov |
Lucas | Pesquisar JavaGDBM/Hash em Disco | Stop list | Chave de busca | Busca com operadores | Algoritmos de busca | Testes + documentação |
Gustavo | Indexador básico | Indexador completo | Buscador básico | Integração indexador/GUI | Revisão + documentação | Fechamento da GUI |
Willames | Pesquisar JavaGDBM/Hash em Disco | Chave de busca | Chave de busca | Algoritmos de busca | X | X |
Helton | UML e interfaces | Caracteres especiais/acentuação | Ajustes no indexador | Integração buscador/GUI | Testes + documentação | HTML parser |
Pablo | GUI do buscador | GUI do buscador | GUI do indexador | Integração GUI/lógica | GUI principal | Ajustes |