Tópicos em Engenharia de Computação V

FORMATOS DE DOCUMENTOS NA WEB

Professores: Léo Pini Magalhães e Ivan Luiz Marques Ricarte

Relatores: Marcia de Fátima Pimenta e Márcio Vieira Soares

 


  Introdução 
  Funcionalidade do ambiente "Curso sob medida + Prova virtual" 
  Arquitetura do Ambiente 
  Aspectos de Implementação com HTML / WWW 
  Aspectos de Implementação em XML / WWW (futuro) 
  Conclusão 
  Bibliografia 

 


Introdução
 

    Este documento tem como finalidade o desenvolvimento de um cenário onde será criada uma disciplina que deverá ser ministrada em vários cursos, sendo específica para cada um deles.

    A avaliação será feita via "Prova Virtual".

    Os tópicos usados para o desenvolvimento deste cenário serão descritos abaixo, através dos seguintes temas:
     

    1. Funcionalidade do Ambiente – "Curso sob medida + Prova Virtual"
    2. Arquitetura do Ambiente
    3. Aspectos de Implementação em HTML/WWW (hoje)
    4. Aspectos de Implementação em XML/WWW (futuro)

    Segue-se abaixo a terminologia utilizada neste documento.

    Unidade: Faculdade ou Instituto que faz parte da Universidade

    Curso: Conjunto de conhecimentos que visa a formação profissional do aluno na área específica desejada.

    Disciplina: Menor sub-divisão do curso, visando a organização e estruturação do conhecimento, de forma didática.

    Diferentes visões: o termo diferentes visões será utilizado com o significado de personalização do enfoque dado ao assunto, isto é adequação do assunto ao perfil do usuário.

    CGI Scripts: Programas em Common Gateway Interface acionados na chamada de páginas HTML por servidores HTTP.

    Hiperdocs principais: são páginas HTML que, em pontos específicos, possuem referências a hiperdocs dependentes do contexto, de forma que no momento da apresentação do hiperdoc final forneça a VISÃO do hiperdoc adequada ao ator que a visualiza. As referências ao hiperdoc específico deverão ser feitas através de CGI Scripts;

    XML: Conjunto de instruções do SGML, que implementa algumas características inexistentes no HTML, tais como extensibilidade, estruturação e validação dos dados.
     

    Extensibilidade permite a criação de novos tags, permitindo a personalização do documento
    Estruturação permite a criação de grandes estruturas de dados e hierarquias de objetos
    Validação de  dados permite testar a integridade dos dados na importação

    TAG: formatador de instrução das linguagens derivadas do SGML.

    SQL: Strutured Query Language - Linguagem que estrutura o formato de pesquisa em banco de dados.
     


Funcionalidade do Ambiente "Curso sob medida + Prova virtual"
 


 Arquitetura do Ambiente

Para o desenvolvimento da arquitetura do ambiente, se faz necessário um Browser que deverá ser utilizado para consulta do material pelos alunos, para resolução das provas e para avaliação das mesmas pelo instrutor.

O Servidor Web deverá estar disponível para aceitar as requisições dos clientes (instrutor e aluno), suportando todo tipo requerido de acesso às informações.

A base de dados deve ser heterogênea, distribuída e transparente para o cliente.

Como a aplicação será usada por vários institutos distintos dentro da Universidade, os dados estarão distribuídos nos diferentes servidores de cada unidade.

Os servidores de Banco de Dados deverão armazenar todas as informações para os clientes, como exemplo a bibliografia, as provas realizadas pelos alunos, dentre outros.

Mecanismos de busca (agentes "inteligentes") serão necessários para montagem das provas de acordo com o grau e curso do aluno, na montagem das matérias disponíveis nas disciplinas, de acordo com o curso referente tais como cálculo para: engenharia, química, análise de sistemas,etc.

Ferramentas de apoio como calculadoras, editores gráficos, também deverão estar disponíveis ao acesso dos alunos na resolução das questões propostas.
 


 Aspectos de Implementação com HTML / WWW

Os aspectos de implementação abordados se baseiam nas discussões sobre a funcionalidade do sistema e
sobre a arquitetura do mesmo, ocorrido na plenária sobre XML.

Infra-estrutura:

No primeiro instante deverá ser feito o cadastramento do ator com os seguintes dados: RA, nível de acesso, senha, disciplina, perfil, que ficarão armazenados em um banco de dados do servidor.

Estarão armazenados em bancos de dados, centralizados ou não, os materiais referentes às disciplinas: (provas, exercícios, notas de aula, hiperdocs principais, hiperdocs específicos de cada perfil ou contexto).

Funções:

Identificação do ator para acessar o material do curso, feita através de HTML forms, com informações autenticadas no servidor;

Hiperdocs principais são páginas HTML que, em pontos específicos, possuem referências a hiperdocs dependentes do contexto, de forma que no momento da apresentação do hiperdoc final forneça a VISÃO do hiperdoc adequada ao ator que a visualiza. As referências ao hiperdoc específico deverão ser feitas através de CGI Scripts;

Estes scripts CGI devem ser concebidos de forma a consultar o banco de dados pelos hiperdocs específicos, levando em conta o PERFIL associado ao ator;

Todo hiperdoc deve ter um link para permitir a entrada de ANOTAÇÕES do ator (via HTML forms). Estas anotações devem ser armazenadas como páginas HTML na área de trabalho do ator;

Todo hiperdoc deve ter um link para permitir a entrada de DÚVIDAS do ator (via HTML forms). Estas anotações devem ser armazenadas no banco de dados do servidor, para formar um conjunto de FAQ's, a ser analisado e compilado pelos autores ou instrutores, que devem ter uma ferramenta auxiliar de manipulação do BD para fazer consultas e manipulações nos dados;

As atividades práticas (exercícios, provas, trabalhos, etc.) estão armazenadas em duas bases de dados. A primeira contém os enunciados existentes com os seguintes parâmetros: enunciado de questão, perfil, identificação do enunciado, disciplina, resposta correta (não acessível por alunos).

A segunda base de dados contém a especificação do exercício contendo: identificação do exercício, identificação dos enunciados que compõem o exercício, tempo máximo para resolução do exercício (expresso em minutos, dias ou data), permissão para interrupção de tempo de resolução.

Existe ainda uma terceira base de dados que armazena: identificação do aluno, resposta do aluno, tempo gasto para responder e nota.

Quando um aluno consulta o exercício, são apresentadas a ele as questões associadas ao exercício, de acordo com o seu perfil.

As questões são apresentadas utilizando-se applets Java, de forma que o controle de tempo possa ser feito localmente e de modo seguro.

A permissão para interrupção indica se o aluno pode interromper a resolução ou se, uma vez iniciada a resolução do exercício, ele deve resolvê-lo sem interrupção.

Em cada questão, o aluno sinaliza o término da resposta. O applet então contabiliza o tempo, e envia resposta da questão e tempo de volta ao servidor.

Quando o aluno finaliza todas as questões, ou se ele sinaliza que terminou a prova, o applet deve coletar todas as respostas que não foram enviadas, juntamente com o tempo gasto na resolução.

Estes dados serão armazenados em uma base de dados associada ao aluno. Assim, na página apresentada ao aluno, existem elementos para sinalizar final de resolução e interrupção de resolução (se assim for permitido).

Ao aluno é permitido escolher a ordem e seqüência das questões a ser resolvidas.

O applet java deve ser feito de forma que, ao findar o tempo de resolução, o aluno é avisado, e a página é fechada sendo os dados enviados ao servidor.

Quando o aluno finaliza a prova, ele recebe de volta uma página com a cópia do gabarito como foi armazenado no servidor, com o tempo total de resolução. Isto serve como comprovante para o aluno.

A correção da prova pode ser automática ou não, dependendo do tipo de questão apresentada. Cabe ao servidor ter implementada alguma ferramenta do tipo.

Qualquer página apresentada ao ator envolve uma consulta a um banco de dados, implica na página uma referência a um script CGI ou (no caso de exercícios) a execução de um applet Java. A linguagem HTML oferece os recursos básicos de formatação e referência a links, mas a necessidade de composição de documentos em um só (visão) somente pode ser provida por CGI.

Aspectos de Implementação em XML / WWW (futuro)

A atividade de co-autoria (planejamento e preparação do material pelos instrutores) poderá ser facilitada, uma vez que XML suporta a criação de TAGs, tendo assim uma linguagem markup adequada as necessidades dos autores e podendo-se assim, com estes TAGs, criar diferentes níveis de profundidade ou diferentes abordagens para o mesmo tema.

O acesso a informações em base de dados distintas (heterogêneas) pode ser implementado com o XML sem necessidade de existir, por exemplo, scripts CGI; pois no próprio documento você pode ter comandos de acesso aos banco de dados (comandos SQL embutidos no documento XML). Isto facilitaria tanto a identificação do aluno, como a busca de "informações" que irão compor o documento.

Um exemplo de sintaxe do XML seria:
 

<!ELEMENT group (document *)> 
<!ATTLIST group 
xml:link CDATA #FIXED "group" 
steps CDATA #IMPLIED\> 
<!ELEMENT document EMPTY> 
<!ATTLIST document 
xml:link CDATA #FIXED "document" 
%locator.att;> 

A personalização das "informações" que serão exibidas aos usuários pode ser obtida através da especialização dos LINKS e do recurso de transclusão (este recurso permite a construção on line do documento, com o uso de links internos a ele sendo incorporados como um único documento), isto é, a informação que será exibida depende do curso em que o aluno pertence (Engenharia Elétrica, Química, etc.).

A utilização de links multidirecionais melhoraria o resultado da busca da informação, uma vez que permitiria buscas  também multidirecionais.

Observe a implementação abaixo:
 

<!ENTITY % remote-resource-semantics.att 
"role CDATA #IMPLIED 
title CDATA #IMPLIED 
show (embed|replace|new) #IMPLIED 
actuate (auto|user) #IMPLIED 
behavior CDATA #IMPLIED"> 

É possível implementar então o papel do recurso, o título do recurso e as políticas e comportamento a serem usadas quando percorrendo esses recursos.

As provas também serão personalizadas e levarão em consideração o critério tempo, com uma variável da questão ou da prova, sendo que um agente poderá utilizar esta informação para invalidar a questão ou a prova caso o aluno tenha excedido seu tempo.

Outro item também relacionado a prova será a validação da questão, que poderá ser realizada no próprio cliente, sem ter a necessidade de se enviar os dados para serem validados num servidor via CGI.
 


Conclusão

O assunto aplicação de tecnologias WEB na educação está em grande discussão no momento. Boa parte dele relacionado com o "ensino à distância", o qual pode ser apresentado hoje como a grande saída para a popularização do ensino. Outro aspecto, é o do "ensino personalizado", onde o aluno poderia adaptar a disciplina às suas necessidades e suas próprias características de aprendizado.

Este assunto tem sido apresentado e discutido em congressos (XXV-COBENGE Congresso Brasileiro de Ensino de Engenharia - 97-Salvador - BA), assim como cogitado pelo MEC (Lei das Diretrizes e Bases 9394/96 de 20 de Dezembro de 1996). A implantação de um sistema que viabilize esta aplicação, é o objeto dos desejos dos profissionais da área de educação há vários anos.

A definição do cenário, dos requisitos necessários a este tipo de aplicação, e das técnicas didáticas a serem implementadas consiste, ainda, em objetos de pesquisas em todo o mundo.

Dentro da aplicação proposta, a implementação em HTML se mostra de dificil execução, devido, principalmente às suas características de confecção de páginas estáticas, necessitando de programação externa (CGI script ou Java script) para se conseguir dinamismo. 

A viabilização deste projeto poderia, até certo ponto, ser facilitado com o uso das características do XML, assim que estabelecido o cenário principal. A permissão de criação de novos TAGs e atributos, a possibilidade de aninhamento de documentos em qualquer nível de complexidade e de definição da gramática e semântica existentes no XML, por sua vez, nos daria a liberdade de adequar e mesmo de criar documentos dinamicamente.

Algo que precisa ser ainda pensado é "como generalizar a ferramenta de construção da disciplina, de forma a adequar as técnicas didáticas preferidas dos autores/instrutores? ".
 


Bibliografia

Extensible Markup Language (XML) 1.0
Tim Bray, Jean Paoli, C. M. Sperberg-McQueen (Eds.)
REC-xml-19980210, The World Wide Web Consortium, 1998

Produção de documentos para a World-Wide Web
Ivan Luiz Marques Ricarte
Apostila de curso, DCA/FEEC/UNICAMP, 1997.

XML, Java, and the future of the Web
Jon Bosak
Sun Microsystems, Last revised 1997.03.10

LDB - 9394/96
Ministério da Educação e Cultura - MEC

Anais do XXV COBENGE
XXV Congresso Brasileiro de Ensino de Engenharia - Salvador - BA - 1997