Situação 3

Grupo: 

Armando 
Carlos D
Jefferson
Márcio
M. Graças
Valmir


1. Funcionalidades
   ---------------

        (a). identificar aluno, para recuperar seu perfil (curso, histórico, 
             tópico corrente);
        (b). selecão do material de acordo com o perfil do aluno;
        (c). composição e disponibilização do material adequado ao aluno;
        (d). assume-se que o material é dividido em módulos e que ao final de
             cada módulo é feito um mini-teste para permitir ao sistema definir
             novos materiais a serem eventualmente disponibilizados ao aluno;
        (e). manter o acompanhamento do acesso do aluno ao material, bem como
             de anotações e comentários deste;


2. Mecanismos Genéricos de Programação 
   -----------------------------------


        1. Funcionalidade (a): mecanismos comuns de consulta a um servidor de
           banco de dados  em ambientes distribuídos;

        2. Funcionalidade (b): mecanismos de consulta a banco de dados com
           métodos de IA e tomada de decisão, para definir o conjunto de
           materiais mais adequado que deverá ser disponibilizado ao aluno.
           Este conjunto será enviado ao computador do aluno (cliente) 
           para viabilizar as funcionalidades (c), (d) e (e);

        3. Funcionalidades (c,d,e): Recebido o conjunto de materiais, a
           composicão destes e posterior apresentação ao aluno é
           processada localmente no computador do aluno. Assim, é
           necessário um mecanismo de programacão que permita o controle de
           migracão de objetos e da consistência entre objetos no servidor
           e no cliente (controle de versões). Mecanismos para persistência
           destes objetos no cliente também são desejáveis. Tais mecanismos
           estão presentes, em maior ou menor grau, em linguagens de
           programação orientadas a objetos ou em linguagens para
           manipulação de BDOO (banco de dados orientados a objetos).


3. Mecanismos suportados na WEB
   ----------------------------

        Nas categorias 1, 2 e 3 da seção anterior, podemos escolher as
seguintes tecnologias WEB que podem ser usadas como mecanismos de
programação:

        1. CGI. A funcionalidade (a) é simples e não exige poder de
           processamento maior do aquele oferecido por scripts CGI;

        2. SERVLETS. A ativação de uma consulta em um BD do servidor, em que
           deverão ser utilizadas técnicas não-convencionais como IA, implica em um
           mecanismo mais poderoso que CGI. O mecanismo de Servlets surge
           como solucão neste caso, pois permite um processamento mais
           otimizado e, por ser baseado em JAVA, uma linguagem orientada a
           objetos, pode ser mais adequada a integração com ferramentas de
           tomada de decisão; 

        3. CASTANET + SERVLETS. O controle de versões entre servidor e cliente
           e a possibilidade de alteração de dados localmente (gravação 
           em arquivos ou BD's) nos leva a concluir que estas tecnologias 
           WEB são mais adequadas para implementar as funcionalidades (c),
           (d) e (e).


4. Conclusões
   ----------

        Applets JAVA e quaisquer soluções baseadas nestes parecem ser uma
boa alternativa para solucionar situações em que o processamento de dados
pelo cliente em um ambiente WEB é necessário. Falta no entanto, um
mecanismo adequado e padronizado para implementar persistência de objetos
do lado do cliente, consistentes com os objetos do lado do servidor.


ricarte@dca.fee.unicamp.br

Last modified: Tue Apr 28 11:38:43 BRA 1998