![Page 1: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/1.jpg)
Gerador Automático de Arquivos HTML de Ajuda para Aplicação em
Educação a Distância (GAAHA)
Paulo Sérgio Salla Sá
Orientação: Prof. Dr. Dilvan de Abreu Moreira
USP - ICMC
2000
![Page 2: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/2.jpg)
Introdução
Principal enfoque deste projeto é o moderno conceito de Educação à Distância
• Objetivo deste projeto– geração de arquivos de indexação e ajuda no padrão
HTML
![Page 3: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/3.jpg)
Educação à Distancia (EAD)
• Caracterizada– separação do professor e do aluno
– controle de aprendizagem é realizado mais intensamente pelo aluno do que pelo professor
– interação entre alunos e professores é mediada por alguma forma de tecnologia
– ocorre em locais diferentes dos tradicionais• técnicas instrucionais especiais
![Page 4: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/4.jpg)
Educação à Distância (EAD)
• Por que ensinar à distância ?
– abrange maior diversidade de alunos
– estudante e professor normalmente não se encontram no mesmo espaço físico
– horários não são rígidos
– ritmo é de exclusiva responsabilidade do aluno
– os temas de aprendizagem são mais vastos
![Page 5: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/5.jpg)
Internet
• Rede de redes
– iniciou um novo conceito na comunicação
– grande quantidade de
informações disponíveis
– informação distribuída
– seminários virtuais
![Page 6: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/6.jpg)
Word-Wide Web (WWW)• É um sistema hipermídia executado na Internet
• Baseada em três padrões abertos:– transferir a informação: http– descrever o formato da informação: HTML– localizar a informação: URL
• Vantagens do Ensino a Distância na Internet/WWW– ensino centralizado no aluno– ferramentas fáceis de utilizar– desenvolvimento dos ambientes virtuais rápido e fácil– aproveitamento dos recursos já existentes– fácil alteração dos conteúdos temáticos
![Page 7: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/7.jpg)
Integrando Web com Banco de dados
• Arquitetura típica.
ClienteWeb
ServidorWeb Gateway
SGBD
Internet/Intranet
HTTP
![Page 8: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/8.jpg)
Integrando Web com Banco de dados
Programas Executáveis
Gerenciador de Aplicação
SSI
API
Interface CGI
Servidor WebEstendido
Arquitetura deintegração WebBanco de Dados
Lado Servidor Web
• Taxonomia das arquiteturas dos Gateway Web Banco de Dados
Controle detransações
Segurançae
AcessoDesempenho Desenvolvimento Portabilidade
ProgramasExecutáveis
CGI* * * ** ***
Gerenciadorde Aplicação
CGI*** *** ** * ***
AplicaçãoAPI *** ** *** * *
AplicaçãoSSI * * * *** *
Quadro comparativo das arquiteturas de integração Web Banco de Dados* funcionalidade fraca, difícil.** funcionalidade é boa*** funcionalidade é ótima
![Page 9: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/9.jpg)
Ferramentas de Programação
A linguagem de programação JAVA
– arquitetura de linguagem consistente
– grande portabilidade em diferentes arquiteturas
– facilidade de programação em rede
– aplicações via WWW
– simples, alto desempenho
– totalmente orientado a objeto, multithreaded
![Page 10: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/10.jpg)
Ferramentas de Programação
• Servlet JAVA– são módulos baseados em solicitações/respostas que
executam no lado do servidor• Ex. um servlet pode ser responsável por pegar os dados pela
ordem de entrada em uma página HTML e aplicá-los em uma lógica de negociação usada em um banco de dados
Cliente ServidorServlet
Objeto: solicitaçãoparâmetroprotocolonome da máquina remotanome do servidor
Objeto: Respostaresposta ao cliente
![Page 11: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/11.jpg)
Ferramentas de Programação
• Java DataBase Connectivity - JDBC
– driver de acesso a um banco de dados SQL
– é uma API Java para a execução de declarações SQL
– com um simples programa usando API JDBC, é possível transmitir declarações para diferentes gerenciadores de banco de dados
– a combinação JAVA e JDBC permite o programador escrever um programa apenas uma vez e executá-lo em diferentes plataformas
![Page 12: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/12.jpg)
Ferramentas de Programação
• MySQL
– é um servidor de banco de dados SQL• pequeno
• multi-usuário
– é uma implementação cliente/servidor
– a principal meta do MySQL• velocidade
• fácil utilização
– domínio público
– desvantagem: suporte dificiente para integridade relacional e não suportam triggers
![Page 13: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/13.jpg)
Ferramentas de Programação
Cliente
JAVA_AppletJAVA_Stand_Alone
Conex!ão (getConnection)
Driver JDBCBase deDadosSQL
DriversJDBC
ServidorInstrução SQL (createStatement)Instrução SQL (executeQuery)
Driver JDBC disponível
Resultados (ResultSet)
Modelo de acesso a um DBMS SQL usando um driver JDBC
![Page 14: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/14.jpg)
Agentes de Software
• Não existe um consenso sobre o seu significado:– programas que manifestam características de inteligência
distribuída
– programas que desempenham um papel de um assistente inteligente
– outros mais ....
• O foco atual parece ter-se deslocado do hardware para o software, dos átomo que compõem um robô mecânico para os bits que compõem um agente digital
![Page 15: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/15.jpg)
Agente Automático de Análise de Texto
• Existem três tipos de indexação:– indexação tradicional
• intervenção humana pode gerar falhas no índice
– indexação full-text• gera índices volumosos
– indexaçao por tags• procura tags nos documentos
• Solução adotada para este projeto– indexação full-text com aplicação de um filtro
![Page 16: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/16.jpg)
Agente Automático de Análise de Texto (Filtro)
• Indexação full-text com aplicação de um filtro– a freqüência da ocorrência de uma palavra em um texto, fornece
uma medida útil para significância da palavra (Luhn)
– a freqüência do dado, pode ser usada para extrair palavras e sentenças para representar um documento
– Produto da freqüência das palavras com rank order, gera o peso da palavra: aproximadamente uma constante (Zipf)
Oráculo 41
Scanner 8 2
Matemática 113
Rank OrderFreq. da palavra Palavra do texto
35 Printer
Peso da Palavra
16
13
15
4
![Page 17: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/17.jpg)
- upper cut-off : são consideradas comuns- lower cut-off : são consideradas raras- poder de resolução : o poder de resolução das palavras significantes no que diz respeito a habilidade de distinguir conteúdos de palavras, atinge um pico no meio do caminho entre os 2 extremos do cut-off
![Page 18: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/18.jpg)
Qualificação
0
100
200
300
400
500
600
700
0 10 20 30 40 50 60
Rank Order
Freq
uenc
ia d
as P
alav
ras
Qualificação
0
200
400
600
800
1000
1200
1400
0 10 20 30 40 50 60
Rank Order
Peso
das
Pal
avra
s
Agente Automático de Análise de Texto
![Page 19: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/19.jpg)
Dom Casmurro
0
500
1000
1500
2000
2500
3000
0 50 100 150
Rank Order
Freq
uenc
ia d
as P
alav
ras
Dom Casmurro
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
0 30 60 90 120 150
Rank Order
Peso
das
Pal
avra
s
Agente Automático de Análise de Texto
![Page 20: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/20.jpg)
RFC2250 - MPEG1/MPEG2
0
50
100
150
200
250
300
0 10 20 30 40 50
Rank Order
Freq
uenc
ia d
as P
alav
ras
RFC2250 - MPEG1/MPEG2
0
100
200
300
400
500
600
700
800
0 10 20 30 40 50
Rank Order
Peso
das
Pala
vras
Agente Automático de Análise de Texto
![Page 21: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/21.jpg)
Descrição do Problema
• grande maioria das aplicações são construídas no padrão HTML
• dinamismo– como manter uma correta indexação, visando um
esquema de ajuda para os usuários
• soluções– criação manual de um índice de ajuda
– ter um mecanismos automático de criação de índice
![Page 22: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/22.jpg)
Apresentação
• Desenvolvimento de uma ferramenta que através da análise do conteúdo de um curso em um Web Site, gere uma página HTML contendo:– Mapa de navegação
– Campo de pesquisa
• Duas técnicas principais foram utilizadas– análise de texto usando ferramenta estatística
– programação distribuída usando agentes de software
![Page 23: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/23.jpg)
• É composto por três subsistemas: – um agente crawler
– um agente mentor
– um cliente WWW
Apresentação (cont.)
![Page 24: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/24.jpg)
Agente Crawler
• Consiste no rastreamento de um curso em um Web Site, a procura de padrões que serão armazenados em um banco de dados SQL, através de um driver JDBC– as palavras mais significativas
– os links de referencias
– os headers
– e os títulos
• o principal propósito é prover conteúdos para um banco de dados
• aplicar restrições as palavras e páginas
![Page 25: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/25.jpg)
Agente Crawler
Curso EAD
PáginasHTML
Banco deDadosSQL
Crawler
Servidor HTTP/Banco de Dados
Processo de execução do agente CRAWLER
Executado pelo Administrador
jdbc
![Page 26: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/26.jpg)
PageSeeker.run()
PageSeeker.LoadPage()
Objeto URLNovas URL
Banco de Dados
Representação Gráfica do principal módulo do agente crawler
![Page 27: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/27.jpg)
micro_course
0
100
200
300
400
500
600
0 5 10 15 20 25 30 35 40 45
Rank Order
Pe
so
Upper Cutoff
Lower Cutoff
50 %50 %
100 % 100 %
Pal. > Freq. = 263 Pal. < Freq. = 1
Freq. Pal. = 23
Freq. Pal. = 36 Freq. Pal. = 12
![Page 28: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/28.jpg)
• Consiste em uma rotina de pesquisa e acesso a um banco de dados
– é executada no servidor
– é um gateway
– faz a pesquisa baseado nas palavras chaves que o usuário fornecer
– gera página dinâmica de resposta com os links que ele achar mais importante, através da combinação do Servlet e o acesso via driver JDBC ao banco de dados SQL
Agente Mentor
![Page 29: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/29.jpg)
Agente Mentor
Banco deDadosSQL
Mentor
INTERNET
Servidor HTTP/Banco de Dados
Cliente
Processo de execução do agente Mentor
jdbcServlet
Página de resposta
MentorDinâmico
Página de entrada
PesquisaMapa
Mapa Gráfico do
Curso
MentorDinâmico
![Page 30: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/30.jpg)
Cliente solicita a página de pesquisa
Servidor retorna a página ao cliente
Cliente submete a página
Servidor recebe a página form e inicia a rotina de pesquisa
Rotina de pesquisa executa a pesquisa
Rotina de pesquisa determina o que
deverá ser pesquisado
Rotina de pesquisa compõe o resultado em
uma páginas HML
Servidor retorna a página ao cliente
Cliente mostra a página
Fluxo de dados no sistema de pesquisa do agente Mentor
![Page 31: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/31.jpg)
Cliente WWW
• Fundamental importância no sistema
• Qualquer browser que aceita entrada de texto e mostra a ação de um button
• Existem duas páginas web primárias através da qual o usuário interagi:– um simples form de entrada de texto
– resposta da consulta produzida pelo servidor
![Page 32: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/32.jpg)
Execução do agente crawler
![Page 33: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/33.jpg)
Execução do agente crawler
![Page 34: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/34.jpg)
Valores após a indexação pelo Crawler
CURSOS LC % UC % TP FPUC FPLC TPA
Sist. Operac. 100 100 47922 3034 1 10719
Sist. Operac. 70 70 47922 257 25 4018
Mat. Financ. 100 100 3506 222 1 534
Mat. Financ. 70 70 3506 76 8 122
Mic. Course 100 100 1472 93 1 727
Mic. Course 70 70 1472 23 5 295
Dir. Tribut. 100 100 3173 159 1 804
Dir. Tribut. 70 70 3173 49 7 98
Ling. Portug. 100 100 3038 159 1 1159
Ling. Portug. 70 70 3038 51 6 64
Rac. Lógico 100 100 2042 143 1 463
Rac. Lógico 70 70 2042 67 6 64
Cont. Geral 100 100 2855 184 1 656
Cont. Geral 70 70 2855 55 7 85
Dir. Constit. 100 100 2461 156 1 610
Dir. Constit. 70 70 2461 52 6 96
![Page 35: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/35.jpg)
Pesquisar
Http://java.icmc.sc.usp.br/Search?curso=Micro+Course
![Page 36: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/36.jpg)
Execução do agente Mentor - Pesquisa
![Page 37: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/37.jpg)
Execução do agente Mentor - Mápa de Navegação
![Page 38: Gerador Automático de Arquivos HTML de Ajuda para Aplicação em Educação a Distância (GAAHA) Paulo Sérgio Salla Sá Orientação: Prof. Dr. Dilvan de Abreu](https://reader036.vdocuments.com.br/reader036/viewer/2022081518/552fc133497959413d8d784d/html5/thumbnails/38.jpg)
Conclusão