• Nenhum resultado encontrado

6   Modelo Proposto – RHA 111

6.10   Modelo de Banco de Dados 144

Toda a modelagem, em UWE, realizada para a análise e definição do RHA foi implementada utilizando um banco de dados para prover a persistência dos dados. Foi realizado o mapeamento do diagrama apresentado na figura 49 e o projeto de banco de dados, apresentado sob forma de diagrama entidade relacionamento na figura 50, foi gerado.

É importante notar que as classes definidas no diagrama de classe foram mapeadas para tabelas no modelo apresentado na figura 50. Esse diagrama representa as princpais tabelas geradas depois de aplicadas às regras de normalização (SILBERSCHATZ, 1999) específicas da fase de projeto do Banco de Dados.

O projeto lógico do Banco de Dados é apresentado no modelo da figura 50 e segue as normas da área de Banco de Dados em sua representação lógica (HEUSER, 2000). As regiões destacadas em verde são as que foram inseridas com base no modelo RHA. As demais tabelas foram projetadas tomando como referência o modelo de Munich nativo.

A relevância da utilização do projeto lógico de Banco de Dados está na ênfase em transformar os conceitos apresentados no diagrama UWE (figura 49) em um modelo que define como os dados serão armazenados e, por conseqüência, como o banco de dados será desenvolvimento em um Sistema Gerenciador de Banco de Dados (SGBD) específico (HEUSER, 2000). Nesta pesquisa, foi adotado o SGBD MySQL para a implementação.

Figura 50. Projeto Lógico de Banco de Dados do RHA.

Para tornar o projeto claro e dar destaque às tabelas e aos seus relacionamentos, foram suprimidos os atributos e apenas apresentadas as chaves (primárias e estrangeiras). Uma chave é o conceito básico para identificar linhas e estabelecer relações entre linhas de tabelas de um banco de dados (HEUSER, 2000).

No projeto de Banco de Dados apresentado são utilizados dois tipos de chaves: primárias e secundárias. Uma chave primária é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela (HEUSER, 2000) (SILBERSCHATZ, 1999). Uma chave estrangeira, designada na figura 50 pelos caracteres (FK), é uma coluna ou combinação de colunas cujos valores aparecem necessariamente na chave primária de outra tabela. A chave estrangeira é o mecanismo que permite a implementação de relacionamentos em um banco de dados (HEUSER, 2000).

Por exemplo, a tabela “Avaliacao”, no projeto lógico, possui duas chaves, uma primária, denominada idAvaliacao, que identifica cada uma das avaliações realizadas no ambiente virtual, e uma chave estrangeira, Dominio_idDominio, que relaciona cada uma das avaliações a um dos domínios do ambiente virtual adaptativo.

Os relacionamentos possuem indicação de multiplicidades que denotam o número de ocorrência dos elementos das tabelas. O relacionamento entre as tabelas Sondagem_Inicial e estilo_cognitivo indica que uma sondagem inicial possui pelo menos um estilo cognitivo; porém, um estilo cognitivo pode ocorrer em uma ou várias sondagens iniciais. A ligação denotada pela flecha preta negritada determina a herança entre duas tabelas.

6.10.1 Atributos Relevantes

Os atributos do usuário podem ser classificados em três grupos diferentes: atributos relacionados com os conhecimentos do domínio, relacionados com conhecimento geral (ou

background) e outros atributos que descrevem as preferências, tarefas e metas do usuário.

Para os propósitos de modelagem, Koch (2000) considerou suficiente dois grupos de atributos relativos ao modelo de usuário: “conhecimento do usuário relacionado com os componentes do domínio” e “características gerais do usuário”. Os dois grupos estão representados no diagrama de classes do modelo de usuário (figura 47), apesar de não se relacionarem diretamente com o RHA, são de fundamental importância para as adaptações e, também, para o processo de retroalimentação.

O primeiro grupo inclui os atributos dependentes do domínio, enquanto que os atributos do segundo grupo são considerados independentes do domínio. O segundo grupo também inclui conhecimentos não relacionados com os componentes do domínio, como o conhecimento de background. Assim, são denominados atributos dependentes e atributos independentes e são tratados de forma separada no modelo de Munich (KOCH, 2000), mas são representados e implementados em conjunto no AHAM (DE BRA, 1999).

Os atributos dependentes geralmente são relacionados com um componente do domínio da hipermídia. Exemplos de atributos dependentes são (KOCH, 2000):

• Conhecimento: Indica quanto o usuário conhece sobre o conteúdo do componente;

• Experiência: Designa práticas anteriores do usuário que podem ser úteis na adaptação, tais como: experiência com computador, experiência em navegar na

Web, etc.;

• Leitura: Informa se o usuário leu ou não algo sobre o conteúdo do componente. Em sistemas baseados na Web, é usado para mostrar a visualização dos links de

páginas visitadas e não visitadas (geralmente cor azul e violeta respectivamente);

• Tempo Decorrido: Mostra quanto tempo decorreu desde que o usuário leu o conteúdo, para determinar se ele pode ter esquecido ou não o que aprendeu; • Resolvido: Mostra se a resposta do usuário para a questão ou o exercício

formulado está correta;

• Pronto-para-ler: Indica quando o usuário está pronto para ler sobre um determinado tópico/componente do domínio, etc.

Alguns exemplos de atributos que são independentes do domínio são:

• Meta: Indica o tipo de meta do usuário, como pesquisa, aprendizado ou exercícios;

• Imagem: Indica se o conteúdo será apresentado usando ou não imagens;

• Exemplo: Mostra se o conteúdo será apresentado ao usuário com ou sem materiais de exemplos;

• Experiência: Designa práticas anteriores do usuário que podem ser úteis na adaptação, tais como: experiência com computador, experiência em navegar na

Web, etc.;

• Linguagem: Indica o idioma escolhido para apresentação do conteúdo, como: inglês, francês ou grego.

Se existirem atributos independentes do domínio, então, se tem um modelo de usuário independente do domínio. A vantagem desse formato de modelo de usuário é que ele poderá ser utilizado por diferentes aplicações.

Os valores dos atributos independentes ou dependentes do domínio podem ser representados por (KOCH, 2000):

• Boolean: valor lógico que indica verdadeiro ou falso, que significa dizer se o usuário conhece ou não um determinado tópico ou conceito do domínio, ou que o usuário possui ou não uma determinada preferência;

• Discreto: expresso por um conjunto pequeno de valores como: “não sei”, “aprendendo”, “aprenderei”, “saberei”, ou valores como 1 para “alto”, 2 para “mediano” e 3 para “baixo”. Ou até “s” para “exercícios-resolvidos”, “r” para “exercício-lido”, “f” para “exercício-errado”, e assim por diante;

Alguns atributos que estão contemplados no processo de desenvolvimento do modelo RHA merecem destaque. A seleção de atributos do usuário que são importantes para o modelo RHA segue listada abaixo (KOCH, 2000):

• Conhecimento: Indica quanto o usuário conhece sobre o conteúdo do componente;

• Exemplo: Mostra se o conteúdo será apresentado ao usuário com ou sem materiais de exemplos;

• Experiência: Designa práticas anteriores do usuário que podem ser úteis na adaptação, tais como: experiência com computador, experiência em navegar na

Web, etc.;

• Imagem: Indica se o conteúdo será apresentado usando ou não imagens;

• Leitura: Informa se o usuário leu ou não algo sobre o conteúdo do componente. Em sistemas baseados na Web, é usado para mostrar a visualização dos links de páginas visitadas e não visitadas (geralmente cor azul e violeta respectivamente);

• Meta: Indica o tipo de meta do usuário, como pesquisa, aprendizado ou exercícios;

• Resolvido: Mostra se a resposta do usuário para a questão ou o exercício formulado está correta;

• Som: Indica se o conteúdo será apresentado usando ou não sons;

• Tempo Decorrido: Mostra quanto tempo decorreu desde que o usuário leu o conteúdo, para determinar se ele pode ter esquecido ou não o que aprendeu. • Tempo Máximo de Inatividade: Informa o tempo máximo que o usuário pode

ficar sem interagir com o sistema (clique do mouse ou entrada de dados) até que o sistema realize automaticamente, por decurso de prazo, uma interação sem atualizar o modelo do usuário.

Os atributos acima listados são utilizados no processo de retroalimentação proposto no RHA e são descritos na simulação do modelo RHA no capítulo 7.