• Nenhum resultado encontrado

Modelo de Infra-estrutura para Interoperabilidade MASSAYO-IM

Esta seção descreve a arquitetura proposta com o intuito de garantir interoperabilidade entre ambientes Educacionais baseados na Web Semântica. A construção desta

arquitetura e a implementação de ambientes educacionais com vistas a permitir interoperabilidade é uma tarefa complexa e lenta [Dicheva and Aroyo, 2004b]. Por esta razão, a aplicação foi decomposta para reduzir a complexidade, permitindo a interação entre estes ambientes, tanto com a mesma infra-estrutura quanto com diferentes infra-estruturas. Com isso, esta arquitetura enfatiza dois aspectos. Primeiro, ela garante a integração de diversos ambientes educacionais baseados nas tecnologias da Web semântica. Segundo, ela provê um caminho para escalar os ambientes educacionais disponíveis através do uso de repositórios de ontologias e para estender os recursos de interoperabilidade através do uso de serviços Web semânticos. A Figura 4.29 apresenta a arquitetura proposta e seus componentes.

Figura 4.29: Arquitetura para suportar interoperabilidade entre ambientes educacionais.

A arquitetura representa uma extensão da arquitetura proposta em [Dicheva and Aroyo, 2004a]15. A idéia foi prover uma arquitetura de implementação descrevendo as

tecnologias e como cada uma delas foram utilizadas. A descrição de cada componente 15A arquitetura proposta por [Dicheva and Aroyo, 2004a] é uma arquitetura conceitual. Além disso, o

presente nesta arquitetura é provida nas subseções que seguem.

4.3.1

Repositório de Ontologias

O repositório de ontologias possui as instâncias da ontologia de aplicação descrita na Subseção 4.2.1, garantindo que os ambientes sejam registrados de forma corrente. Com isso, a partir do momento em que ambientes necessitem interagir com outros ambientes, os serviços farão uso do repositório de ontologias para descobrir tais ambientes.

4.3.2

Servidor para Interoperabilidade

O servidor para interoperabidade é responsável por prover os serviços Web semânticos de modo a garantir tanto o registro do ambiente educacional bem como o algoritmo de descoberta capaz de comunicar com outros. Além disso, o Servidor tem como objetivo disponibilizar recursos que maximizem a capacidade do mesmo de descobrir novos ambientes. Os serviços presentes são descritos como seguem:

• RegisterService: o mesmo é responsável por registrar o seu ambiente educacional para ser usado no futuro, como histórico. Como resultado, os parâmetros de saída do serviço são identificados (ID) como ambiente educacional;

• ConnectService: este serviço permite que o ambiente conecte-se ao servidor. Como resultado, os parâmetros de saída do serviço é um Boolean informando se o registro foi feito bem sucedido ou não;

• RequestService: este serviço é usado pelo ambiente para solicitar ajuda externa aos ambientes educacionais. Em outras palavras, este serviço indica quais ambientes educacionais estão disponíveis para interoperar. Este serviço recebe o nome de um serviço como uma entrada (e.g. Recommend) e retorna a tripla < entity, protocol, hostEntity, service, inputService, outputService>;

• MatchingEnvironmentService: este serviço é o mais complexo por que este algoritmo é responsável pela descoberta de ambientes disponíveis para interoperar e que atende aos requisitos do ambiente educacional solicitante. A complexidade

está na necessidade de avaliar diversos conceitos em busca do agente mais similar para a descoberta. Com isso, os parâmetros utilizados para verificar a similaridade são: environmentId, serviceName, input, output e category. Cada parâmetro tem um peso diferente, onde os mais importantes para o cálculo são category e input. Com isso, o cálculo é feito através da utilização da fórmula do cosseno [Baeza-Yates and Ribeiro-Neto, 2005].

4.3.3

Ambientes Educacionais

Os ambientes educacionais são entidades que podem ser registradas para interoperar. Apesar dos repositórios da ontologia manterem todas as instâncias descritas por um ambiente, a comunicação com os ambientes acontece através da utilização de serviços Web semânticos. Estes ambientes educacionais podem ser configurados e implementados de modo a permitir interoperabilidade de forma automática com outros ambientes. Isto é possível através dos componentes providos na arquitetura e o uso dos serviços Web semânticos.

Além do mais, os ambientes educacionais invocam serviços Web semânticos em três situações:

1. Primeiro Acesso: o sistema estará disponibilizado pela primeira vez;

2. Novo acesso: o sistema registrado estava OFF-Line e passou a estar disponibilizado para interoperabilidade. Tanto o novo acesso quanto o primeiro acesso possui um fluxo de execução bastante similar, mudando apenas de acordo com o tipo de acesso que é feito. Esta sequência é mostrada na Figura 4.30.

Figura 4.30: Diagrama de Sequência descrevendo o registro e conexão do MASSAYO. Pode-se observar na Figura 4.30 que a invocação do serviço ocorre logo após a criação do agente mediador pelo agente controlador. Ou seja, quando o ambiente é iniciado, é feito o registro ou conexão do mesmo no servidor de interoperabilidade. 3. Solicitar Ajuda: o mesmo é usado quando o sistema identifica uma situação na qual é necessário interoperar com outros ambientes. O MASSAYO já possui 7 cenários (3 de recomendação e 4 de recursos educacionais) para garantir interoperabilidade entre os ambientes. Os cenários são descritos abaixo:

(a) Recomendação de agente (humano ou artificial): nestes cenários, a solicitação de recomendação ocorrerá por um agente tutor inteligente quando não consegue atender a uma solicitação do estudante de resolução de problema; (b) Mais detalhes de recurso: este cenário ocorre quando o estudante pede mais

informações sobre determinado recurso educacional e o sistema não possui o recurso no ambiente;

(c) Novo recurso: da mesma forma que o cenário anterior, quando há a requisição de um novo recurso educacional inexistente no ambiente, a solicitação é feita externa ao ambiente.

Desta forma, o agente ForBILEAgent possui um mecanismo de comunicação automática quando não atinge determinado objetivo. A vantagem disto é que qualquer extensão feita no ambiente através da adição de algum agente não altera a característica de interoperabilidade do mesmo.

Já o agente mediador possui em seu comportamento um conjunto de regras que analisa se foi feita uma solicitação para comunicação externa. O serviço semântico de busca por ambiente para interoparar retorna uma sêxtupla < agentN ame, protocol, agentHost, serviceN ame, inputs, outputs >. Estas informações são necessárias para garantir que o agente solicitante possa identificar o local que determinado agente se encontra (agentN ame e agentHost) e como se comunicar com o mesmo (serviceN ame, inputs e outputs).