FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero...

87
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área de Gestão de Conhecimento por Romero Piske Rafael de Santiago, MSc. Orientador Marco Antonio Pinheiro, MSc. Co-orientador Itajaí (SC), novembro de 2009

Transcript of FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero...

Page 1: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE

Área de Gestão de Conhecimento

por

Romero Piske

Rafael de Santiago, MSc. Orientador

Marco Antonio Pinheiro, MSc.

Co-orientador

Itajaí (SC), novembro de 2009

Page 2: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE

Área de Gestão de Conhecimento

por

Romero Piske Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientador: Rafael de Santiago, MSc.

Itajaí (SC), novembro de 2009

Page 3: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

ii

AGRADECIMENTOS

Agradeço em primeiro lugar a Deus que durante toda essa caminhada iluminou o meu caminho e

me deu força de vontade para nunca desistir.

Aos meus pais, Valmir Piske e Silvana Aparecida Ferreira Piske, por toda a educação que tornaram

a pessoa que sou e por toda confiança.

Ao meu orientador Rafael de Santiago, pela orientação durante este ano de trabalho, com diversas

contribuições e cobranças que tornaram possível a realização deste trabalho.

A todas as pessoas, professores, avaliadores e amigos que de certa forma apoiaram e contribuíram

para a realização deste projeto.

Page 4: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

iii

SUMÁRIO

LISTA DE ABREVIATURAS...................................................................v

LISTA DE FIGURAS................................................................................vi

LISTA DE TABELAS..............................................................................vii

RESUMO..................................................................................................viii

ABSTRACT................................................................................................ ix

1 INTRODUÇÃO......................................................................................1 1.1 PROBLEMATIZAÇÃO ..................................................................................... 3 1.1.1 Formulação do Problema................................................................................. 3 1.1.2 Solução Proposta............................................................................................... 4 1.2 OBJETIVOS ........................................................................................................ 4 1.2.1 Objetivo Geral ................................................................................................... 4 1.2.2 Objetivos Específicos ........................................................................................ 4 1.3 METODOLOGIA................................................................................................ 4 1.4 ESTRUTURA DO TRABALHO ....................................................................... 5

2 FUNDAMENTAÇÃO TEÓRICA........................................................6 2.1 LMS ......................................................................................................................6 2.1.1 AULANET ......................................................................................................... 7 2.1.2 MOODLE .......................................................................................................... 9 2.1.3 TELEDUC ....................................................................................................... 12 2.2 GESTÃO DE CONHECIMENTO................................................................... 13 2.2.1 Ferramentas para Gestão de Conhecimento................................................ 15 2.2.2 OLAP................................................................................................................ 22 2.3 SOLUÇÕES SIMILARES................................................................................ 27 2.3.1 SAC: Sistema de Apoio a Consultas no MOODLE-IESAM....................... 27 2.3.2 MIDAS-POETA .............................................................................................. 29 2.3.3 FADA - Ferramenta de Apoio à Decisão Acadêmica .................................. 30 2.3.4 Análise dos Sistemas Similares ...................................................................... 31

3 Desenvolvimento...................................................................................34 3.1 PROJETO OLAP MOODLE........................................................................... 35 3.1.1 Análise de Requisitos ...................................................................................... 35 3.1.2 Diagramas de Casos de Uso ........................................................................... 36 3.1.3 Diagramas de Atividades................................................................................ 38 3.1.4 DICIONÁRIO DE DADOS............................................................................ 41 3.1.5 EXEMPLOS DE VISÕES POSSÍVEIS........................................................ 43 3.2 IMPLEMENTAÇÃO DO OLAP MOODLE....................... ........................... 44 3.2.1 Construindo um novo bloco ........................................................................... 44 3.2.2 API do MOODLE ........................................................................................... 46

Page 5: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

iv

3.2.3 Criação do Bloco OLAP .................................................................................47 3.2.4 Diagrama Entidade Relacional...................................................................... 51 3.3 APRESENTAÇÃO DA FERRAMENTA ....................................................... 57 3.3.1 Campos Valores............................................................................................... 57 3.3.2 Exemplo de Criação de Visão ........................................................................ 58 3.3.3 Exemplo de Utilização de uma Visão ............................................................ 64 3.4 VERIFICAÇÕES............................................................................................... 66

4 CONCLUSÕES ....................................................................................68

REFERÊNCIAS BIBLIOGRÁFICAS ...................................................70

Page 6: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

v

LISTA DE ABREVIATURAS

BI Business Intelegence CAU Colégio de Aplicação da UNIVALI DOLAP Desktop Online Analytical Processing DW Data Warehouse ER Entidade Relacional ERP Enterprise Resource Planning ETL Extraction Tranformation and Load FADA Ferramenta de Apoio a Decisão Acadêmica GIS Geographic Information System GNU General Public License HOLAP Hybrid Online Analytical Processing LMS Learning Management System L2S Laboratório de Soluções em Software MAD Modelo Analítico de Dados MOLAP Multidimensional Online Analytical processing MOODLE Modular Object-Oriented Dynamic Learning Environment NIED Núcleo de Informática Aplicada à Educação OLAP Online Analytical Processing PUC-Rio Pontifícia Universidade Católica do Rio de Janeiro RF Requisitos Funcionais RN Regras de Negócio RNF Requisitos Não Funcionais ROLAP Relational Online Processing SAC Sistema de Apoio a Consultas SQL Structured Query Language TCC Trabalho de Conclusão de Curso UML Unified Modeling Language UNICAMP Universidade Estadual de Campinas UNIVALI Universidade do Vale do Itajaí WOLAP Web Online Analytical Processing

Page 7: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

vi

LISTA DE FIGURAS

Figura 1. Componentes de um LMS ....................................................................................................7 Figura 2. Interface do Professor no AulaNet........................................................................................8 Figura 3. Ambiente de uma turma no MOODLE da UNIVALI ........................................................10 Figura 4. Ambiente de uma turma no Teleduc...................................................................................12 Figura 5. Ciclo básico do conhecimento ............................................................................................14 Figura 6. Arquitetura de uma solução BI ...........................................................................................16 Figura 7. Sistema completo Data Warehouse ....................................................................................19 Figura 8. Arquitetura ETL..................................................................................................................22 Figura 9. Arquitetura geral OLAP......................................................................................................24 Figura 10. Consulta no Sistema..........................................................................................................28 Figura 11. Resultado da consulta realizada........................................................................................29 Figura 12. Tela inicial do sistema ......................................................................................................30 Figura 13. Relatório de intervenções pessoais ...................................................................................31 Figura 14. Funcionamento completo da Ferramenta..........................................................................34 Figura 15. Caso de uso interação Bloco OLAP .................................................................................36 Figura 16. Diagrama de atividades Criar de Relatório.......................................................................39 Figura 17. Diagrama de atividades Consulta de relatório ..................................................................40 Figura 18. Alunos que mais acessam o MOODLE ............................................................................43 Figura 19. Cursos que mais acessam o MOODLE.............................................................................44 Figura 20. Bloco OLAP. ....................................................................................................................47 Figura 21. Diagrama de Classes.........................................................................................................48 Figura 22. Diagrama ER da Visão. ....................................................................................................52 Figura 23. Diagrama ER da Tabela Fato............................................................................................53 Figura 24. Tela de criação de Campos Valores..................................................................................57 Figura 25. Aba Informações...............................................................................................................58 Figura 26. Aba Agrupamentos. ..........................................................................................................59 Figura 27. Aba Valores. .....................................................................................................................60 Figura 28. Aba Filtros. .......................................................................................................................61 Figura 29. Aba Ordenação. ................................................................................................................62 Figura 30. Aba Usuários.....................................................................................................................63 Figura 31. Aba Finalizar.....................................................................................................................64 Figura 32. Visualização da Visão.......................................................................................................64 Figura 33. Resultado da visão. ...........................................................................................................65 Figura 34. Navegando no resultado da visão. ....................................................................................65 Figura 35. Relatório de log MOODLE...............................................................................................67 Figura 36. Query de onde os dados são utilizados para alimentação da tabela fato (parte 1 de 4). ...74 Figura 37. Query de onde os dados são utilizados para alimentação da tabela fato (parte 2 de 4). ...75 Figura 38. Query de onde os dados são utilizados para alimentação da tabela fato (parte 3 de 4). ...76 Figura 39. Query de onde os dados são utilizados para alimentação da tabela fato (parte 4 de 4). ...77

Page 8: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

vii

LISTA DE TABELAS

Tabela 1. Comparativo Sistemas Similares........................................................................................31 Tabela 2. Dicionário de Dados...........................................................................................................42 Tabela 3. Funções da API MOODLE ................................................................................................46 Tabela 4. Atributos da classe Dimensao ............................................................................................48 Tabela 5. Operações da classe Dimensao...........................................................................................49 Tabela 6. Atributos da classe Campo .................................................................................................49 Tabela 7. Operações da classe Campo ...............................................................................................49 Tabela 8. Atributos da classe Visao ...................................................................................................50 Tabela 9. Operações da classe Visao .................................................................................................50 Tabela 10. Atributos da classe CampoValor......................................................................................51 Tabela 11. Operações da classe CampoValor ....................................................................................51 Tabela 12. Relacionamentos Visão ....................................................................................................52 Tabela 13. Entidade mdl_visao ..........................................................................................................54 Tabela 14. Entidade mdl_agrupamento_visao ...................................................................................54 Tabela 15. Entidade mdl_filtros .........................................................................................................54 Tabela 16. Entidade mdl_valores .......................................................................................................55 Tabela 17. Entidade mdl_ordenacao ..................................................................................................55 Tabela 18. Entidade mdl_block_olapfato...........................................................................................56 Tabela 19. Entidade mdl_dicionario_dados .......................................................................................57 Tabela 20. Cenário de testes...............................................................................................................66

Page 9: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

viii

RESUMO

PISKE, Romero. Ferramenta OLAP para Apoio Gerencial no MOODLE. Itajaí, 2009. 87 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)–Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2009. O uso da tecnologia aliada à educação vem permitindo a aplicação de novas ferramentas no apoio ao ensino-aprendizagem. Aliada a esta perspectiva encontra-se o MOODLE, o LMS de código aberto mais utilizado no mundo. Por ser um LMS, o MOODLE registra todas as suas interações com os usuários em banco de dados. Como os relatórios existentes são de difícil compreensão, muitas destas informações ficam dispersas, ou estão acessíveis apenas por ferramentas com consultas pré-definidas dificultando a consulta em tempo real e a descoberta de informações novas e relevantes, sendo que na maioria dos casos estes relatórios ou ferramentas estão disponíveis somente aos administradores da ferramenta. Este problema motivou o desenvolvimento de um plugin OLAP para o LMS MOODLE suprindo a falta de relatórios gerencias e possibilitando a qualquer usuário a análise de forma dinâmica da grande massa de dados produzida pelo MOODLE. Neste trabalho de conclusão foi desenvolvida uma ferramenta de acesso via Web onde qualquer usuário de acordo com suas restrições pode, em tempo real, gerar relatórios dinâmicos sobre a massa de dados e obter as informações solicitadas. O diferencial deste trabalho para os já existentes é a possibilidade de qualquer usuário criar e analisar de forma dinâmica os relatórios gerados sobre a vasta massa de dados do LMS MOODLE e navegar sobre as dimensões destes relatórios. Palavras-chave: OLAP. LMS. MOODLE.

Page 10: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

ix

ABSTRACT

The combination of technology and education has been allowing the use of new tools to support teaching and learning, combined with this approach there is the MOODLE, the open source LMS most used in the world. The MOODLE, like any LMS, register all their interactions with the user in the database, this information is scattered and the existing reports do not meet the needs of real decision-makers, besides being difficult to understand the extent managers are only LMS's own tools or pre-defined queries with the query difficult in real time and the discovery of new and relevant information. This problem has motivated the proposal of an OLAP plugin for MOODLE LMS that will provide a solution for the lack of management reports and allow any user to analyze the large body of data that produces MOODLE. This project will develop a tool to access Web where any user depending on their restrictions could, in real time, generate dynamic reports on the mass of data and obtain the requested information. The difference with this project for theirs similar is the possibility of any user to create and analyze in their own dynamic reports made about the vast mass of data from the MOODLE LMS. Keywords: OLAP. LMS. MOODLE.

Page 11: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

1 INTRODUÇÃO

O uso da tecnologia aliada à educação vem permitindo a aplicação de novas ferramentas no

apoio ao ensino-aprendizagem. A popularização da Internet possibilitou novas opções de espaço e

tempo que antes não existiam na prática pedagógica. Nesta perspectiva se encontram materiais

digitais e softwares educacionais (SOARES, SÁ FILHO e MACHADO, 2003).

É fundamental que o professor conheça as possibilidades do recurso tecnológico, a fim de

utilizá-lo como instrumento para aprendizagem. No entanto, isso não significa que o professor deva

tornar-se um especialista nas ferramentas, mas é necessário conhecer suas potencialidades e saber

utilizá-las para aperfeiçoar a prática em sala de aula (MORESCHI, 2002).

Devido ao avanço e as facilidades proporcionadas pelas tecnologias de informação, diversas

instituições de ensino passaram a ofertar disciplinas e cursos de maneira virtual, algumas adotaram

aporte tecnológico às disciplinas presenciais. Um dos softwares mais utilizados neste contexto é o

LMS (Learning Management System).

Segundo Irlbeck e Mowat (2007), LMS são sistemas que simplificam a administração do

aprendizado, aceitando que os estudantes (usuários do sistema) possam planejar e monitorar sua

jornada de aprendizado. Outra característica importante dos LMS é permitir que seja possível

“rastrear” o aprendizado, isto pode auxiliar nas análises e tomadas de decisões de ensino de uma

instituição.

Um LMS auxilia a publicação de material didático e dispõe de ferramentas de interação

entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas ou culturais,

tornando possível que qualquer pessoa tenha acesso a um ambiente personalizado (MORESCHI,

2002). São exemplos de LMS: TELEDUC, MOODLE, WebAula e AulaNET.

O MOODLE (Modular Object-Oriented Dynamic Learning Environment), criado em 1999

pelo Australiano Martin Dougiamas, é o LMS gratuito muito utilizado no mundo e tem uma

proposta diferenciada: fornecer suporte para aprendizagem através da perspectiva de colaboração

online, baseando-se na pedagogia sócio construtivista. O MOODLE possui seu código aberto e

possui comunidade ativa o que acarreta em constantes atualizações. Há aproximadamente 50000

instalações do LMS MOODLE distribuídas em 206 países. O número de usuários que utilizam este

ambiente ultrapassa de 10 milhões (MOODLE, 2009). Algumas instituições de ensino que utilizam

Page 12: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

2

o MOODLE: Instituto Brasileiro de Formação Tecnológica, Universidade Federal de Minas Gerais,

Universidade Federal do Rio de Janeiro, Universidade do Rio Grande do Sul, Pontifícia

Universidade de Católica de São Paulo e Universidade do Vale do Itajaí.

O MOODLE apresenta diversos recursos importantes, dentre eles: chat, fórum, mensagens,

workshops, wiki. A possibilidade de instalação de outras ferramentas no formato de plugins que

adicionam novas funcionalidades de apoio ao aprendizado. Uma outra importante característica do

MOODLE é o registro das interações de todos os usuários (entre eles alunos e professores) no

ambiente. Essas informações são constantemente gravadas no banco de dados, o que acarreta em

uma massa de dados que pode ser utilizada para tomada de decisões.

Aliada a essa perspectiva um dos maiores desafios que as grandes empresas enfrentam (entre

elas as instituições de ensino) é o controle e o uso eficaz das informações armazenadas (MEIRA,

2004). Para que esse uso possa ocorrer de forma organizada pode ser utilizado um Data Warehouse,

que possui a função de transformar dados esparsos em informações antes inacessíveis ou

subaproveitadas, permitindo assim que sejam feitas consultas e análises mais eficazes (TAURION,

1997).

Para que sejam possíveis as consultas e análises no Data Warehouse é possível fazer uso de

ferramentas OLAP (Online Analytical Processing, do português Processamento Analítico Online)

que irão extrair e alavancar totalmente as informações nele contidas (ANZANELLO, 2002).

Ferramentas OLAP oferecerem recursos que permitem aos usuários a modelagem, análise e a

construção de apresentações visuais de grandes conjuntos de dados, incluindo atividades de geração

e resposta a consultas, análises estáticas tradicionais ou modernas, solicitação de relatórios, gráficos

sob demanda e execução dos mesmos (TURBAN, et al., 2009).

Desta forma, um Data Warehouse é utilizado para armazenar informações e o OLAP para

recuperá-las, ambos são especializados para exercer suas funções de forma eficiente. As duas

tecnologias são complementares de modo que um bom Data Warehouse é planejado com produção

de relatórios em mente (ANZANELLO, 2002).

Este trabalho de conclusão de curso tem como produto o desenvolvimento de um plugin

para o ambiente MOODLE utilizado na UNIVALI. Seu intuito é permitir análises gerenciais aos

professores, coordenadores e demais gestores através da técnica OLAP, utilizando o plugin no

Page 13: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

3

próprio LMS. Com isso, gestores educacionais da UNIVALI serão beneficiados com criação de

consultas personalizáveis. Como trabalhos similares à proposta podem ser citados:

• Trabalho de Castro, Gonçalves e Cazarini (2004): O uso do OLAP na estratégia de

vendas em uma indústria de calçados alavancando a gestão de suprimentos, onde antes

da implantação da ferramenta com os poucos relatórios que haviam na empresa a mesma

focava suas vendas apenas em poucos clientes de grande porte. Com a utilização da

tecnologia OLAP passou a existir a possibilidade da criação dinâmica de relatórios

gerencias e tomar as decisões mais precisas baseadas nos mesmos.

• Trabalho de Meira (2004): a Proposta de aplicação da Ferramenta OLAP para Data Mart

para apoiar a captação de doadores de Sangue em um Hemonucleo, onde o conceito

OLAP foi utilizado para identificar informações estratégicas de maneira ágil, precisa e

consistente, no intuito de auxiliar o processo de captação de doadores, buscando um

maior índice de aptidão e possibilitando a manutenção dos estoques de

hemocomponentes mediante a demanda.

Neste documento são apresentadas a fundamentação teórica e a descrição do

desenvolvimento do produto deste trabalho de conclusão de curso.. Até o momento da entrega deste

trabalho, apenas testes de funcionalidades foram realizados com o usuário chave. Pretende-se até a

defesa, efetuar estas verificações e descrevê-las para o volume final.

1.1 PROBLEMATIZAÇÃO

1.1.1 Formulação do Problema

Conforme a documentação do LMS MOODLE (MOODLE, 2009) o ambiente registra em

banco de dados diversas interações do usuário com o sistema, fornecendo relatórios gerenciais para

a análise, acompanhamento e rastreamento destas interações. Os relatórios existentes do MOODLE

fornecem informações importantes para professores e gestores educionais, mas são insuficientes,

permitindo poucas configurações, de modo que extrair dados torna-se uma tarefa custosa ao

usuário.

Page 14: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

4

1.1.2 Solução Proposta

Este trabalho de conclusão de curso propõe o desenvolvimento de uma ferramenta OLAP

integrada como plugin ao LMS MOODLE, possibilitando a qualquer usuário, de acordo com certas

restrições, a extração de informações sobre a massa de dados analisada, a criação de visões

personalizáveis e facilidade na extração de dados.

A UNIVALI é uma das instituições que possui o LMS MOODLE, aplicado para cursos em

Educação a Distância.Este projeto deverá beneficiar esta instituição, de modo a atender parte da

demanda por relatórios gerenciais dos gestores responsáveis.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

Desenvolver uma ferramenta OLAP para o LMS MOODLE da UNIVALI (SOPHIA).

1.2.2 Objetivos Específicos

• Investigar e descrever OLAP e conceitos relacionados;

• Investigar e descrever LMS;

• Pesquisar e analisar soluções similares;

• Pesquisar os conceitos e tecnologias necessários à implementação do sistema;

• Realizar a modelagem conceitual do sistema;

• Implementar o sistema proposto;

• Testar e avaliar a implementação do sistema; e

• Documentar o desenvolvimento e os resultados do sistema.

1.3 Metodologia

Serão necessárias cinco etapas para atingir os objetivos alçados neste trabalho de conclusão.

São elas: (1) estudo, (2) modelagem, (3) desenvolvimento, (4) validação e (5) documentação. As

etapas de estudo e de modelagem serão efetivadas no TCC I, sendo que as etapas de

desenvolvimento, validação e documentação serão efetivadas no TCC II. O plano para a execução

Page 15: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

5

das atividades contidas nessas etapas é apresentado a seguir, e assume uma dedicação média de 12

horas por semana.

A primeira etapa é pertinente a fundamentação teórica, nela foram realizadas pesquisas em

livros, periódicos, anais e sites de internet sobre os conceitos envolvidos no projeto e análise de

soluções similares a proposta;

A segunda etapa é pertinente ao desenvolvimento do produto deste TCC, após a analise de

soluções similares definiu-se as regras de negócio que contemplaram o sistema e na forma de UML

(Unified Modeling Language) foi feita sua a modelagem, baseado nesta modelagem iniciou-se a

etapa de desenvolvimento. Na conclusão desta etapa, testes e uma entrevista foram realizados com o

usuário chave da ferramenta.

1.4 Estrutura do trabalho

Este trabalho está divido em quatro capítulos, estruturados da seguinte forma:

• Introdução: faz uma descrição geral do trabalho, identificando o problema e a sua

solução, os objetivos gerais e específicos a se alcançar e a metodologia utilizada para o

trabalho;

• Fundamentação Teórica: aborda conceitos sobre LMS, Gestão do Conhecimento, BI,

OLAP, ETL e DataWarehouse. Finalizando a fundamentação teórica, são abordadas

soluções similares, que são utilizados para traçar um comparativo as soluções existentes

e a ferramenta proposta;

• Desenvolvimento: compreende na apresentação do sistema proposto, sua modelagem,

especificações, desenvolvimento, testes e sua documentação. Neste capítulo também é

apresentado o planejamento do TCC II, bem como a metodologia utilizada para seu

desenvolvimento e o cronograma. Também é apresentada a análise de riscos do sistema

proposto; e

• Conclusões: apresenta as principais contribuições do trabalho, bem como o fechamento

deste documento .

Page 16: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

2 FUNDAMENTAÇÃO TEÓRICA

Para levantar as informações necessárias ao desenvolvimento do projeto, uma pesquisa foi

realizada em livros, periódicos, artigos, anais e sites de Internet focando os objetivos do projeto. A

fundamentação teórica aborda os seguintes conceitos: Gestão de Conhecimento, LMS, OLAP, Data

Warehouse, ETL e estudo de trabalhos similares.

2.1 LMS

Segundo o IDC (2002), LMS (Learning Management System) é uma solução estratégica

para planejamento, disponibilização e gerenciamento de todos os eventos dentro de uma instituição

de ensino, incluindo cursos online, salas de aula virtuais e cursos conduzidos por instrutores. O

LMS possibilita ofertar uma sala de aula virtual para o acompanhamento dos alunos e a realização

de atividades de aprendizagem, rompendo os limites da sala de aula presencial, estabelecidos

principalmente pela distância entre alunos e professores, favorecendo a formação de comunidades

virtuais de aprendizagem.

Para Harman e Koohang (2007), LMS são softwares que automatizam a execução e a gestão

de aprendizagem, com acompanhamento dos resultados e a administração de eventos de formação,

cujo seu principal objetivo é simplificar a gestão de aprendizagem, ajudando os alunos a planejar e

monitorar seu progresso de aprendizagem.

Na Figura 1, são apresentados os componentes de um sistema LMS. A seguir cada um deles

será explicado:

• Aplicativos de Recursos Humanos: serve como repositório para a Gestão de Aluno,

fornecendo suas informações cadastrais;

• Gestão de Aluno: acompanhamento do progresso e desempenho do aluno ao longo de

todas as atividades de formação;

• Gestão de Aprendizagem: responsável por administrar, controlar e gerir a formação;

• Camada de Aprensentação: é a camada de interface com o usuário, nela é apresentada

todo conteúdo e as funcionalidades do LMS ; e

Page 17: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

7

• Conteúdos dos Usuários: são os conteúdos estudados pelo usuário ao longo de sua

formação.

Figura 1. Componentes de um LMS

Fonte: Adaptado de Harman e Koohang (2007).

O estudo do conceito de LMS é importante para este trabalho de conclusão, pois permite a

compreensão de como funcionam este tipo de sistemas. O produto deste trabalho (ferramenta

OLAP) será aplicado a um LMS, o MOODLE. Existem diversos LMS, com característica distintas.

A seguir serão apresentados os LMS: AulaNet, MOODLE e Teleduc.

2.1.1 AULANET

AulaNet é um ambiente freeware baseado numa abordagem de aprendizado colaborativo,

criado inicialmente com o objetivo de apoiar cursos à distância pela Web. Desenvolvido em 1997,

pelo grupo Groupware@LES da PUC-Rio, possui atualizações freqüentes realizadas pela EduWeb.

Atualmente, o AulaNet está na versão 3.0, sendo disponibilizado nos idiomas português, inglês e

Aplicativos de Recursos Humanos

Gestão de

Alunos

Gestão de

Aprendizagem

C o n t e ú d o d os Us u á r i o s

Camada de Apr e s e n t a ç ã o

Page 18: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

8

espanhol. Este LMS possui aproximadamente quatro mil cópias distribuídas por países como

Portugal, Brasil, Moçambique, Panamá, Canadá, Alemanha e África do Sul (EDUWEB, 2009).

O AulaNet disponibiliza as seguintes ferramentas: lista de discussão, conferências, debates,

mensagens para os participantes, agenda, notícias do curso, mecanismos de avaliação, suporte para

publicação de materiais de ensino digitais.

Na Figura 2 é exibida a interface do professor no AulaNet, nela é possível observar as

principais funcionalidades (agenda, bibliografia, exercícios, fóruns e materiais) disponibilizadas

para ministrar uma aula no ambiente.

Figura 2. Interface do Professor no AulaNet

Fonte: LUCENA, et al.(1999).

Page 19: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

9

O sistema foi desenvolvido em Java, possuindo suporte aos servidores Web: IIS (Internet

Information Service), da Microsoft, e Apache, da Apache, tendo suporte nativo ao Banco de Dados

(BD) Access, da Microsoft, com possibilidade de migração para qualquer outra plataforma de BD.

2.1.2 MOODLE

O MOODLE (Modular Object Oriented Dynamic Learning Environment) é um LMS

baseado em tecnologias para a Internet, distribuído livremente, com código-fonte aberto (licença

GNU General Public License) desenvolvido pelo australiano Martin Dougiamas, em 1999

(MOODLE, 2009).

Na Figura 3, o ambiente de uma turma do MOODLE utilizado na UNIVALI (chamado de

Sophia) é exibido. As principais ferramentas do MOODLE podem ser divididas em duas partes:

blocos ou atividades. As atividades (destacadas no espaço central da figura) estão relacionadas

diretamente com o conteúdo abordado nas aulas. Estas são geralmente disponibilizadas na forma de

materiais digitais de ensino ou recursos de interação com o professor ou colega. Os blocos

(visualizados próximo a margem esquerda da figura, como por exemplo: administração e

mensagens), são ferramentas que apóiam a interação do usuário com o ambiente.

Page 20: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

10

ATIVIDADES

Figura 3. Ambiente de uma turma no MOODLE da UNIVALI

Fonte: UNIVALI (2009a).

Como qualquer outro LMS, o MOODLE dispõe de um conjunto de ferramentas que podem

ser selecionadas pelo professor de acordo com seus objetivos pedagógicos. O MOODLE permite

que estes mecanismos sejam oferecidos ao aluno de forma flexível, ou seja, o professor, além de ter

liberdade para definir a disposição dos recursos e atividades na interface. Conforme documentação

do site oficial do MOODLE (MOODLE, 2009), dentre estas ferramentas destacam-se :

• Link para Arquivo ou Site: é possível compartilhar links para sites e também

disponibilizar qualquer tipo de arquivo no MOODLE, podendo o mesmo ser utilizado

como um repositório de arquivos ou sites, centralizando todo o conteúdo de aula em um

único local;

• Fóruns: são listas de discussão que podem contribuir significativamente para o êxito da

comunicação e construção de uma comunidade em um ambiente;

• Blogs: no MOODLE cada usuário tem seu próprio Website(blog). Por padrão, todos os

usuários tem permissão para visualizar os demais blogs. O acesso ao blog pode ser

Page 21: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

11

limitado de modo que os usuários só poderão acessar blogs compartilhados de um curso

ou compartilhados em grupo.

• Chats: permite aos participantes ter uma discussão em tempo real através da Web. Esta é

uma maneira útil para obter um entendimento diferente do tema a ser discutido;

• Questionários: permite ao professor criar e configurar testes que consiste em perguntas,

de múltipla escolha, verdadeiro ou falso, e perguntas objetivas. Sendo essas perguntas

armazenadas no banco de perguntas da disciplina podendo ser re-utilizadas dentro dos

demais cursos. Os questionários podem permitir várias tentativas. Cada tentativa é

avaliada automaticamente e o professor pode escolher se quer dar feedback e/ou mostrar

as respostas corretas para o aluno; e

• Wiki: é uma coleção de documentos colaborados através da Web. Basicamente, um wiki

é uma página criada por vários os alunos. Sem precisar saber HTML, um aluno começa

com uma página inicial, cada aluno pode acrescentar outras páginas a esta, simplesmente

criando um link para uma outra página. O Wiki pode ser considerado uma poderosa

ferramenta de trabalho colaborativo.

Além de disponibilizar diversas ferramentas o MOODLE também faz o controle de usuários

por perfil, ou seja, para ter acesso ao ambiente MOODLE, é necessário ter um usuário cadastrado.

Estando cadastrado no ambiente você poderá participar de diversos cursos e com perfis

diferenciados em cada um deles. Por exemplo, você pode ser aluno de um curso, ao mesmo tempo,

e com o mesmo usuário, ter o perfil de professor em uma disciplina.

O MOODLE é desenvolvido na linguagem PHP, possuindo suporte a vários tipos de banco

de dados, como por exemplo MySQL, Oracle, PostgreSQL e SQLServer. Por ser um ambiente de

código aberto, o MOODLE proporciona aos seus utilizadores a possibilidade de adaptações no

código-fonte. Além disso, o MOODLE suporta a inserção de novos componentes, denominados

como plugins, para acrescer novas funcionalidades ao ambiente.

O site oficial do MOODLE* possui uma seção de para download de plugins oficiais e os

criados por terceiros. Qualquer pessoa vinculada a comunidade MOODLE pode submeter seus

* Site oficial do MOODLE: http://www.moodle.org

Page 22: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

12

plugins, desde que este esteja de acordo com o modelo aceito (esquema de arquivos no padrão

MOODLE, linguagem PHP e utilização de funções da API) pelo MOODLE.

Por ser o LMS utilizado na UNIVALI, e com o intuito de auxiliar a gerência de ensino desta

instituição, o OLAP produto deste trabalho foi criado como um plugin, com o formato de “bloco”.

2.1.3 TELEDUC

Desenvolvido desde 1998 por pesquisadores do NIED (Núcleo de Informática Aplicada à

Educação) da UNICAMP - Universidade Estadual de Campinas, utilizando a linguagem PHP

associada ao gerenciador de banco de dados MySQL. O Teleduc possui como ferramentas de apoio

a aprendizagem suporte a diferentes materiais didáticos como textos, software, referências na

Internet, dentre outros (TELEDUC, 2009).

Na Figura 4 é exibida a tela principal do TELEDUC. Todos os recursos são acessados pelo

menu localizado a esquerda da figura. Itens que apresentam alterações recentes realizadas pelos

professores são destacados no mesmo menu. A comunicação entre os participantes é viabilizada

através de ferramentas como: correio eletrônico, grupos de discussão, mural, portfólio e bate-papo.

Figura 4. Ambiente de uma turma no Teleduc

Fonte: UNIVALI (2009b).

Page 23: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

13

Segundo o site oficial do Teleduc (TELEDUC, 2009) suas ferramentas foram desenvolvidas

de acordo com as necessidades relatadas por usuários do LMS. As principais características deste

LMS são: fácil instalação, recursos gratuitos, mais de quatro mil instituições cadastradas e

disponibilidade em português, inglês e espanhol.

O TelEduc é um software livre; que pode ser redistribuído e/ou modificado sob os termos da

GNU (General Public License).

2.2 Gestão de Conhecimento

A inteligência de negócio é a transformação metódica e consciente dos dados de qualquer

fonte de dados de modo a proporcionar a informação dirigida aos negócios e aos resultados

(BIERE, 2003). Segundo Carvalho (2000) a Gestão do Conhecimento é a área que estuda como as

organizações compreendem o próprio negocio, o que elas necessitam conhecer e como elas podem

tirar o proveito do conhecimento.

Para Pires e Becker (2007) o conhecimento deve ser visto como um ativo organizacional,

que facilita o processo de tomada de decisão melhorando a qualidade e reduzindo fatores de risco.

No entanto, apenas o conhecimento da organização não proporciona maior poder de competição

para uma organização: somente aliado à tecnologia da informação é que a gestão do conhecimento

pode proporcionar resultados expressivos. Para Tarapanoff (2001), as mudanças que vêm ocorrendo

nas organizações atualmente convergem para a quebra de um paradigma histórico e, por meio dele,

entra-se na era sociedade da informação e do conhecimento.

Na Figura 5 é exibido o clico básico para a formação do conhecimento segundo Quel

(2006). Este ciclo demonstra o caminho na formação do conhecimento e de sua interferência na

realidade ou nos eventos que o formarão. Estes eventos são as origens dos dados que, por sua

interpretação, se transformam em conhecimento. Dado é um evento ou fato em seu estado bruto e

informação é transformação deste dado em elemento significativo por meio de um processo de

organização e interpretação, o conhecimento é o elemento que permite ações efetivas e controladas

sobre a visualização e/ou composição daqueles eventos e fatos que dão origem aos dados.

Page 24: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

14

Figura 5. Ciclo básico do conhecimento

Fonte: Adaptado de Quel (2006).

O papel principal da tecnologia da informação na gestão do conhecimento é facilitar

iniciativas de gestão do conhecimento, ampliando o alcance e acelerando a velocidade de

transferência do conhecimento. Deve-se perceber a tecnologia como um instrumento capaz de

facilitar a captura, armazenamento e distribuição do conhecimento para o uso das pessoas.

Para DAVENPORT e PRUSAK (1998), o objetivo das ferramentas de Gestão do

Conhecimento é modelar parte do conhecimento das pessoas e nos documentos corporativos,

disponibilizando-o para toda a organização. Segundo CHOO (1998), as organizações podem se

tornar incapazes de usufruir de seu recurso informacional e de sua infra-estrutura de Tecnologia da

Informação, quando não desenvolvem um entendimento claro de como os processos empresariais

transformam a informação em conhecimento e o conhecimento em ação.

O estudo do conceito de Gestão de Conhecimento neste trabalho é importante, pois é

necessário o pleno entendimento de como estes sistemas funcionam e como é feita sua interação

com os usuários, para poder projetar e desenvolver um sistema que atenda a este conceito. Nas

Estado bruto EVENTOS/FATOS

Interpretação

Ciclo básico de Conhecimento

DADOS CONHECIMENTO

INFORMAÇÃO

Interferência

Aplicação

Page 25: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

15

próximas seções serão tratados os seguintes tópicos: Ferramentas para Gestão de Conhecimento, BI,

Data Warehouse, ETL e OLAP.

2.2.1 Ferramentas para Gestão de Conhecimento

Como o processo de Gestão do Conhecimento é abrangente e complexo, torna-se necessária

a utilização de tecnologias da informação, principalmente no que se refere à análise da grande

quantidade de informação que é armazenada, e para isso seja possível de ser realizado de forma

organizada utiliza-se ferramentas como BI, OLAP, Data Warehouse. Nos próximos tópicos serão

listadas as principais e mais utilizadas ferramentas que tornam possível a Gestão do Conhecimento.

2.2.1.1 BI

O BI é uma plataforma de apoio a decisões que baseia-se na transformação de dados em

informações, informações em decisões e decisões em ações, sendo que estas devem ser gerados

pelos próprios consumidores de informações e estar disponíveis a qualquer hora e em qualquer

lugar (TURBAN et al., 2009).

Barbieri (2001) define o conceito de BI como a utilização de variadas fontes de informação

para se definir estratégias de competividade nos negócios da empresa. Segundo TURBAN et al.

(2009) um dos principais objetivos do BI é facilitar a diminuição da diferença entre o desempenho

atual de uma organização e o desempenho desejado, expresso em sua missão, objetivos, metas e a

estratégia para atingi-los.

O motivo que leva as empresas atuais partir para este tipo de tecnologia é a incapacidade dos

departamentos de compartilhar dados de forma oportuna, da gerencia obter as informações

necessárias para a tomada de decisões e a ampla massa de dados provenientes de diversas fontes, o

excesso de dados sem direção, arquivados de diversas formas, oriundos de diversos meios e com

muitos erros, o grande desafio de todo indivíduo que gerencia qualquer processo é a análise dos

fatos relacionados ao seu dever. Esta análise deve ser feita de modo que, com as ferramentas e

dados disponíveis seja possível detectar as tendências e tomar decisões eficientes e no tempo

correto (SANTIAGO, 2008).

As arquiteturas de BI clássicas possuem basicamente cinco grandes componentes:

• Data Warehouse: é utilizado para armazenar informações contidas na base de dados;

Page 26: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

16

• Data Mart: é um sub-conjunto de dados do Data Warehouse, geralmente sobre algum

assunto especifico;

• ETL: é utilizado para fazer a limpeza dos dados e inseri-los no Data Warehouse;

• Data Mining: é o processo de explorar grandes quantidades de dados à procura de

padrões consistentes; e

• OLAP: é utilizado para recuperar e extrair totalmente as informações contidas no

Data Warehouse.

A Figura 6 ilustra uma arquitetura BI completa, onde diversas fontes de dados (ERP,

Planinhas e GIS) sofrem o processo de ETL, inserindo as informações novas e tratadas no Data

Warehouse, podendo assim ser consultas através de uma ferramenta OLAP qualquer.

Figura 6. Arquitetura de uma solução BI

Fonte: Adaptado de Barros (2008).

O funcionamento básico de uma solução BI é descrito a seguir: A imensa massa de dados

dispersos com vários bancos de dados, diversas tecnologias, vários documentos, é encaminha ao

processo de ETL (extração, transformação carga e sincronização) que faz sua limpeza e inserção no

Page 27: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

17

Data Warehouse onde os dados são consistidos, unificados, sumarizados e organizados em uma

base de dados multidimensional. O OLAP por sua vez é uma interface de usuário facilita o acesso e

a extração das informações, que poderão ser apresentadas em planilhas, gráficos ou em relatórios.

Santiago (2008) aponta uma desvantagem que é o custo elevado de treinamento,

implantação e desenvolvimento. Apesar disso, o autor levanta importantes vantagens na utilização

tecnologia BI são:

• Acesso à informação de qualidade que permite que as empresas conheçam melhor a

sua realidade, interna e externa, permite obter indicadores importantes para melhorar

o desempenho de sua atuação e a inovação;

• Procurar relações de causa e efeito;

• Transformar os registros obtidos em informação útil;

• Maior rapidez no acesso às informações;

• Descentralização do acesso à informação;

• Extrair e integrar dados de múltiplas fontes;

• Analisar dados contextualizados;

• Antecipar mudanças no mercado ou ações dos concorrentes;

• Uniformização da informação, e;

• Possibilidade visualizar de modo gráfico e simplificado a atividade da empresa e seu

desempenho.

O estudo do BI também é necessário por estar ligado diretamente as ferramentas necessárias

para a o desenvolvimento da gestão do conhecimento, acredita-se que a ferramenta OLAP

desenvolvida neste trabalho seja o passo inicial para um futuro sistema BI completo.

Page 28: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

18

2.2.1.2 DATA WAREHOUSE

Segundo Inmon (1997), o Data Warehouse é um repositório de dados orientado a assuntos,

volátil, integrado e variável em relação ao tempo, útil para a tomada de decisão nas empresas.

Basicamente o Data Warehouse é um sistema distinto que fornece o armazenamento para os

dados que serão utilizados na análise. A intenção é dar a gerencia a capacidade de buscar

informações sobre séries históricas que possibilitam uma melhor análise de eventos passados,

oferecendo suporte às tomadas de decisões presentes e a previsão de eventos futuros. Todos os

dados provenientes das fontes de dados operacionais da organização são integrados ao Data

Warehouse via as ferramentas ETL. As aplicações podem variar de simples relatórios a consultas

complexas. Seu principal objetivo é trabalhar com os dados usados nos sistemas de processamento

analítico online (OLAP), as possibilidades de verificação e análise dos dados são diversas, podem ir

da obtenção de vários tipos de estatísticas de venda até o recebimento de relatórios garimpados para

conhecer o comportamento e as preferências de cada cliente (TURBAN et al., 2009).

Shams e Fahista (2001) definem Data Warehouse como uma plataforma que contém todos

os dados da organização, centralizados e organizados, de forma que os usuários possam extrair

relatórios analíticos complexos, contendo informações gerenciais para apoio à decisão.

Os componentes típicos de Data Warehouse são descritos a seguir:

• Ferramentas para Extração, Transformação e Carga (ETL): para facilitar a integração

e assegurar a qualidade dos dados carregados;

• Mecanismos de interoperabilidade para fontes de dados heterogêneas;

• Sistema de gerenciamento de bancos de dados (com bom desempenho e segurança);

• Catálogo de metadados: necessário para documentar e compreender os dados e suas

transformações;

• Gerenciador de DataMarts;

• Servidor OLAP: para responder pelo processamento analítico das consultas ao Data

Warehouse, possibilitando ao usuário analisar, interativamente, conjuntos de dados

muito grandes, sem a necessidade de se escreverem instruções SQL; e

Page 29: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

19

• Gerador de interfaces cliente na Web.

A Figura 7 exibe um sistema completo de Data Warehouse, nela são ilustrados todos seus

componentes. Pode-se observar como os dados de vários Bancos de Dados são coletados,

trabalhados e transformados em dados que podem ser utilizados para análise. O processo de

aquisição pode englobar atividades como a consolidação de dados de várias fontes, filtragem de

dados não desejados, correção de dados incorretos, conversão de dados a novos elementos e reunião

de dados em novos subconjuntos. Os dados são, então, armazenados no Data Warehouse, podendo

então ser analisado por ferramentas para consultas, relatórios, seleção e análise de dados para

entrega, por meio de Intranets, usuários finais da organização, etc.

Figura 7. Sistema completo Data Warehouse

Fonte: Adaptado de O’Brien (2004).

A seguir serão apresentadas as principais características de um Data Warehouse segundo

Bombana e Agnol (2005).

Subsistema de aquisição de dados (coleta, correção,

transformação/carregamento de transporte)

Subsistema de projeto de Warehouse

Sistemas de

Informação na Web

Acesso aos Dados e Subsistema de Entrega (Consulta, Relatório, Análise, Seleção, Entrega)

Bancos de dados operacionais, externos e

outros.

Loja analítica de dados

Warehouse Empresarial

Data Marts

Subsistema de Gerenciamento

de Dados

Subsistema de Gerenciamento de Metadados

Diretório de Metadados

Repositório

de Metadados

Page 30: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

20

• Integração de dados: Uma das tarefas fundamentais na construção de um Data

Warehouse é a migração de dados de diferentes bases operacionais para uma base

analítica. É necessário que os dados sejam integrados para possibilitar o cruzamento

de dados destas aplicações;

• Aumento do desempenho nas tarefas usuais de consultas: A razão mais importante

para a separação de dados que precisam ser analisados dos dados operacionais é que

a análise dos dados nos sistemas operacionais pode causar degradação de

desempenho;

• Dados não voláteis: Os dados que são inseridos em um Data Warehouse, tornam se

em grande maioria, não voláteis. Isso significa que após a entrada dos dados no Data

Warehouse, mudanças não podem ser feitas nas informações;

• Dados armazenados por longos períodos: Dados históricos são fundamentais em um

sistema de apoio a decisão;

• Termos operacionais transformados em termos de negócio uniformes: Durante o

processo de migração de dados para um Data Warehouse, os nomes utilizados no

sistema operacional são transformados em termos de negócio uniformes, que devem

ser de fácil compreensão pelos usuários, pois serão os termos utilizados como

parâmetros da geração de consultas; e

• Visões de negócio dos dados: Muitas consultas e relatórios em um Data Warehouse

são agregações simples baseadas em parâmetros pré-definidos. Um ponto muito

importante para o Data Warehouse é a definição dos resultados (saídas) que devem

ser gerados automaticamente e periodicamente. Também deve ser permitida ao

usuário a configuração de consultas personalizadas, para cruzar e comparar dados

conforme as suas necessidades.

2.2.1.3 ETL

Segundo Gonçalves (2003) a etapa de ETL é vista como uma das mais críticas de um projeto

de Data Warehouse, uma falha no processo de carregamento do Data Warehouse pode trazer

conseqüências imprevisíveis posteriormente.

Page 31: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

21

O ETL ou ETT (Extração, Transformação e Transporte) é a parte do Data Warehouse

responsável pela extração de dados de uma ou mais fontes do sistema origem espalhados em

diversos sistemas operacionais e fontes externas, tratamento destes dados, limpeza, transformação e

carregamento no Data Warehouse.

As etapas básicas de um sistema ETL serão descritos a seguir:

• Extração: filtragem e limpeza dos dados para eliminar erros e elementos indesejados;

• Transformação: é responsável pela manipulação dos dados extraídos pela etapa anterior,

visando a integridade dos dados; e

• Carga: é a carga propriamente dita dos dados extraídos e transformados para o Data

Warehouse.

A Figura 8 exibe uma arquitetura padrão ETL. Os dados das diversas fontes sejam elas

internas ou externas são tratados, limpos e inseridos no DW através do processado de ETL.

Após todo este processo os dados podem ser analisados e consultados de maneira clara através

de uma ferramenta OLAP, por exemplo.

Page 32: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

22

Figura 8. Arquitetura ETL

Fonte: Adaptado de Fileto (2009).

2.2.2 OLAP

OLAP (Processamento Analítico Online) é uma ferramenta de Business Inteligente utilizada

para apoiar a análise de informações com o objetivo final de transformar uma grande massa dados

em informações capazes de dar suporte às decisões gerenciais de forma amigável e flexível ao

usuário e em tempo hábil, visando obter novos conhecimentos que são empregados na tomada de

decisão (THOMSEN, 2002).

As ferramentas OLAP permitem que os usuários possam navegar de forma amigável e

extrair informações de modo rápido pelo modelo dimensional, caracterizando o chamado cubo

OLAP ou hipercubo (KIMBALL, 1998; IMNON, 1997). O bom processamento de informações

sempre foi importante para a sobrevivência das organizações. A importância da informação pode

ser considerada como diferença em valor entre decisões certas e decisões erradas, onde as decisões

são baseadas nessa informação. Assim, OLAP, como qualquer outra forma de processamento de

informação precisa oferecer informações existentes, oportunas, precisas e inteligíveis.

ETL DW

SGBDs Relacionais BDs Legados Planilhas BDs Externos

SGBDs Relacionais

BDs Legados

Planilhas

BDs Externos

Page 33: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

23

O conceito OLAP proporciona as condições de análise de dados online necessárias para

responder às possíveis perguntas dos Gestores, utilizando as funcionalidades de uma ferramenta

OLAP que é caracterizada pela análise multidimensional dinâmica dos dados, apoiando os Gestores

nas suas atividades (HARRISON, 1998).

Segundo THOMSEN (2002) o OLAP é uma ferramenta muito importante no contexto

gerencial, ajudando a analisar de forma mais eficiente, a quantidade de dados crescente armazenada

pelas organizações, transformando-os em informação útil. O OLAP trabalha com dados históricos

no sentido de gerar informações e conhecimentos para analisar o negócio.

O Data Warehouse é utilizado para armazenar informações e o OLAP para recuperá-las,

ambos são especializados para exercer suas funções de forma eficiente. As duas tecnologias são

complementares de modo que um bom Data Warehouse é planejado com produção de relatórios em

mente. Desta forma, para explorar o Data Warehouse completamente é necessário o OLAP que irá

extrair e alavancar totalmente as informações nele contidas (ANZANELLO, 2002).

A Figura 9 exibe a Arquitetura geral OLAP. Nela o usuário interage com a interface OLAP,

tendo a possibilidade de selecionar alguma visão do cubo de dados dimensional. Em seguida o

servidor de interface solicita ao servidor OLAP a execução dos comandos para a geração da visão

de dados dimensionais, ao receber a solicitação o servidor OLAP realiza as consultas necessárias no

DW (os dados presentes neste DW são provenientes da etapa de ETL realizada sobre o BD

Transacional), retornando os dados dessa visão do cubo, o servidor de interface gera a visualização

tabular dos dados na tela do usuário.

Page 34: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

24

Figura 9. Arquitetura geral OLAP

Fonte: Adaptado de Soares e Santos (2007).

Em um OLAP, os usuários podem analisar diferentes dimensões de dados, como uma série

temporal de vendas em cada região e a analise de tendências. Assim, os usuários de negócios são

capazes de identificar com rapidez e facilidade as tendências de desempenho. Essa identificação é

feita com a analise de informações cíclicas e recursos gráfico. Por exemplo, os usuários podem

rapidamente isolar e identificar produtos, clientes, regiões ou outras áreas que apresentem

tendências significativas de alta ou baixa ou que constituem fonte de problemas. Permite aos

usuários criar visualizações de dados detalhados.

Como o produto desenvolvido neste trabalho de conclusão é uma ferramenta OLAP é

necessário compreender seu conceito, sendo exibido nos demais tópicos a descrição de Cubo,

Dimensões, Operadores e Tipos de OLAP.

2.2.2.1 CUBO

Segundo TURBAN et al. (2009) o Cubo de dados é usado para representar dados em

conjunto com alguma medida de interesse. Embora seja chamado de “cubo”, pode ser

bidimensional, tridimensional ou com uma dimensão superior. Cada dimensão representa algum

atributo no banco de dados, e as cédulas no cubo de dados representam medidas de interesse.

Page 35: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

25

Os cubos de dados oferecem a oportunidade de obter informações para suporte a tomada de

decisão de maneira eficiente. A analise de cubo permite as pessoas realizarem consultas através da

busca de uma serie de visualizações de relatórios, usando os recursos do OLAP, como pivot,

classificação, filtro e drill-up/drill-down, que permitem aos usuários fazer visões parciais de um

cubo de dados ou analisar um cubo usando um simples clique de mouse.

A utilização básica de um cubo é descrita a seguir:

Um banco de dados contem informações sobre operações relacionadas às vendas de

produtos (p) de uma empresa a um cliente (c) em diferentes localizações e lojas (s). O cubo de

dados formado a partir desse banco de dados é uma representação tridimensional, com cada cédula

(isto é p, c, s) do cubo representando uma combinação de valores para o produto, cliente e

localização da loja. O conteúdo de cada cédula é a contagem do numero de vezes que a combinação

de valores ocorreu junta no banco de dados. As cédulas aparecem em branco equivalem a zero. O

cubo pode ser usado, por exemplo, para acessar informações dentro do banco de dados para saber

qual loja deve receber um determinado produto para venda a fim de obter o máximo de lucro.

2.2.2.2 DIMENSÕES

O modelo de dados dimensional é o modelo específico para processamento analítico de

informação (OLAP). Três fatores são levados em consideração na multidimensionalidade:

dimensões, medidas e tempo.

A seguir são descritos alguns exemplos:

• Dimensões: alguns exemplos de dimensões são: produtos, equipe de vendas, segmentos

de mercados, unidades de negocio, localizações geográficas, canais de distribuição,

países e setores;

• Medidas: alguns exemplos: dinheiro, volume de vendas, numero de funcionários,

estoque, e lucro previsto vs. Real; e

• Tempo: diário, semanal, mensal, trimestral e anual.

Um banco de dados multidimensional é um banco de dados onde os dados são organizados

especificamente para permitir uma analise multidimensional rápida e fácil. Os dados são trazidos do

Page 36: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

26

Data Warehouse. Criar e manter esse tipo de Banco de Dados agrega custos que devem ser

comparados aos benefícios agregados

Dados brutos e concisos podem ser organizados de maneiras diferentes para análise e

apresentação. Uma maneira eficiente de fazer isso é a chamada multidimensionalidade. A maior

vantagem da multidimensionalidade é que ela permite que os dados sejam organizados como cada

gerente gosta de vê-los, e não como os analistas de sistema gostam.

Como exemplo de utilização da multidimensionalidade toma-se como base: no suporte a

decisão é feito um esforço a fim de simplificar a apresentação de informações e permitir ao usuário

alterar, de modo rápido e fácil, a estrutura das tabelas para torná-las mais expressivas ( p. ex., ao

inverter colunas e linhas, agrupar a sintetização de varias linhas e colunas, separar um conjunto de

linhas ou colunas).

2.2.2.3 OPERADORES

Os operadores OLAP são utilizados para navegar sobre as dimensões do cubo e\ou fatiar um

pedaço para uma análise mais detalhada, a seguir é listado os principais:

• Slice: Projeta valores específicos de uma dimensão (extrai uma fatia do cubo);

• Dice: São Slices consecutivos (extrai cubo menor);

• Roll-up (drill-up): sumariza dados, subindo na hierarquia de uma dimensão;

• Drill-down (roll-down): reverso de roll-up, isto é, detalha os dados, descendo na

hierarquia de uma dimensão; e

• Pivot: muda posição ou orientação da dimensões na projeção bidimensional de dados

do cubo.

2.2.2.4 TIPOS

Apesar de obedecer a uma estrutura cliente/servidor multiusuário, as ferramentas OLAP

podem ser implementadas de diversas formas, classificadas em cinco tipos (INMON, 1997):

Page 37: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

27

• MOLAP (Multidimensional OLAP): é o OLAP implementado através de um banco de

dados Multidimensional, sendo os dados organizados em um estrutura de cubos que o usuário pode

girar;

• ROLAP (Relacional OLAP): é o OLAP implementado sobre um banco de dados

relacional, o ROLAP tende a ser usado em dados que apresentam um grande numero de atributos,

onde não possam ser colocados facilmente em uma estrutura de cubos;

• HOLAP (Hibrido OLAP): é a combinação entre ROLAP e MOLAP, pegando o melhor de

ambas as categorias a escalabilidade de ROLAP e o alto desempenho do MOLAP;

• DOLAP (Desktop OLAP): são ferramentas que disparam uma consulta de uma estação

cliente para o servidor, que por sua vez retorna enviando o macro-cubo de volta, para que possa ser

analisado pelo usuário; e

• WOLAP (Web OLAP): se refere aos dados acessíveis através de um navegador.

O OLAP desenvolvido (produto deste trabalho de conclusão) se encaixa no tipo WOLAP,

pois, seu desenvolvimento foi totalmente voltado para o ambiente Web, sendo seu acesso feito

através de qualquer navegador.

2.3 SOLUÇÕES SIMILARES

Não foi encontrada nenhuma ferramenta com as mesmas funcionalidades deste projeto, as

três que mais se encaixam no objetivo de gerar consultas estratégicas para LMS serão descritas a

seguir:

2.3.1 SAC: Sistema de Apoio a Consultas no MOODLE-IESAM

Com uma interface gráfica muito atraente o sistema permite que quaisquer usuários, além

dos administradores do MOODLE realizem consultas gerenciais pré-definidas sem precisar ter

qualquer conhecimento em consultas SQL e Banco de Dados.

Na Figura 10 é ilustrada as opções disponíveis no sistema, por exemplo, a opção selecionada

“Consulta de Quantidade de Tarefas” pertence ao curso de Engenharia da Computação. Nela são

listadas todas as disciplinas cadastradas no sistema (no exemplo foi selecionada a disciplina 3º Ano

– Interface e Multimídia).

Page 38: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

28

Figura 10. Consulta no Sistema

Fonte: Gonçalves et al. (2008).

Na Figura 11 é exibido o resultado da consulta realizada anteriormente na Figura 10,

apresentando basicamente o código da disciplina cadastrada no MOODLE (495), a quantidade de

tarefas (24), possibilitando a opção de visualizar a descrição da tarefa ou exportação de todas as

tarefas da disciplina em planilha.

Page 39: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

29

Figura 11. Resultado da consulta realizada

Fonte: Gonçalves et al. (2008).

2.3.2 MIDAS-POETA

O MIDAS-POETA é um sistema de apoio à decisão que utiliza a base de dados do ambiente

de suporte a EAD denominado Portfolio-Tutor (NASCIMENTO, RODRIGUEZ e SCHIEL, 2002),

apesar de ser um sistema completo o mesmo não possui um módulo de análise que dê suporte a

decisões estratégicas. O MIDAS-POETA é baseado em mineração de dados e proporciona a criação

de MADs (Modelo Analítico de Dados), que é um conjunto de visões sobre os atributos do sistema

definidos pelo usuário em sua consulta.

O objetivo deste sistema é prover meios para obter padrões que caracterizem o

comportamento dos alunos, permitindo que as mesmos possam ser analisados, derivando padrões

comportamentais ou características interessantes que podem ser usados como parâmetros para

outros alunos.

Page 40: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

30

2.3.3 FADA - Ferramenta de Apoio à Decisão Acadêmica

A principal funcionalidade da FADA é fornecer uma visão gerencial, através da

transformação dos dados brutos contidos nas tabelas do MOODLE e logs de acessos existentes na

base de dados, em informações que possibilite ao avaliador, o planejamento e a tomada de decisões

baseados nos dados apresentados através de gráficos e relatórios estruturados de maneira organizada

e objetiva.

Na Figura 12 é exibida a tela inicial do sistema onde são visualizadas as possibilidades de

geração de gráficos cadastradas no sistema.

Figura 12. Tela inicial do sistema

Fonte: Adaptado de Nunes (2007).

A Figura 13 exibe o resultado de uma consulta selecionada pelo usuário, no exemplo é

exibido o relatório de intervenções pessoais no sistema.

Page 41: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

31

Figura 13. Relatório de intervenções pessoais

Fonte: Adaptado de Nunes (2007).

Essa intervenção consiste fundamentalmente, no monitor responsável pela disciplina entrar

em contato com o discente, a fim de verificar o motivo da ausência do mesmo, e partir disso,

estabelecer, um acompanhamento mais rigoroso do comportamento deste.

2.3.4 Análise dos Sistemas Similares

A seguir é exibida uma tabela comparativa entre os sistemas estudados, observa-se que nem

todos utilizam as tecnologias propostas nesse projeto. Todas os sistemas similares levantados foram

desenvolvidos para a Web.

Tabela 1. Comparativo Sistemas Similares.

CARACTERÍSTICA FADA SISTEMA PROPOSTO

MIDAS SAC

Voltado para o MOODLE X X X Utiliza OLAP X Possui controle por perfil X X X X

Utiliza Data WareHouse X

Desenvolvido em PHP X X X Permite ao usuário criar novas consultas X X

Relatórios em forma de gráficos X

Suporte a diversos bancos de dados X

Page 42: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

32

Conforme a Tabela 1, nem todos os sistemas analisados utilizam as tecnologias envolvidas

neste trabalho. A diferença do sistema proposto para os demais é a possibilidade de qualquer

usuário criar seus próprios relatórios utilizando as tecnologias OLAP e Data Warehouse que

proporcionam uma visão em dimensões sobre a massa de dados analisada, facilitando sua

compreensão, a descoberta de informações novas e relevantes e a possibilidade de uma análise mais

abrangente e detalhada.

Para criação da tabela analisada anteriormente foi levado em conta às seguintes condições:

• Voltado para o MOODLE: a análise deste item foi necessária, pois, o produto deste

trabalho de conclusão foi desenvolvido na forma de plugin para o LMS MOODLE;

• Utiliza OLAP : a necessidade da análise deste item deu-se pelo fato do plugin

desenvolvido ser uma ferramenta OLAP;

• Possui controle por perfil: a análise deste item deu-se pelo fato de todo controle de

segurança do plugin ser feita pelos perfis já disponibilizados no MOODLE;

• Utiliza Data Warehouse: como a utilização da tecnologia OLAP está ligada diretamente

com Data Warehouse, este item também foi analisado;

• Desenvolvido em PHP: para poder utilizar as funcionalidades da API do MOODLE é

necessário que o sistema seja desenvolvido em PHP;

• Permite ao usuário criar novas consultas: como o conceito básico de uma ferramenta

OLAP é a criação de consultas, foi necessário avaliação deste item;

• Relatórios em forma de gráficos: a análise deste item foi levada em conta porque é

desejável que um sistema OLAP atenda a este requisito; e

• Suporte a diversos bancos de dados: como o MOODLE permite a utilização de diversos

bancos de dados, este item foi analisado para o funcionamento correto do plugin em qualquer

instalação, independente da versão do banco de dados.

Baseado na Tabela 1 verificou-se que as vantagens do sistema FADA sobre a ferramenta

desenvolvida é a possibilidade de gerar de gráficos sobre os dados a analisados e sua desvantagem é

não disponibilizar a criação de novas consultas, a principal vantagem do sistema SAC é o suporte a

Page 43: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

33

diversos bancos de dados, sendo sua desvantagem a realização de apenas consultas pré cadastradas

pelo administrador da ferramenta.

Page 44: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

34

3 DESENVOLVIMENTO

Este trabalho de conclusão de curso tem como produto uma ferramenta OLAP integrada

como plugin (bloco) ao LMS MOODLE da UNIVALI, possibilitando a qualquer usuário, de acordo

com suas permissões, a criação de visões personalizáveis, o cruzamento de tabelas de maneira

gráfica e a extração de informações sobre a massa de dados analisada. Por ser uma ferramenta de

código aberto e disponibilizada na forma de plugin, todas as instituições de ensino que utilizam o

LMS MOODLE poderão instalá-lo e usufruir dos seus benefícios.

A Figura 14 exibe o fluxo completo do funcionamento da ferramenta desenvolvida. O banco

de dados do MOODLE passa pelo processo de ETL. Nesta etapa, conforme periodicidade definida

pelo administrador, é executado um script SQL (conforme ANEXO I), para atualização do DW, que

é composto por uma única tabela Fato (descrita na página 42 - Tabela 2. Dicionário de Dados). O

MOODLE por solicitação do Usuário faz acesso a estas informações através do Bloco OLAP, que

funciona como front-end da ferramenta, exibindo as visões e navegando pelas dimensões conforme

interação com o Usuário.

Figura 14. Funcionamento completo da Ferramenta.

Dentre as funcionalidades do OLAP produto deste trabalho de conclusão destaca-se: (i)

permitir a determinados usuários a criação de relatórios gerenciais; (ii ) navegação entre as visões

(drill-up e drill-down); e (iii ) descoberta de informações novas e relevantes.

A importância maior desse trabalho se dará por auxiliar a tomada de decisão dos gestores da

educação na UNIVALI. Informações antes desconhecidas poderão ser tratadas e conforme sua

análise tomada às devidas ações. Nesta seção serão abordados os seguintes tópicos: levantamento de

requisitos, casos de uso para o desenvolvimento da ferramenta, a metodologia utilizada para o

desenvolvimento, diagramas de classe, diagramas de banco de dados e apresentação da ferramenta.

Page 45: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

35

3.1 Projeto OLAP MOODLE

Para desenvolver o produto deste trabalho de conclusão, foi necessário o criação de seu

projeto. Nas próximas seções serão apresentados: Análise de Requisitos, Diagramas de Casos de

Uso, Diagramas de Atividades, Dicionário de Dados e Implementação.

3.1.1 Análise de Requisitos

Os requisitos foram levantados para estabelecer às funções indispensáveis a ferramenta

proposta. Estes requisitos especificam o que a ferramenta deve ou não fazer, e não como os

procedimentos devem ser realizados. Os itens a seguir apresentam a descrição detalhada do projeto.

3.1.1.1 Requisitos Funcionais (RF)

Requisitos funcionais especificam funções que o sistema proposto deverá contemplar, como

o sistema deve reagir a determinas situações. Os requisitos funcionais do sistema são:

• RF01: O sistema deverá permitir ao usuário criar, editar e excluir visões;

• RF02: O sistema deverá permitir Drill UP \ Drill Down (navegação entre as visões);

• RF03: Controle de perfil (dados x perfil) (coluna/registro);

• RF04: O sistema deverá permitir a possibilidade de ocultação de colunas; e

• RF05: O sistema deverá exibir as cinco visões mais acessadas pelo usuário.

3.1.1.2 Requisitos Não Funcionais (RNF)

Requisitos não funcionais definem propriedades e restrições do sistema, e não suas funções.

Os requisitos não funcionais do projeto estão listados a seguir:

• RNF01: O sistema deverá funcionar como plugin para o MOODLE;

• RNF02: O sistema deve ser orientado a Web; e

• RNF03: O sistema deve ser desenvolvido em PHP.

Page 46: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

36

3.1.1.3 Regras de Negócio (RN)

Regras de negócio especificam como o negócio funciona. As regras de negócio não são

funcionalidades do sistema, mas sim características a serem consideradas no projeto e

implementação. As regras de negocio do sistema são:

• RN01: Somente usuários cadastrados e devidamente autenticados poderão acessar o

sistema;

• RN02: Cada usuário poderá somente visualizar as visões a que tem permissão; e

• RN03: O sistema permitira ao usuário definir quem pode acessar sua visão.

3.1.2 Diagramas de Casos de Uso

Após análise dos requisitos foi possível levantar os principais casos de uso envolvidos no

desenvolvimento deste projeto. A Figura 15 apresenta os atores e os casos de uso produzidos para o

projeto da ferramenta proposta.

Figura 15. Caso de uso interação Bloco OLAP

Os atores envolvidos no projeto são o Usuário e o Moodle. O ator Usuário representa os

usuários que utilizam à ferramenta (professores e gestores). O ator Moodle representa a ferramenta

OLAP desenvolvida.

Page 47: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

37

A seguir há uma descrição dos casos de uso presentes na Figura 15: criar relatórios, executar

relatórios, modificar relatórios e excluir relatórios.

Criar Relatórios

O caso de uso criar relatórios descreve a função que permite ao Usuário através do Bloco

OLAP (plugin) o cadastro de relatórios gerenciais no LMS MOODLE. O Usuário ao informar os

dados necessários para criação de seu relatório (visão) poderá optar por gravá-la definindo um nome

para o mesma. Ao final deste processo, o relatório deverá ser criado.

Para que esta funcionalidade esteja disponível, o Usuário deverá estar logado no sistema,

possuir as permissões necessárias para execução das visões e possuir permissão de acesso aos dados

demonstrados na visão.

Executar Relatórios

O caso de uso executar relatórios descreve a função que permite ao Usuário através do

Bloco OLAP (plugin) a execução de relatórios gerenciais no LMS MOODLE. O Usuário seleciona

as dimensões e medidas que serão utilizadas em sua visão e confirma os parâmetros. Ao final deste

processo, a visão deverá ser realizada e os resultados exibidos na tela.

Para que o Usuário possa acessar esta funcionalidade, o mesmo deverá estar logado no

sistema, possuir as permissões necessárias para execução das visões e possuir permissão de acesso

aos dados demonstrados na visão.

Modificar Relatórios

O caso de uso modificar relatórios descreve a função que permite ao Usuário através do

Bloco OLAP (plugin) a modificação de relatórios gerenciais no LMS MOODLE. O Usuário

seleciona o relatório desejado e confirma os novos parâmetros. Ao final do procedimento, a visão

deverá ser modificada.

Para que esta funcionalidade esteja disponível, o Usuário deverá estar logado no sistema,

possuir as permissões necessárias para modificação e ter permissão de acesso aos dados

demonstrados na visão.

Page 48: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

38

Excluir Relatórios

O caso de uso excluir relatórios descreve a função que permite ao Usuário através do Bloco

OLAP (plugin) a exclusão de relatórios gerenciais no LMS MOODLE. O Usuário seleciona o

relatório desejado e confirma sua exclusão. Ao final deste procedimento, a visão deverá ser

excluída.

Para que esta funcionalidade esteja disponível ao Usuário, o mesmo deverá estar logado no

sistema, possuir as permissões necessárias para exclusão das visões.

3.1.3 Diagramas de Atividades

Nesta sessão são demonstrados os processos de criação e execução de relatórios no Bloco

OLAP do LMS MOODLE, através de diagramas de atividades.

Na Figura 16 é exibido o diagrama de atividades de criação de relatórios na ferramenta

OLAP, conforme descrito a seguir: O Usuário solicitará ao sistema a criação de um novo relatório.

O sistema solicitará as informações necessárias para criação de um novo relatório, onde o

preencherá as informações. O sistema validará as mesmas e encaminhará ao Data Warehouse, que

processará a visão do usuário. O Bloco OLAP solicitará a gravação da visão. Com a confirmação do

Usuário o Bloco OLAP gravará a visão.

Page 49: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

39

Figura 16. Diagrama de atividades Criar de Relatório

Na Figura 17 é exibido o diagrama de atividades de consulta a relatórios na ferramenta OLAP: o

Usuário solicitará ao Bloco OLAP a visualização de uma visão, que é encaminhada ao Data

Warehouse, que retorna as visões existentes. O Bloco OLAP exibe ao Usuário as visões existentes.

Selecionando uma delas, o Bloco OLAP encaminha a solicitação ao Data Warehouse que processa a

visão e retorna ao Bloco OLAP. A visão é exibida na tela e o Usuário a visualiza, navegando por

suas dimensões.

Page 50: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

40

Figura 17. Diagrama de atividades Consulta de relatório

Page 51: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

41

3.1.4 DICIONÁRIO DE DADOS

Após análise do banco de dados do LMS MOODLE, foi possível verificar o dicionário de

dados necessário para desenvolvimento do projeto, a Tabela 2 exibe este dicionário.

A tabela dicionário de dados é onde os campos disponíveis para criação das visões estão

cadastrados, a alimentação desta tabela é feita pelo administrador da ferramenta. A alimentação

correta desta tabela é de suma importância para o trabalho desenvolvido, a introdução errônea de

um campo a esta tabela poderá acarretar em informações destorcidas na exibição de uma visão ao

usuário.

Page 52: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

42

Tabela 2. Dicionário de Dados.

Campo Tipo Descrição Tabela MOODLE Campo Tabela id integer ID identificador do registro

cod_usuario integer Cód. Usuário m_user id

nome_usuario varchar(45) Nome m_user firstname + lastname

email_usuario varchar(60) E-mail m_user email

pais_usuario varchar(30) País m_user country

cidade_usuario varchar(30) Cidade m_user city

cod_disciplina integer Cód. Disciplina m_course id

nome_disciplina varchar(45) Disciplina m_course fullname

nome_centro varchar(20) Centro m_course_categories name

nome_campus varchar(20) Campus m_course_categories name

acesso_hora timestamp Hora Acesso m_log time

acesso_data timestamp Data Acesso m_log time

acesso_tipo varchar(15) Tipo de Acesso m_log action

acesso_recurso varchar(25) Recurso m_log module

cod_recurso varchar(25) Cod. Recurso † †

titulo_recurso varchar(60) Sumário m_resource name

tipo_usuario varchar(25) Tipo Usuário † †

semestre_disciplina varchar(8) Semestre m_course_categories name

cod_curso varchar(25) Cod. Curso m_course_categories id

nome_curso varchar(35) Curso m_course_categories name

periodo_disciplina varchar(5) Período † †

perfil_usuario varchar(25) Perfil † †

nota_recurso varchar(15) Nota Recurso † †

descricao_recurso varchar(60) Desc. Recurso † †

cod_perfil integer Cod. Perfil m_role id

desc_perfil varchar(60) Desc. Perfil m_role name

IP varchar(20) IP de Acesso m_log ip

local_acesso varchar(20) Local de Acesso † †

entrega_hora varchar(4) Hora Entrega † †

entrega_data varchar(10) Data Entrega † †

entrega_prazo varchar(10) Prazo Entrega † †

O Data Warehouse será composto somente por uma tabela Fato, onde cada campo incluso

no dicionário faz referência a um campo existente nas tabelas padrões do MOODLE. Ex: o campo

cod_usuario faz refência ao campo id da tabela m_user da base de dados do MOODLE.

Para o preenchimento da tabela Fato especificada pelo Dicionário de Dados (etapa de ETL)

será executado um procedimento de atualização periódico, definido pelo administrador de acordo

† Estes campos não foram atendidos pela carga de dados (etapa de ETL), até o final deste trabalho de conclusão.

Page 53: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

43

com as necessidades. Nesta execução, as informações atualizadas provenientes das tabelas padrões

do MOODLE serão inseridas na tabela Fato.

3.1.5 EXEMPLOS DE VISÕES POSSÍVEIS

Nesta seção serão exibidos dois exemplos práticos de visões possíveis pelo sistema

proposto. Na Figura 18 é demonstrado os alunos que mais acessam o MOODLE na instituição

UNIVALI, podendo o usuário navegar entre as dimensões: instituição, centro, curso e disciplina.

Figura 18. Alunos que mais acessam o MOODLE

Na Figura 19 é exibido os cursos que mais acessam o MOODLE na instituição UNIVALI,

podendo o usuário navegar entre as dimensões: instituição e centro.

Dimensão 1: Instituição

Dimensão 2: Centro

Dimensão 3: Curso

Dimensão 4: Disciplina

Ex: Na instituição UNIVALI, o aluno que mais acessa o MOODLE é Rodrigo Queiroz.

Ex: Na instituição UNIVALI, Centro CTTMAR o aluno que mais acessa é a Maria Freitas.

Ex: Na instituição UNIVALI, Centro CTTMAR e Curso Ciência da Computação o aluno que mais acessa é a Pedro Ferreira.

Ex: Na instituição UNIVALI, Centro CTTMAR, Curso Ciência da Computação e Disciplina Algoritmos o aluno que mais acessa é a Hugo Dallas.

Page 54: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

44

Figura 19. Cursos que mais acessam o MOODLE

Todas estas dimensões são configuráveis de acordo com a necessidade do usuário, os

exemplos acima são meramente ilustrativos.

3.2 Implementação do OLAP MOODLE

Baseado nos levantamentos feitos na etapa de projeto, fez-se a implementação do produto

deste trabalho de conclusão, nas seções a seguir serão exibidos: Construindo um novo bloco, API

do MOODLE e Criação do Bloco OLAP.

3.2.1 Construindo um novo bloco

Foi feita uma pesquisa sobre a estrutura principal do ambiente e as regras de

desenvolvimento de novos blocos. Além da documentação disponível pelo site oficial do

MOODLE, foi realizada uma análise das bibliotecas de funções oferecidas pelo ambiente. Outra

forma de aprendizado do funcionamento do ambiente foi a análise do funcionamento dos módulos e

blocos existentes, além da criação blocos de testes.

Conforme documentação para programadores do MOODLE (MOODLE, 2009), para a

criação de um novo bloco devem-se respeitar as seguintes regras:

• Todos os arquivos que compõem o bloco devem estar num diretório com um nome

que não deverá conter números ou caracteres especiais e deve ser uma palavra única

sem espaços. Esse diretório deverá ficar localizado na pasta blocks do moodle;

• Todos os arquivos de código deverão ter a extensão .php;

Dimensão 1: Instituição

Dimensão 2: Centro

Ex: Na instituição UNIVALI, o curso que mais acessa o MOODLE é Administração.

Ex: Na instituição UNIVALI, Centro CTTMAR o curso que mais acessa é Sistemas para Internet.

Page 55: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

45

• Todos os arquivos de modelo deverão ter a extensão .html;

• Todos os acessos a base de dados deverão ser feitos usando as funções que constam

do ficheiro dmllib.php existente na pasta lib do Moodle;

• Todos os textos deverão ser manuseados através das funções pré-definidas pelo

moodle (get_string() e print_string()). Assim é forçado que parte do código seja

padrão e facilite a tradução do texto para outras línguas. Estas funções buscam as

palavras chave no arquivo de língua localizado no diretório /lang do bloco. Este

arquivo tem de ter o nome do bloco seguida da extensão .php;

• O nome do bloco é definido no arquivo de língua;

• Cada arquivo de código deve incluir o arquivo config.php do moodle

require_once("../../config.php"); necessário para identificação do utilizador através

de require_login() e isadmin(), isteacher(), iscreator() ou isstudent();

• Todos os arquivos de ajuda devem ser passíveis de tradução, colocando novos

arquivos de ajuda no diretório adequado. Por ex. lang/pt-br/help;

• Todos os textos dentro do Moodle, especialmente aqueles que são provenientes de

utilizadores devem ser impressos usando a função format_text(). Isto assegura que o

texto está filtrado e devidamente limpo.

Além dos itens citados anteriormente os seguintes arquivos também são obrigatórios:

• version.php: indica a versão do módulo e é útil para posteriormente fazer upgrades.

• index.php: página que lista todas as instâncias existentes do módulo; e

• lib.php: Neste arquivo devem estar as seguintes funções. Caso seja necessário ao

bloco a utilização de uma base de dados, a pasta db deverá ser criada dentro do

diretório do bloco com os arquivos banco_utilizado.php (Ex: mysql.php, este arquivo

o bloco utiliza para fazer as atualizações na base de dados) e banco_utilizado.sql

(Ex: mysql.sql, neste arquivo estão as instruções SQL que irão criar as tabelas

utilizadas pelo bloco) referenciando ao MOODLE qual o SGBD a aplicação irá

Page 56: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

46

utilizar. Todas as tabelas deverão ter como início do nome prefix_ seguido de seu

nome. O valor de prefix é atribuído pelo MOODLE quando o SQL é executado.

3.2.2 API do MOODLE

Para a implementação de grande parte das funcionalidades do produto desenvolvido

utilizou-se funções pertencentes à API do MOODLE, sendo elas listadas e descritas a seguir:

Tabela 3. Funções da API MOODLE

Função Descrição da Função execute_sql() Função para execução de comandos SQL do tipo insert, update e delete get_record_sql() Função que retorna somente uma linha do resultado da consulta SQL get_records_sql() Função que retorna uma ou mais linhas do resultado da consulta SQL print_tabs() Função para criação de abas tabobject() Cria um novo elemento para utilização na função print_tabs()

Para não fazer acesso diretamente a base de dados do MOODLE em todas as interações do

usuário com a tela, melhorar o desempenho da aplicação, além de evitar o seu refresh (“atualizar”

do navegador) constante utilizou-se as sessions ($SESSION) que a API do MOODLE disponibiliza.

Segundo a documentação oficial do MOODLE (2009) as sessions permitem ao programador

armazenar as interações do usuário com a ferramenta e recuperá-las posteriormente em qualquer

outra página sem a necessidade de um banco de dados, as sessions são destruídas assim que o

navegador (browser) é encerrado. Tal fato é uma novidade, pois, pouco se encontrou de material ou

documentação desta funcionalidade.

Com estas funções foi possível uma implementação enxuta, sem a necessidade de criação de

conexões com o banco de dados, informar senhas e implementação de segurança, pois todas estas

funcionalidades já estão inseridas de maneira implícita nas funções disponíveis na API MOODLE.

Page 57: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

47

3.2.3 Criação do Bloco OLAP

Para criação deste bloco, foi utilizada a linguagem de programação PHP, javascript, banco

de dados ORACLE juntamente com funções existentes na API do MOODLE. O Resultado deste

desenvolvimento é exibido na Figura 20.

Figura 20. Bloco OLAP.

Conforme Figura 20, o observa-se quatro operações essências, sendo elas:

• Criar Visão: interface onde o usuário configura os campos que farão parte de sua visão,

e usuários que terão permissão para visualizá-las;

• Modificar Visão: interface onde o usuário modifica parâmetros em uma visão já criada

por ele;

• Visualizar Visão: lista as visões criadas pelo usuário e as que ele possui permissão para

execução; e

• Campos Valores: possibilita ao administrador da ferramenta criação de funções (Ex:

porcentagem) para utilização futura em visões.

A Figura 21 apresenta o Diagrama de Classe do sistema. As operações existentes nestas

quatro funções são listadas na figura, que representam Dimensão, Campo, Visão e

CampoValor. A seguir encontra-se uma discussão acerca das classes apresentadas no

diagrama.

Page 58: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

48

Figura 21. Diagrama de Classes

3.2.3.1 “Dimensao”

Classe que representa as dimensões da Visão, as tabelas 4 e 5 demonstram os atributos e as

operações respectivamente.

Tabela 4. Atributos da classe Dimensao

Atributo Descrição do Atributo listaCampos: Array Lista de campos pertencentes a dimensão da Visão valor: int Valor da dimensão

Page 59: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

49

Tabela 5. Operações da classe Dimensao

Operação Parâmetros Descrição da Operação addCampo(): void String campo Adiciona campos a lista de campos da Visão getCampo(): String String campo Retorna o campo selecionado getListaCampos(): Array Retorna um Array com os campos da lista de campos getValor(): String Retorna valor do nível Dimensao(): Dimensao Int valor Construtor da classe Dimensao remove: void String campo Remove o campo da lista de campos

3.2.3.2 Campo

Classe que representa os campos cadastrados em cada nível da Visão, as tabelas 6 e 7

demonstram os atributos e as operações respectivamente.

Tabela 6. Atributos da classe Campo

Atributo Descrição do Atributo campo: String Valor do campo descricao: String Descrição do campo id: int Id do campo tipo: Char Tipo do campo

Tabela 7. Operações da classe Campo

Operação Parâmetros Descrição da Operação Campo(): Campo Int id, String campo, String descricao, Char tipo Construtor da classe Campo getCampo(): String Retorna o campo selecionado

3.2.3.3 Visão

Classe responsável por toda criação de uma Visão, as tabelas 8 e 9 demonstram os atributos

e as operações respectivamente.

Page 60: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

50

Tabela 8. Atributos da classe Visao

Atributo Descrição do Atributo dataFinal: Date Data final para faixa na consulta dataInicial: Date Data inicial para faixa na consulta listaDimensoes: Array Lista de dimensões pertencentes a Visão listaParametros: Array Lista com as condições pertencentes a Visão nome: String Nome da Visão ordenacao: Array Lista contendo os campos pela qual a Visão é ordenada

permissoes: String Contem os usuários que possuem permissão para visualizar e executar a Visão

valores: Array Lista de campos valorados pertencentes a Visão

Tabela 9. Operações da classe Visao

Operação Parâmetros Descrição da Operação addDimensao(): void String nivel Adiciona uma nova dimensão a Visão addOrdenacao: void String campo Adiciona novos campos a lista de Ordenação addValores: void String campo Adiciona campos valorados a Visão ContNiveis(): String Retorna o numero de níveis da Visão Delete(): void Int id, String nivel Exclui o nível passado como parâmetro Edit(): void Int id, String nivel Edita o nível da Visão passado como parâmetro getCampoDescricao(): String

String campo Retorna a descrição do campo

getCampoID(): String Int id Retorna o campo conforme ID informado getCamposValores(): Array Retorna a lista de campos valorados getListaOrdenacao(): Array Retorna a lista de campos para ordenação getListaParametros(): Array Retorna a lista de campos de parâmetros getDimensao(): String String nivel Retorna se a dimensão existe

getOrdenacao(): String String campo Retorna se o campo passado como parâmetro esta na lista de ordenação

getParametros(): String String campo Retorna se o campo passado como parâmetro esta na lista de parâmetros

getValores(): String String campo Retorna se o campo passado como parâmetro esta na lista de campos valorados

MontaConsulta(): void Int id, String nivel, String condicao

Retorna o SQL da Visão para o nível informado

removeOrdenacao(): void String campo Remove o campo passado como parâmetro da lista de ordenação

removeParametros(): void String campo Remove o campo passado como parâmetro da lista de parâmetros

removeValores(): void String campo Remove o campo passado como parâmetro da lista de campos valorados

SaveDB(): void Insere todos os itens da Visão no banco de dados setDataFinal(): void Date data Seta a Data final para faixa na consulta setDataInicial(): void Date data Seta a Data Inicial para faixa na consulta setNome(): void String nome Seta o nome para a consulta Visao(): Visao Construtor da classe Visao

Page 61: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

51

3.2.3.4 CampoValor

Classe que representa as formulas feitas com os campos valorados, para utilização na Aba

Valores, as tabelas 10 e 11 demonstram os atributos e os atributos respectivamente.

Tabela 10. Atributos da classe CampoValor

Atributo Descrição do Atributo formula: String Formula que compõe a função id: int Id do CampoValor nome: String Nome do CampoValor

Tabela 11. Operações da classe CampoValor

Operação Parâmetros Descrição da Operação Save(): void Cadastra uma nova formula na tabela CampoValor Edit(): void Edita uma formula Delete(): void Exclui a formula desejada

3.2.4 Diagrama Entidade Relacional

As Figuras 22 e 23 exibem o diagrama ER do sistema desenvolvido. As próximas seções

irão descrever cada uma das tabelas presentes nestes diagramas.

Page 62: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

52

Figura 22. Diagrama ER da Visão.

A Tabela 12 descreve os relacionamentos presentes no diagrama ER da Visão.

Tabela 12. Relacionamentos Visão

Nome Descrição Relacionamento 1 Relacionamento entre mdl_visao->id e mdl_agrupamento_visao->id_visao Relacionamento 2 Relacionamento entre mdl_visao->id e mdl_filtros->id_visao Relacionamento 3 Relacionamento entre mdl_visao->id e mdl_valores->id_visao Relacionamento 4 Relacionamento entre mdl_visao->id e mdl_ordenacao->id_visao Relacionamento 5 Relacionamento entre mdl_agrupamento_visao->id_campo e mdl_dicionario_dados->id

Page 63: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

53

Figura 23. Diagrama ER da Tabela Fato.

3.2.4.1 mdl_visao

Entidade que armazena as informações principais da visão, a Tabela 13 descreve cada um

dos itens presentes nesta entidade.

Page 64: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

54

Tabela 13. Entidade mdl_visao

Chave Entidade Tipo Descrição PK Id integer Identificador da Visão nome_consulta varachar Nome da Visão dtInicial Date Data Inicial para faixa da Visão dtFinal Date Data Final para faixa da Visão criador varchar Criador da Visão permissao varchar Usuários que possuem permissão para visualizar a Visão

3.2.4.2 mdl_agrupamento_visao

Entidade que armazena os agrupamentos cadastrados na visão por seu criador, a Tabela 14

descreve cada um dos itens presentes nesta entidade.

Tabela 14. Entidade mdl_agrupamento_visao

Chave Entidade Tipo Descrição PK id integer Identificador do Agrupamento FK id_visao integer Identificador da Visão a qual o agrupamento pertence FK id_campo integer Identificador do campo pertencente ao agrupamento dimensao integer Dimensão da Visão a qual o agrupamento pertence

3.2.4.3 mdl_filtros

Entidade que armazena os filtros cadastrados na visão por seu criador, a Tabela 15 descreve

cada um dos itens presentes nesta entidade.

Tabela 15. Entidade mdl_filtros

Chave Entidade Tipo Descrição PK id integer Identificador do filtro FK id_visao integer Identificador da Visão a qual o filtro pertence filtro text Filtro da Visão

3.2.4.4 mdl_valores

Entidade que armazena os campos valorados cadastrados na visão por seu criador, a Tabela

16 descreve cada um dos itens presentes nesta entidade.

Page 65: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

55

Tabela 16. Entidade mdl_valores

Chave Entidade Tipo Descrição PK id integer Identificador dos Valores FK id_visao integer Identificador da Visão a qual os valores pertencem valor varchar Campos valorados pertencentes à Visão

3.2.4.5 mdl_ordenacao

Entidade que armazena as ordenações cadastradas na visão por seu criador, a Tabela 17

descreve cada um dos itens presentes nesta entidade.

Tabela 17. Entidade mdl_ordenacao

Chave Entidade Tipo Descrição PK id integer Identificador da ordenação FK id_visao integer Identificador da Visão a qual a ordenação pertence ordenacao text Ordenações da Visão

3.2.4.6 mdl_block_olapfato

Entidade que armazena todas as informações presentes na tabela Fato do sistema

desenvolvido, a Tabela 18 descreve cada um dos itens presentes nesta entidade.

Page 66: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

56

Tabela 18. Entidade mdl_block_olapfato

Chave Entidade Tipo Descrição PK id integer Identificador do Fato cod_usuario varchar Código do usuário nome_usuario varchar Nome do usuário email_usuario varchar E-mail do usuário pais_usuario varchar País do usuário cidade_usuario varchar Cidade do usuário cod_disciplina integer Código da disciplina nome_disciplina varchar Nome da disciplina nome_centro varchar Nome do centro nome_campus varchar Nome do campus acesso_hora varchar Hora de acesso acesso_data varchar Data de acesso acesso_tipo varchar Tipo de Acesso acesso_recurso varchar Recurso acessado cod_recurso varchar Código do recurso titulo_recurso varchar Titulo do recurso tipo_usuario varchar Tipo do usuário semestre_disciplina varchar Semestre da disciplina cod_curso varchar Código do recurso nome_curso varchar Nome do Curso periodo_disciplina varchar Período da disciplina perfil_usuario varchar Perfil do usuário nota_recurso varchar Nota do recurso descricao_recurso varchar Descrição do recurso cod_perfil integer Código do perfil desc_perfil varchar Descrição do perfil IP varchar IP de acesso local_acesso varchar Local de acesso entrega_hora varchar Hora da entrega da atividade entrega_data varchar Data da entrega da atividade entrega_prazo varchar Prazo de entrega da atividade

3.2.4.7 mdl_dicionario_dados

Tabela que armazena os campos cadastrados pelo administrador da ferramenta em seu

dicionário de dados, a Tabela 19 descreve cada um dos itens presentes nesta tabela.

Page 67: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

57

Tabela 19. Entidade mdl_dicionario_dados

Chave Entidade Tipo Descrição PK id integer Identificador do dicionário de dados campo varchar Campo pertencente ao dicionário de dados descricao varchar Descrição do campo tipo_campo varchar Tipo do campo cadastrado tipo_fato varchar Tipo do fato tipo_acesso varchar Tipo de acesso ao campo

3.3 Apresentação da Ferramenta

Nesta seção serão exibidas as principais interfaces de tela da ferramenta desenvolvida, bem

como a demonstração da visualização de uma Visão.

3.3.1 Campos Valores

A Figura 24 exibe a tela de criação de Campos Valores, esta tela permite ao administrador

da ferramenta a possibilidade de criar fórmulas a partir de campos numéricos, estas fórmulas serão

utilizadas posteriormente, na criação da visão a Aba Valores. Sem esta funcionalidade, os usuários

criadores de visões não conseguiriam inserir cálculos às visões.

Figura 24. Tela de criação de Campos Valores.

Page 68: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

58

3.3.2 Exemplo de Criação de Visão

A criação de uma visão é composta por sete etapas (informações, agrupamentos, valores,

filtros, ordenação, usuários e finalizar) as quais são demonstradas a seguir:

• Aba Informações: O usuário informará o nome de sua visão e o período inicial e final da

mesma, sendo estas informações adicionadas a condição da visão, conforme Figura 25.

;

Figura 25. Aba Informações.

• Aba Agrupamentos: Todos os campos cadastrados no dicionário de dados são exibidos

para o usuário nesta aba. Selecionando um ou mais campos na lista “Campos não

Selecionados” e clicando no botão “>>” o usuário estará adicionando estes

agrupamentos a sua visão. Caso queira remover alguém elemento adicionado o usuário

deverá selecionar na lista “Campos Selecionados” o item desejado e o botão “<<” deverá

ser acionado. Caso seja necessário a criação de uma nova dimensão basta o usuário

selecionar um novo item na caixa de seleção “Dimensões”, o processo para adicionar

novos agrupamentos é o mesmo citado anteriormente, conforme Figura 26;

Page 69: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

59

Figura 26. Aba Agrupamentos.

• Aba Valores: Todos os campos cadastrados como numérico no dicionário de dados, e

campos criados através do recurso de “Campos Valores” (vide página 57) são exibidos

nesta aba. Selecionando um campo na lista “Campos Valorados” e a função desejada

basta o usuário clicar no botão “>>” e estará adicionando este campo a sua visão,

também existe a possibilidade de informar um nome para facilitar a compreensão na

execução da visão. Caso queira remover algum elemento adicionado, o usuário deverá

selecionar na lista “Valores Selecionados” o item desejado e o botão “<<” deverá ser

acionado, conforme Figura 27;

Page 70: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

60

Figura 27. Aba Valores.

• Aba Filtros: Todos os campos cadastrados no dicionário de dados são exibidos para o

usuário nesta aba. Selecionando um campo na lista “Campos Selecionados” e a condição

e o parâmetro desejado basta o usuário clicar no botão “>>” e estará adicionando esta

condição a sua visão. Caso queira remover alguém elemento adicionado, o usuário

deverá selecionar na “Lista de Parâmetros” o item desejado e o botão “<<” deverá ser

acionado, conforme Figura 28;

Page 71: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

61

Figura 28. Aba Filtros.

• Aba Ordenação: Todos os campos cadastrados no dicionário de dados são exibidos para

o usuário nesta aba. Selecionando um campo na lista “Campos Selecionados” e o tipo de

ordenação desejada basta o usuário clicar no botão “>>” e estará adicionando este campo

a ordenação de sua visão. Caso queira remover alguém elemento adicionado, o usuário

deverá selecionar na lista “Seqüência de Ordenação” o item desejado e o botão “<<”

deverá acionado, conforme Figura 29.

Page 72: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

62

Figura 29. Aba Ordenação.

• Aba Usuários: Todos os usuários cadastrados na base de dados do MOODLE são

exibidos para o usuário nesta aba. Selecionando um usuário na lista “Usuários” basta o

usuário clicar no botão “>>” e estará adicionando este usuário para ter permissão de

visualizar sua visão. Caso queira remover alguém elemento adicionado, o usuário deverá

selecionar na lista “Permissão” o item desejado e o botão “<<” deverá acionado,

conforme Figura 30; e

Page 73: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

63

Figura 30. Aba Usuários.

• Aba Finalizar: Nesta aba é exibida a confirmação de todos os itens cadastrados nas abas

anteriores, podendo o usuário optar por sua confirmação ou cancelamento da operação,

conforme Figura 31.

Page 74: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

64

Figura 31. Aba Finalizar.

3.3.3 Exemplo de Utilização de uma Visão

Nesta seção será demonstrada a utilização básica de uma Visão criada pela ferramenta

desenvolvida.

Na Figura 32 é exibida a execução de uma visão construída na ferramenta.

Figura 32. Visualização da Visão.

Nota-se que há um componente de seleção, onde o usuário deverá seleciona a visão que

deseja realizar., neste exemplo o usuário selecionou a Visão “CIDADE=ITAJAI”, esta visão exibe

todos os usuários cadastrados no MOODLE que residem na cidade de Itajaí, ao acionar o botão

“Executar” a visão é exibida.

Page 75: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

65

O resultado desta execução é visto na Figura 33.

Figura 33. Resultado da visão.

Os cabeçalhos acima dos campos, são os filtros que permitem a navegação (drill-up e drill-

down) entre as visões, a Figura 34 demonstra o resultado quando o “Cod. Disciplina” selecionado é

igual a 911.

Figura 34. Navegando no resultado da visão.

Page 76: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

66

3.4 VERIFICAÇÕES

As funcionalidades do produto desenvolvido neste trabalho foram avaliadas junto ao usuário

chave da ferramenta Marco Antonio Pinheiro (UNIVALI VIRTUAL), que verificou que a

ferramenta beneficiará o processo de gerência no ambiente Sophia. A avaliação foi realizada no

Sistema Sophia (MOODLE versão 1.9.2 utilizado na UNIVALI) com Banco de Dados Oracle.

O cenário atual do ambiente Sophia está descrito na Tabela 20.

Tabela 20. Cenário de testes.

DESCRIÇÃO QUANTIDADE Usuários cadastrados no sistema SOPHIA 1444 Cursos cadastrados 116 Professores cadastrados 89 Tabelas no Banco de Dados 225

Após verificação das funcionalidades da ferramenta desenvolvida junto ao usuário chave foi

feito um comparativo dos relatórios padrões do MOODLE com os possibilitados pela ferramenta

desenvolvida. Verificou-se então que os relatórios padrões trazem informações do tipo: estatísticas

(estatísticas de uso do ambiente), backups (os backups que foram realizados), sumário do curso

(cursos mais ativos e cursos com maior número de inscrições recente) e logs que trazem

informações de atividades do MOODLE (recursos, chat, etc), data, participantes, cursos, ações

realizadas sobre o recurso (ver, atualizar, excluir, acrescentar).

Realizando uma análise constatou-se que os relatórios de log e os sumários do curso geram

informações semelhantes aos possibilitados pela ferramenta produto deste trabalho, mas não

possibilitam criação de novos relatórios. Outra característica importante dos relatórios do

MOODLE é que são pré-definidos, ou seja, o usuário possui poucas alternativas quanto à

flexibilidade dos relatórios.

A Figura 35 demonstra um relatório de log do MOODLE, onde são exibidas as ações do

usuário com o ambiente.

Page 77: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

67

Figura 35. Relatório de log MOODLE.

Segundo Marco Antonio Pinheiro (usuário chave do produto deste trabalho) os relatórios

padrões do MOODLE além de muito difíceis de serem gerados dão somente informações de acesso

do aluno. As visões criadas por sua solicitação (para exibição dos perfis e das ferramentas mais

acessadas por um período de tempo) e exibidas em banca são exemplos de informações gerenciais

necessárias, mas, não são disponibilizadas pelos relatórios padrões do MOODLE, estas são apenas

algumas das visões possíveis pela ferramenta desenvolvida, podendo o usuário criar diversas visões

de acordo com suas permissões e campos disponíveis no dicionário de dados.

Page 78: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

68

4 CONCLUSÕES

A utilização de ferramenta OLAP integrada ao LMS MOODLE é algo relativamente novo.

A utilização de OLAP é cada vez mais freqüente e importante nas instituições, que desejam, através

da análise de informação, encontrar ferramenta de apoio às decisões. O MOODLE é o LMS de

código aberto mais utilizado do mundo, por possuir seu código aberto proporciona o

desenvolvimento e a inclusão de novas funcionalidades ao sistema, a falta de relatórios gerenciais

desenvolvidos para a ferramenta aliado a grande massa de dados gerada em sua utilização

impulsionou o desenvolvimento do produto deste trabalho de conclusão.

Este trabalho teve como objetivo o desenvolvimento de uma ferramenta OLAP para o LMS

MOODLE da UNIVALI (SOPHIA), possibilitando aos gestores de ensino a criação de visões

dinâmicas, consequentemente auxiliando em suas tomadas de decisão.

Para o desenvolvimento correto do projeto foi necessário o cumprimento da metodologia

proposta. Sendo realizado um estudo de ferramentas similares e conceitos utilizados para o seu

desenvolvimento. Na segunda etapa, após conhecimento das soluções similares e as tecnologias

utilizadas, partiu-se para o projeto, onde foram definidas suas principais funcionalidades e na forma

de UML foi feita sua modelagem.

Na análise dos sistemas similares constatou-se que nem todos os sistemas analisados

utilizam as tecnologias envolvidas neste trabalho. A diferença do sistema desenvolvido em relação

aos demais é a possibilidade de qualquer usuário criar seus próprios relatórios utilizando as

tecnologias OLAP e Data Warehouse, que proporcionam uma visão em dimensões sobre a massa de

dados analisada, facilitando a compreensão, a descoberta de informações novas e a possibilidade de

uma análise mais abrangente e detalhada.

Baseado nos levantamentos feitos na etapa de projeto implementou-se a ferramenta. Após o

desenvolvimento, as funcionalidades da ferramenta foram validadas junto ao usuário chave Marco

Pinheiro (colaborador da UNIVALI VIRTUAL, co-orientador deste trabalho), até a apresentação da

ferramenta em banca pretende-se testar e validá-la de modo a ter uma versão mais amadurecida em

banca.

Pode-se comprovar que com a utilização da ferramenta será possível a gerência mais precisa

da utilização do sistema Sophia na modalidade de ensino a distância (UNIVALI VIRTUAL),

Page 79: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

69

permitindo a qualquer usuário, de acordo com seu perfil, a criação relatórios dinâmicos, navegação

entre suas dimensões e a clareza nas informações obtidas. Embora a ferramenta tenha esta

amplitude, o administrador do sistema pode restringir quais usuários poderão executar cada

operação na ferramenta.

Em um trabalho futuro pretende-se oferecer suporte a qualquer banco de dados, qualquer

instalação do MOODLE. Este trabalho também possibilita novas alternativas de análise das

informações presentes no Sophia, como a construção de ferramentas inteligentes para que a tomada

de decisão possa ocorrer de forma mais autônoma. Dentre estas aplicações: outras técnicas de BI,

Data Mining e outras aplicações de Inteligência Artificial.

Page 80: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

70

REFERÊNCIAS BIBLIOGRÁFICAS

ANZANELLO, Cynthia Aurora. OLAP Conceitos e Utilização. Instituto de Informática, UFRGS, Porto Alegre, 2002. Disponível em: < http://www.inf.ufrgs.br/~clesio/cmp151/cmp15120021/ >. Acesso em 20 mai. 2009.

BARBIERI, Carlos. Business Intelligence: Modelagem e Tecnologia. 1. ed. Rio de Janeiro: Axcel Books, 2001. ISBN 8573231483

BARROS, Sandro. GEO-BI : Em busca da informação correta. In: Encontro de Usuários ESRI. 2008

BIERE, Mike. Business Intelligence for the Enterprise. IBM Press, 2003. ISBN 0131413031

BOMBANA, Cheila; AGNOL, Giovani Paulo Dall. Data WareHouse: Sistema de Informações Integradas. Sistemas de Informação – Faculdade de Tecnologia, Erechim, 2005.

CARVALHO, Rodrigo Baroni. Aplicações de softwares de gestão do conhecimento: tipologia e usos. 2000. 144 f. Dissertação de Mestrado em Ciência da Computação - Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Minas Gerais, Belo Horizonte, 2000.

CASTRO, Sergio Alexandre de; GONÇALVES, Pablo Rodrigo; CAZARINI, Edson Walmir. O uso do OLAP na estratégia de vendas em uma indústria de calçados alavancando a gestão de cadeia de suprimentos. In: Encontro Nacional de Engenharia de Produção, 24., 2004, Florianópolis. Anais… Florianópolis: [s.n.], 2004

CHOO, Chun W. The Knowing Organization: How Organizations Use Information to Construct Meaning, Create Knowledge, and Make Decisions. Oxford: Oxford University Press, 1998.

DAVENPORT, Thomas H., PRUSAK, Laurence. Conhecimento Empresarial: como as organizações gerenciam o seu capital intelectual. Rio de Janeiro: Campus, 1998. ISBN 8535203524

EDUWEB. AulaNet. Disponível em: < http://www.eduweb.com.br/elearning_tecnologia.asp>. Acesso em 17 out. 2009.

FILETO, Renato. Data Warehouses: Fundamentos, Ferramentas e Tendências Atuais. Departamento de Informática e Estatística - Universidade Federal de Santa Catarina, Florianópolis, 2009

GONÇALVES, Marcio. Extração de Dados para Data Warehouse. 1. ed. Rio de Janeiro: Axcel Books, 2003. ISBN 8573231955

GONÇALVES, André Nicolau; SILVA, Aleksandra do Socorro; BRITO, Silvana Rossy; WATRIN, Vanessa. Sistema de Apoio a Consultas no Ambiente Virtual de Aprendizagem Moodle. Núcleo de Tecnologias Interativas de Aprendizagem - Instituto de Estudos Superiores da Amazônia, Belém, 2008

Page 81: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

71

HARRISON, Thomas H. Intranet Data Warehouse: Ferramentas e Técnicas para Utilização do Data Warehouse na Intranet. São Paulo: Berkeley Brasil, 1998.

IDC. Mission: Buy an LMS, 2002. Disponível em: <http://www.astd.org/LC/2002/0102_moran.htm>. Acesso em 28 mai. 2009.

INMON, W. H. Como construir o Data Warehouse. 2. ed. Rio de Janeiro: Campus, 1997. ISBN 8535201416

IRLBECK, Sonja; MOWAT, Joanne. Learning Content Management System (LCMS). In: KOOHANG, Alex; HARMAN, Keith. Learning Objects: standards, metadatas, repositories, and LCMS. Santa Rosa: Informing Science Press, 2007. p.157-184. ISBN 83-922337-5-1

KIMBALL, Ralph. Data Warehouse tool kit: técnicas para a construção de Data Warehouses dimensionais. São Paulo: Makron Books, 1998. ISBN 0471255475

KOOHANG, Alex; HARMAN, Keith. Learning Objects: standards, metadatas, repositories, and LCMS. Santa Rosa: Informing Science Press, 2007. ISBN 83-922337-5-1

LUCENA, Carlos J. P.; FUKS, Hugo; LAUFER, Carlos; BLOIS, Marcelo; CHOREN, Ricardo TORRES, Viviane. O Aulanet e as novas tecnologias de informação aplicadas à educação baseada na Web. In: VI Congresso Internacional de Educação à Distância. 1999

MEIRA, Kátia Milena Gonçalves. Proposta de aplicação da Ferramenta OLAP para Data Mart para apoiar a captação de doadores de Sangue em um Hemonucleo. In: Anais do Simpósio Brasileiro de Qualidade de Software, 3., Brasília, 2004.

MOODLE. About Moodle. Disponível em: <http://docs.moodle.org/en/About_Moodle>. Acesso em 25 abr. 2009.

MORESCHI, Maria Regina Andrade. O site – Ambiente de Aprendizagem. Revista PEC, Curitiba, v.2, n.1, p.73-81, 2002.

NASCIMENTO, Debora M.C; RODRIGUEZ, Arturo Hernandez; SCHIEL, Ulrich, Portfolio-Tutor: Um Tutor Acoplado a um Portfolio Eletrônico no contexto da Educação a Distância. In: Anais do Simpósio Brasileiro de Informática na Educação, 8., São Leopoldo, 2002. NUNES, Ana C. de Oliveira. FADA – Ferramenta de Apoio a Decisão Acadêmica. In: Congresso Internacional de Educação a Distância, 13., Curitiba, 2007.

O’BRIEN, James A. Sistemas de Informação: e as decisões gerenciais na era da internet. 2. ed. Rio de Janeiro: Saraiva, 2004. ISBN 978-85-02-04407-4

PIRES, Ana Carolina Paganella Pires; BECKER, Denise Regina. Gestão do conhecimento: Estudo de caso – PETROBRÁS. 2007. 12 f. Pontifícia Universidade Católica do Rio Grande do Sul, Porto Alegre, 2007.

QUEL, Luiz Felipe. Gestão de Conhecimento: e os desafios da complexidade nas organizações. São Paulo: Saraiva, 2006. ISBN 85-02-05865-7

Page 82: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

72

SANTIAGO, Marco. Business Intelligence: Sistema de Informação Gerencial, 2008. Disponível em: <http://www.scribd.com/doc/6778917/Bi-Apresentacao>. Acesso em 01 mai. 2009.

SHAMS K.; FAHISTA M. Data Warehousing: Toward knowledge Management, Topics in Health Information Management, v. 21, n. 3, p. 24-32, 2001.

SOARES, Miguel; SANTOS, Nuno. Aplicação OLAP com Visualização Cartográfica, 2007 Disponível em: <http://projetos.inf.ufsc.br/arquivos_projetos/projeto_823/071128%20-%20VAOC%20projetos1.pdf >. Acesso em 05 jun. 2009.

SOARES, SÁ FILHO E MACHADO. O computador como agente transformador da educação e o papel do objeto de aprendizagem. In: Seminário Nacional ABED de Educação a Distancia, 1., 2003, Belo Horizonte: ABED, 2003.

TARAPANOFF, Kira. Ciência da Informação: Inteligência organizacional e competitiva. Brasília: Editora UnB, 2001. ISSN 0100-1965

TAURION, C. Data Warehouse: Estado de Arte e Estado de Prática. Developers Magazine, ano 1, n. 6, p. 10-11, fev, 1997.

TELEDUC. O Ambiente. Disponível em: < http://www.teleduc.org.br/ >. Acesso em 10 jun. 2009.

THOMSEN, Erik. OLAP: Construindo Sistemas de Informações Multidimensionais. 2. ed. São Paulo: Campus, 2002. ISBN 8535211284

TURBAN, Efraim; SHARDA, Ramesh; ARONSON, Jay E.; KING, Davig. Business Intelligence: um enfoque gerencial para inteligência do negócio. 1. ed. Porto Alegre: Bookman, 2009. ISBN 9788577803347

UNIVALI. Sophia. Disponível em: <http://fiaiweb03.univali.br/sophia/>. Acesso em 15 mai. 2009a.

UNIVALI. TelEduc. Disponível em: <http://teleduc.univali.br/>. Acesso em 20 mai. 2009b.

Page 83: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

73

ANEXOS

Page 84: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

74

I SCRIPT ETL

As Figura 37, Figura 38, Figura 39 e Figura 39, exibidas neste anexo, representam o script

responsável pela etapa de ETL da ferramenta desenvolvida.

select

DIM_USER.ID as cod_usuario,

DIM_USER.firstname ||' '|| DIM_USER.lastname as n ome_usuario,

DIM_USER.email as email_usuario,

DIM_USER.country as pais_usuario,

DIM_USER.city as cidade_usuario,

case

when (select id from m_course where DIM_CATEGO RY.path like '/'||(select

m_in_in.id from m_course_categories m_in_in where r ownum = 1 and m_i n_in.name

like 'CURSOS J%' and rownum = 1)|| '/%' and rownum = 1) is null then '2009/2'

else ( select m_in.name from m_course_categorie s m_in where

DIM_CATEGORY.path like m_in.path || '%' and m_in.d epth = 2 )

end as semestre,

case

when (select id from m_course where DIM_CATEGO RY.path like '/'||(select

m_in_in.id from m_course_categories m_in_in where r ownum = 1 and m_in_in.name

like 'CURSOS J%' and rownum = 1)|| '/%' and rownum = 1) is null

then

( select m_i n.name from m_course_categories m_in where

rownum = 1 and DIM_CATEGORY.path like m_in. path || '%' and m_in.depth =

2 )

else

( select m_in.name from m_course_categories m _in where rownum = 1 and DIM_C ATEGORY.path like m_in.path || '%' and m_in.dep th = 3

Figura 36. Query de onde os dados são utilizados para alimentação da tabela fato (parte 1 de 4).

Page 85: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

75

) end

as campus,

case

when (select id from m_co urse where DIM_CATEGORY.path like

'/'||(select m_in_in.id from m_course_categories m_ in_in where rownum = 1 and

m_in_in.name like 'CURSOS J%' and rownum = 1)|| '/% ' and rownum = 1) is null

then

(

select m_in.name from m_course_categori es m_in where rownum

= 1 and DIM_CATEGORY.path like m_in.path || '%' and m_in.depth = 3

)

else

(

select m_in.name from m_course_categories m_i n

where rownum = 1 and DIM_CATEGO RY.path like m_in.path

|| '%'

and m_in.depth = 4

)

end

as centro,

DIM_CATEGORY.id as cod_curso,

DIM_CATEGORY.name as nome_curso,

Figura 37. Query de onde os dados são utilizados para alimentação da tabela fato (parte 2 de 4).

Page 86: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

76

DIM_COURSE.id as cod_disciplina,

DIM_COURSE.fullname as nome_disciplina,

DIM_ROLE.id as cod_perfil,

DIM_ROLE.name as desc_perfil,

DIM_LOG.ip as IP,

DIM_LOG.time as acesso_hora,

DIM_LOG.time as acesso_data,

DIM_LOG.action as acesso_tipo,

DIM_LOG.module as acesso_recurso,

case

when DIM_LOG.module = 'forum' then ( select name from M_FORUM m_in where

DIM_COURSEMODULE.instance = m_in.id )

when DIM_LOG.module = 'chat' then ( select name f rom m_chat m_in where

DIM_COURSEMODULE.instance = m_in.id )

when DIM_LOG.module = 'wiki' then ( select name f rom m_wiki m_in where

DIM_COURSEMODULE.instance = m_in.id )

when DIM_LOG.module = 'reseource' then ( select n ame from m_resource

m_in where DIM_COURSEMODULE.instance = m_in.id )

else

null

end as titulo_recurso,

case

when DIM_LOG.module = 'forum' then

( select nota from

Figura 38. Query de onde os dados são utilizados para alimentação da tabela fato (parte 3 de 4).

Page 87: FERRAMENTA OLAP PARA APOIO GERENCIAL NO MOODLE Área …siaibib01.univali.br/pdf/Romero Piske.pdf · entre professores e alunos, num único ambiente virtual, sem fronteiras geográficas

77

(select m_in.id,(10*finalgrade) / rawgrademax a s nota

from M_FORUM m_in, m_grade_grades,

m_grade_items where

m_grade_items.iteminstance = m_in.id

and m_grade_grades.itemid = m_grade _items.id

-- group by m_in.id

order by nota desc

) tb

where rownum = 1 and

DIM_COURSEMODULE.instance = tb.id)

else null

end

as nota_recurso

from

m_user DIM_USER, m_context DIM_CONTEXT,

m_role_assignments DIM_ROLE_ASSIGN,

m_course DIM_COURSE,

m_role DIM_ROLE,

m_log DIM_LOG,

m_course_categories DIM_CATEGORY,

m_modules DIM_MODULE,

m_course_modules DIM_COURSEMODULE

Figura 39. Query de onde os dados são utilizados para alimentação da tabela fato (parte 4 de 4).