• Nenhum resultado encontrado

2 Conhecimento e Aprendizagem

5 Modelagem do ambiente

6.1 Diagramas do projeto da aplicação

O projeto é onde a abstração das funcionalidades do ambiente dá o seu primeiro passo em direção à realidade do software. A atividade principal do projeto é refinar o modelo de análise para que possa ser implementado com os componentes que obedecem às regras da arquitetura.

Para representar essa etapa, optou-se por utilizar uma notação estendida da UML para web, a WAE (Web Application Extension) (CONALLEN, 2003). Uma extensão da UML é expressa principalmente em termo de estereótipo, que é um mecanismo de extensibilidade da UML que amplia o vocabulário da linguagem, permitindo a criação de novos elementos que são derivados dos já existentes, mas específicos a determinados problemas (BOOCH et al., 2000:31). Optou-se pela utilização da WAE, além da UML, pelo fato que a WAE propõe-se a trazer mais representatividade aos modelos, cujo fim seja representação de sistemas para web.

A Tabela 12 apresenta os estereótipos utilizados nesta dissertação. Tabela 12 Estereótipos da WAE Estereótipo Correspondente no meta-modelo UML Descrição

Classe É uma página HTML que contém um elemento de conjunto de quadros (frames). Essa página divide a interface em regiões verticais e/ou horizontais.

Classe É uma tela estereotipada como classe.

Classe Representa uma página web dinâmica que contém

o conteúdo agrupado no servidor sempre que é solicitado.

Classe É uma página web formatada em HTML com uma mistura de dados, apresentação e possivelmente um pouco de lógica de negócios.

Classe É uma coleção de campos de entrada que são parte de uma página do cliente.

<<link> Associação É um relacionamento entre uma página cliente e um recurso do lado do servidor ou página web. O objetivo pode ser uma classe web client page ou

web server page.

<<build>> Associação É um relacionamento entre uma página de servidor e uma de cliente. Identifica a saída HTML de uma execução da página do servidor.

<<submit>> Associação É um relacionamento direcional entre um <<HTML form>> e uma página do servidor.

<<redirect>> Associação É um relacionamento direcional entre uma página do cliente ou página do servidor à outra página.

Para representar a estrutura da aplicação na fase de projeto, foram feitos vários diagramas de classes que serão mostrados nas figuras a seguir.

Figura 48. Diagrama de classes de projeto

A tela principal é construída através de quadros (Figura 48). Um deles consiste em uma página estática com um texto de apresentação ao método. O outro quadro é composto por uma página dinâmica responsável pelo processo de login no ambiente.

Após a identificação, a aplicação chama a página servidora correspondente ao perfil do usuário, por exemplo, a tela principal do professor que depois redireciona para as de coordenação, colaboração ou comunicação.

Figura 49. Diagrama de classes "Coordenação Professor - Preparação" - visão projeto

As classes de projeto da etapa de preparação, acompanhamento e finalização foram estruturadas da seguinte forma: uma página servidora que possui a lógica de negócios é chamada e cria a página cliente para ser exibida no navegador do usuário. As páginas da coordenação foram concebidas para interagir com o usuário a partir de formulários. Por exemplo, no caso da criação da sessão (Figura 49), o professor preenche o formulário (SessaoForm) com os dados e submete para a página servidora (GestaoSessaoServer) que trata a solicitação e realiza a inclusão da sessão no banco de dados.

A gestão dos grupos Jigsaw e especialistas também incorporam a criação dos componentes dos grupos, como pode ser visto na Figura 49 através das páginas servidoras ComponenteJigsawServer e ComponenteEspecServer.

Figura 50. Diagrama de classes "Coordenação Professor - Acompanhamento" - visão projeto

O diagrama da Figura 50 apresenta as classes da fase de acompanhamento, que engloba as funcionalidades de manipulação da agenda, através da inclusão de atividades por um formulário (AgendaProfessorForm); consulta aos grupos, que é realizada através da seleção do grupo que se deseja consultar no formulário

OpcaoGrupoForm; consulta aos log, que são exibidos em uma página cliente (LogClient); consulta a participação no repositório de arquivos e acessos ao ambiente.

Figura 51. Diagrama de classes "Coordenação Professor - Finalização" - visão projeto

A particularidade no diagrama de classes da etapa de finalização (Figura 51) é o processo de backup que é realizado pela página servidora BackupSessaoServer. As demais funcionalidades seguem o padrão já descrito.

A Figura 52 mostra a estrutura de coordenação disponível para o aluno. As funcionalidades expressas através da lógica de negócios das páginas servidoras, como a AgendaAlunoServer, GruposAlunosServer ou NotaGrupoServer, consistem basicamente na apresentação de consultas para os alunos em páginas clientes.

Figura 52. Diagrama de classes "Coordenação Aluno" - visão projeto

O diagrama da Figura 53 corresponde à estrutura de classes do chat. Primeiramente é chamada a página servidora (ChatAtivosServer) e dependendo da opção do usuário, a aplicação passa o controle para uma das seguintes páginas: CriarChatServer, AgendarChatServer e AbrirChatServer.

Por último é apresentado o diagrama do repositório de arquivos (Figura 54). O repositório é composto das páginas servidoras: MostrarRepositorioServer, UploadServer, PastasServer e ManutencaoPastasServer. O processo de upload é realizado pela UploadServer que recebe o arquivo através do preenchimento do formulário (UploadForm). As páginas PastasServer e ManutençãoPastasServer trabalham em conjunto para tratar da exibição, inclusão, alteração e exclusão de pastas no repositório.

Figura 54. Diagrama de classes do repositório - visão projeto

Através desses diagramas procurou-se demonstrar como as classes de análise seriam representadas sob uma perspectiva de projeto de uma aplicação Web, com a intenção de dar a base para que a estrutura da aplicação pudesse ser definida.