• No results found

Os recursos do ambiente virtual estão disponíveis para os usuários através do CIERV (descrito na Seção 4.4.2), que se conecta diretamente ao RM. Essa aplicação cliente faz uso

de uma interface gráfica tridimensional (GUI) (Figura 6.8, diagrama de classes no Anexo C) para a realização de todo o processo de geração e apresentação do mundo virtual.

O modelo de CVE utilizado neste estudo de caso é Desktop Virtual Reality19, e o gerenciamento dos elementos gráficos do ambiente virtual é feito através do motor gráfico CRAbGE (Maia, 2003). O CRAbGE é um motor gráfico aberto, portável e extensível, voltado para aplicações de realidade virtual e particularmente para jogos. Também visando ser portável, o CIERV foi implementado com a linguagem C++ utilizando a biblioteca gráfica wxWidgets (wxWidgets, 2005) para construção de sua interface gráfica. A comunicação do CIERV com os WebServices GPS e FM é feita através do pacote gSOAP (gSOAP, 2005). Esse pacote foi desenvolvido para permitir que aplicações clientes que utilizem a linguagem C/C++ se comuniquem via SOAP (Box et al., 2000) com Web

Services. Já a comunicação do CIERV com o RM é feita através de um cliente do

protocolo PASSÁRGADa 2.0 que utiliza a biblioteca ENet. Por último, a leitura e a escrita dos arquivos XML (descritores de mundos virtuais e objetos) são realizadas pela biblioteca TinyXML (TinyXML, 2005).

A seguir serão apresentados os cenários mais relevantes da implementação do CIERV para o estudo de caso proposto. Esses cenários estão relacionados com os apresentados na Seção 4.5.1 Cenários de Utilização.

Figura 6.8. Tela do Cliente de Interação e Edição em RV (CIERV).

Cenário 1: Conectando ao GPS

Dos seis usuários deste estudo de caso apenas cinco irão entrar no ambiente virtual da cozinha: Lia, João, Pedro, Carlos e Lúcia. Marcos, o administrador do sistema, não participará da interação. Para ter acesso ao ambiente, todos esses cinco usuários deverão acessar antes o GPS para se autenticarem (Figura 6.9).

Figura 6.9. Tela de autenticação do CIERV com o GPS.

Cenário 2: Conectando a um Mundo Virtual

Após ser autenticado pelo GPS, cada um dos usuários recebe uma lista personalizada de mundos virtuais que estão disponíveis para ele. Por exemplo, Lia e João possuem listas de mundos virtuais diferentes, veja Figura 6.10. Entre esses mundos virtuais está o ambiente da cozinha utilizada neste estudo de caso.

Figura 6.10. À esquerda, tela com a lista de mundos do usuário Lia, e a direita, tela com a lista de mundos do usuário João.

Cenário 3: Inserindo Tarefas

Lia, a editora do ambiente, tem a responsabilidade de analisar o ambiente virtual e definir as tarefas que serão necessárias para atingir o objetivo, que é construção da cozinha seguindo as especificações descritas no curso de Boas Práticas. Além de definir as tarefas, ela também é responsável por definir as dependências temporais dessas tarefas. Os tipos de dependências utilizadas neste estudo de caso foram quatro: ‘antes de’, ‘depois de’, ‘durante’ e ‘ao mesmo tempo’. Os tipos ‘antes de’ ou ‘depois de’ são restrições que definem que uma tarefa só pode começar, ou antes, ou depois de outra tarefa, respectivamente. O tipo de dependência ‘durante’ define que uma tarefa deve começar depois de outra tarefa começar e antes desta terminar. O tipo ‘ao mesmo tempo’ define que duas tarefas devem começar e terminar no mesmo instante. As tarefas estão disponíveis no CIERV em uma árvore, que define tarefas e subtarefas. A partir dessa árvore, o usuário poderá modificar as informações de uma tarefa, como nome, responsável, dependências e estado (veja Figura 6.11). As tarefas deste estudo de caso e suas dependências estão definidas na Tabela 21.

Tabela 21. Lista de tarefas e suas dependências

Tarefas Tarefas dependentes Tipo de

dependência Tarefa 1. Dispor móveis Distribuir eletrodomésticos

Distribuir eletroportáteis

antes de antes de Tarefa 2. Distribuir eletrodomésticos Dispor móveis

Distribuir eletroportáteis ao mesmo tempo depois de Tarefa 3. Distribuir eletroportáteis Dispor móveis

Distribuir eletrodomésticos ao mesmo tempo depois de Tarefa 4. Colocar utensílios domésticos Distribuir eletrodomésticos

Distribuir eletroportáteis

depois de durante Subtarefa 4.1. Colocar prataria e

panelas

Colocar material de limpeza

depois de Subtarefa 4.2. Colocar material de

limpeza

Colocar prataria e panelas antes de

Figura 6.11. À esquerda, tela de criação de tarefas, à direita, tela de inserção de dependências.

Cenário 4: Montando a Hierarquia de Grupos

Todos os usuários que entram pela primeira vez em um ambiente virtual em edição têm o papel no trabalho colaborativo de espectador, com exceção do editor desse ambiente que tem o papel de coordenador geral. Assim, neste estudo de caso, à medida que os usuários

vão entrando no ambiente como espectadores, a coordenadora geral Lia vai atribuindo papéis a cada um deles. Inicialmente, Lia atribuiu o papel de colaborador a Pedro e a Carlos e o papel de coordenador a João, tendo como seus subordinados Pedro e Carlos. Lúcia, que entrou por último, ficou como espectadora. A hierarquia de grupo é disponibilizada no CIERV através de uma árvore, a partir da qual, os coordenadores poderão atribuir tarefas a usuários, e criar ou mudar a formação de grupos (veja Figura 6.12).

Figura 6.12. À esquerda, a tela com informações sobre o usuário Lia, coordenador geral. À direita, a tela com informações sobre subcoordenador João.

Cenário 5: Inserindo e Manipulando Objetos

Para que os usuários consigam atingir o objetivo de montar o ambiente virtual da cozinha, eles precisam inserir e manipular objetos nesse ambiente. Para isso, o CIERV disponibiliza uma biblioteca de objetos e um conjunto de ferramentas para manipular esses objetos (Figura 6.13).

Com a biblioteca e as ferramentas, os usuários presentes no ambiente poderão realizar as tarefas de sua responsabilidade. Por exemplo, João é responsável pela tarefa de distribuir eletrodomésticos. Assim, com os modelos de eletrodomésticos presentes na biblioteca e as ferramentas de manipulação, ele poderá concluir essa tarefa. Entretanto, ele

geladeira ao lado de um fogão, por exemplo). Ao concluir a tarefa, João deverá atualizar o estado da tarefa para “concluída” (Figura 6.11).

No final, quando todas as tarefas estiverem concluídas, Lia irá avaliar o trabalho realizado por seus companheiros, analisando e mostrando os erros cometidos por cada um deles. Em uma outra abordagem, ela avisa que o usuário cometeu erros, e dá uma chance para que ele os corrija, não prejudicando, assim, os outros usuários, já que as tarefas são dependentes.

Figura 6.13. Biblioteca de objetos para o estudo de caso.