APLICAÇÃO DA TÉCNICA DE CLUSTERIZAÇÃO NA DETECÇÃO DE CONTEXTO DO USUÁRIO EM UM AMBIENTE EDUCACIONAL ZANON, Thiago1; CHICON, Patricia Mariotto Mozzaquatro2 Resumo: Sistemas educacionais a distância têm sido amplamente utilizados nos dias de hoje. A modalidade EAD. a qual utiliza interface Web, possui diversos recursos e ferramentas que são aplicados no processo de aprendizagem, sendo considerada uma ótima alternativa ao usual método de ensino presencial. Entretanto, devido à infinidade de informações disponíveis na internet, muitas vezes, torna-se uma árdua tarefa encontrar a mesma de forma precisa e confiável. Para tal problema destacam-se as técnicas de mineração de dados, mais especificamente a mineração web que se define como o desenvolvimento de técnicas e ferramentas para obtenção de conteúdo relevante e útil na internet. No presente trabalho, foi estudado a técnica de clusterização onde implementou-se o algoritmo de mineração de conteúdo Microsoft Clustering. Foi medida sua eficiência, na detecção de contexto do usuário, durante a interação com ambiente educacional, a fim de agrupar perfis semelhantes, buscando similaridades entre eles, para assim, recomendar materiais educacionais. Palavras-chave: Mineração de dados Web. Algoritmo Microsoft Clustering. Técnica de Clusterização Abstract: Distance education systems have been widely used these days. The distance education mode which uses Web interface has several features and tools that are used in the learning process is considered a great alternative to the usual classroom teaching method. However, given the plethora of information available on the Internet often becomes an arduous task to find the same in a precise and reliable. For this problem there are the data mining techniques, specifically the web mining which is defined as the development of techniques and tools for obtaining useful relevant content on the Internet. In this work it was studied the clustering technique which was implemented Microsoft Clustering content mining algorithm. It was measured its efficiency in user context detection during interaction with educational environment in order to group similar profiles seeking similarities between them, thus recommending educational materials. Keywords: Web Mining. Microsoft Clustering. Clustering Technique. 1. INTRODUÇÃO Devido à popularização da internet, a área de educação na Web vem evoluindo nos últimos anos. De acordo com o relatório analítico da aprendizagem a distância, no Brasil, publicado na página ABED – Associação Brasileira de educação a Distância, ocorreu um crescimento significativo no número de matriculas realizadas no período de 2009 – 2011, no ano de 2009 ocorreram 528.320 matriculas contra 3.589.373 matriculas em 2011 (ABED, 2012). A modalidade de Ensino a distância (EAD) utiliza interação Web e ocorre por meio de ambientes educacionais de aprendizagem, estes possuem ferramentas e recursos utilizados no processo de ensino e aprendizagem. As ferramentas e recursos possibilitam maior 1 2 Bacharel do Curso de Ciência da Computação E-mail: [email protected]. Professora do Curso de Ciência da Computação E-mail: [email protected] 18 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 interação com o aluno e proporcionam uma transformação importante nos métodos de ensino (GELLER et, al, 2004). Com o aumento da popularidade da WEB, um grande volume de dados e informações foi gerado e publicado em inúmeras páginas da internet. Grande parte dessas informações está aglomerada em diversos sítios na rede, onde o usuário não tem acesso, devido ao enorme volume de dados disponíveis, e o que se encontra nem sempre é informação exata e precisa (MAGALHÃES, 2008). No contexto educacional, a maioria dos ambientes são páginas estáticas que apenas servem de repositórios de materiais, não oferecendo um serviço personalizado e interativo com o usuário. Neste sentido, surge a necessidade de utilizar técnicas computacionais que detectem o contexto do usuário durante a interação com um ambiente educacional. Como solução ao problema abordado, pode-se utilizar técnicas computacionais que detectam o contexto do usuário, sugerindo ao mesmo, materiais educacionais personalizados e direcionados. Com um ambiente adaptado é possível proporcionar maior aproveitamento e desempenho dos acadêmicos que interagem com tais ambientes, ou seja, ocorre a filtragem de informações úteis na web, utilizando para isso técnicas de mineração Web, mais especificamente a mineração de conteúdo, abordada no trabalho proposto. A mineração Web pode ser descrita como um segmento da mineração de dados que visa ao desenvolvimento de técnicas e ferramentas, para obtenção de conteúdo relevante e útil, na web. Isso possibilita detectar padrões de navegação, obtendo características, interesses, ações, e padrões de navegação dos usuários. A Web Mining pode ser dividida em três subáreas: Mineração de estrutura, de uso e de conteúdo (MAGALHÃES, 2008). A utilização do algoritmo Microsoft Clustering integrante da mineração de conteúdo, permitirá detectar o contexto do usuário em um ambiente educacional. O trabalho proposto utilizou a técnica de Clusterização a ser integrada a um ambiente educacional. Assim é possível descobrir semelhanças entre perfis de usuários e sugerir a eles conteúdos educacionais pertinentes a sua rotina de pesquisa e estudo, facilitando seu desenvolvimento intelectual e aprendizado. Com a aplicação do algoritmo, quando o aluno interagir com o ambiente, serão capturados dados como logs de acessos e cliques do mouse. Com essas informações o algoritmo poderá determinar o perfil do mesmo, no ambiente. Por exemplo, quando um usuário acessa mais materiais relacionados à engenharia de software, os algoritmos irão 19 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 detectar o perfil do mesmo e qualquer novidade relacionada àquele perfil, no caso, engenharia de software, o algoritmo irá direcionar o usuário a estes novos materiais e novidades relacionados àquela área. O uso da técnica citada justifica-se pela utilização da interatividade para agrupar conjunto de dados em clusters que contenham características semelhantes (BATISTA, 2009). 2. REVISÃO DA LITERATURA As subseções, a seguir, irão abordar a Mineração de Dados web, a Mineração de Conteúdo e o algoritmo Microsoft Clustering. 2.1. Mineração de Dados Web A rede mundial de computadores é um conjunto de computadores e servidores interligados com um amplo repositório de dados, que atualmente se tornou uma ferramenta muito utilizada para a disseminação de conhecimento e troca de informação (BOHN, 2010). Neste contexto, torna-se complicado encontrar informação correta, devido ao seu exponencial crescimento, por isso se faz necessário realizar um processo de filtragem dos dados adquiridos com pesquisas na rede. Assim destaca-se o emprego de técnicas de mineração de dados web. De acordo com (MAGALHÃES, 2008): A mineração Web é uma área de pesquisa que visa integrar as tecnologias Web e a mineração de dados, focalizando o desenvolvimento de novas ferramentas e métodos para análise e descoberta de conhecimento de dados na web. Ela pode ser definida como a descoberta e análise de informações úteis, novas e interessantes na internet, onde a partir das informações descobertas, seja possível demonstrar características, comportamentos, tendências e padrões de navegação do usuário na web. Entretanto, minerar os dados encontrados em páginas web trata-se de uma tarefa mais complicada com relação à mineração de dados tradicional, pois as páginas da web não se encontram em uma estrutura organizada de tabelas e colunas como consiste um banco de dados relacional, os dados na internet estão agrupados em uma estrutura de hiperlinks muitas vezes interligados ou não, sendo que a estrutura das páginas não contém nenhuma organização comum entre elas, com isso não existe nenhum controle sobre os documentos que são postados na rede. A mineração Web pode ser dividida em três subáreas sendo elas, mineração de uso, de conteúdo e de estrutura. As aplicações dessas áreas são baseadas de acordo com a necessidade de obtenção de determinado registro de dados, pois a utilização de determinadas 20 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 técnicas implica em adquirir determinada informação, de modo geral a obtenção da mesma utilizando mineração de uso é realizada por meio do resultado da descoberta de padrões de comportamento utilizando seus dados de acesso. A mineração de conteúdo retorna valores relativos a textos estruturados ou semiestruturados e de conteúdo em base de dados e a mineração de estrutura verifica a estrutura dos hyperlinks das páginas (RIGO, 2008). As técnicas de mineração de dados web são utilizadas para adaptação, categorização ou segmentação de páginas da internet. Para cada uma dessas aplicações são utilizadas técnicas especificas de determinados segmentos da mineração web, a mineração de uso registra as ações de usuários em páginas de acordo com seu padrão de navegação, a de conteúdo minera os dados sobre os documentos dessas páginas e a de estrutura analisa a estrutura dos links das páginas. Na seção a seguir serão descritos, de forma mais detalhada, os processos e etapas de uma das subáreas de mineração na web, a mineração de conteúdo. 2.1.1 Mineração de Conteúdo Os atuais métodos de busca de informação, na internet, não são capazes de indexar páginas com o conteúdo que satisfaça a busca do usuário de forma eficiente, pois a grande parte dos dados está dentro dos documentos e as ferramentas de busca disponibilizadas não conseguem efetivamente recuperar essas informações pela extração de palavras-chave dos textos (DIAS, 2008). A mineração de conteúdo ou web content mining é um segmento de pesquisa que visa a extrair informações de páginas da internet, de acordo com seu conteúdo; suas aplicações são utilizadas em diversos tipos de dados, como: texto, imagem, áudio, vídeo e metadados (SOUZA, 2009). A mineração na Web é subdividida em três sessões: mineração de estrutura, conteúdo e uso, sendo que, na mineração de conteúdo, busca-se obter informações relativas ao conteúdo das páginas, utilizando o texto do documento Html e até de arquivos de mídia. A internet possui uma vasta coleção de dados, entretanto essas informações não se encontram de maneira organizada para que seja possível obter os dados de forma rápida e precisa, conforme é citado. Se todos os arquivos na web fossem claramente marcados com palavras chave e outros Metadados que descrevessem perfeitamente o seu conteúdo e se os usuários fossem treinados em como fazer pesquisas, a recuperação de informação relevante não exigiria algoritmos sofisticados, eles poderiam ser encontrados através de simples consultas (LINOFF et, al, 2001,p.43). 21 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 Na mineração de conteúdo, encontra-se grande dificuldade para adquirir informações, pois a maioria dos documentos, na internet, não obedece a nenhuma normatização em sua estrutura, entretanto com o passar do tempo foram desenvolvidas técnicas computacionais com o objetivo de conseguir uma maior estruturação dos documentos na web. Tais técnicas buscam extrair informações relativas às características do domínio e perfis dos usuários, de forma a organizar e interpretar as informações adquiridas (BOULLOSA, 2002). A mineração de conteúdo pode ser realizada por meio de dois tratamentos distintos, a partir de sistemas de inteligência artificiais, ou baseados em bancos de dados. A primeira envolve o desenvolvimento de sistemas inteligentes, onde trabalham de forma autônoma ou semiautônomas para a obtenção da informação de determinado usuário, em banco de dados, isto é, são utilizadas técnicas aplicadas em conteúdos desestruturados da internet , para, assim, convertê-los em um modelo de dados estruturados, de forma que se possam obter as informações por meio de consultas, utilizando a linguagem Strutured query language (SQL), da mesma maneira que é feito com a análise na mineração de dados (MARINHO et.al, 2003). Segundo Santos (2001), a mineração baseada em agentes de inteligência artificial funciona de acordo com programas coletores de informações capazes de criar resumos de documentos constituídos a partir de título, subtítulo e cabeçalhos, onde, de acordo com palavras de maior peso (de acordo com o agente empregado), uma determinada quantidade de linhas, o tamanho em bytes e o número de palavras, e após as informações são gravadas em uma base de dados, o uso de agentes pode ser divididos em três categorias: agentes inteligentes de procura, filtragem e categorização da informação e agentes de rede personalizados. Em agentes inteligentes de procura são utilizadas características de um domínio, onde organizam e interpretam informações descobertas em tipos particulares de documentos ou modelos codificados de fonte de informações. Na filtragem e categorização da informação, são abertos os documentos de forma automática, filtrando e categorizando os documentos e criando hierarquias de agrupamentos. Por fim, na categoria agente de rede personalizado, adquire-se e compreende-se preferências do usuário e identificam-se informações de rede, de acordo com essas preferências. Os agentes inteligentes de procura podem ser definidos como um software capaz de perceber um ambiente, interpretar informações e efetuar decisões, de acordo com tais 22 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 percepções, resolvendo problemas e realizando operações, é adaptável a eventuais mudanças ocorridas em seu ambiente de maneira que o resultado seja obtido independente de variações (GAEBLER, 2004). De acordo Chiara (2003), o uso de técnicas de mineração de conteúdo são empregados da seguinte maneira: Sumarização: com a sumarização é possível empregar agentes especializados para recuperar e comparar a informação e, de acordo com determinado parâmetro, pode-se citar a recuperação dos preços de produtos em sites de compras. Categorização: são empregados algoritmos de aprendizagem de máquina e, com isso, é possível classificar uma página, de acordo com uma ontologia, o sistema aplicado a uma página universitária é capaz de detectar se a página é de um estudante, de projeto de pesquisa ou de um curso. A sumarização que pode ser empregada para extrair informações importantes de documentos indexados nas páginas e a categorização pode ser empregada em sites de catálogos, por exemplo. As informações na internet raramente seguem um padrão de relação ou estrutura definida de linhas e colunas como em uma base de dados. Tem-se, então, a grande dificuldade de minerar os dados na web, entretanto dados de texto puro podem ser convertidos a Quadros de ocorrência e posição de palavras, utilizando o método chamado índice invertido. Com essas informações pode-se obter um nível razoável de comparação quanto ao conteúdo desses documentos; para isso, primeiramente, deve-se remover do documento itens não textuais como pontuação, tags HTML e similares, em seguida, deve ocorrer conversão de palavras em radicais, removendo plurais e outros, e enfim transformar palavras em tokens indexados numericamente. Com esse procedimento, o documento é transformado em catálogo de ocorrência dessas palavras, onde se pode encontrar a posição da palavra no documento (SANTOS, 2009). Existem alguns problemas com o uso de indexação de palavras, como a não indexação de documentos relevantes e a indexação de documentos não relevantes na pesquisa, isso ocorre porque tais técnicas são baseadas na presença ou não de palavras nos documentos. Esse problema é chamado de indexação imprecisa e decorre porque a pessoa ou técnica que 23 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 indexa as palavras nos documentos podem utilizar termos diferentes da pessoa que busca por tais documentos (SANTOS, 2001). 2.1.1.1 Algoritmo Microsoft Clustering O algoritmo Microsoft Clustering é um algoritmo que analisa e divide os dados em grupos, de acordo com a semelhança entre os dados, utilizando um conjunto de atributos e parâmetros, após a definição dos agrupamentos os mesmos são definidos evidenciando os valores que melhor os representam (MENDES, et, al, 2008). O algoritmo Microsoft Clustering é uma ferramenta oferecida como recurso do analysis services e utiliza clusters, agrupando dados de acordo com suas similaridades, sendo utilizados para detectar anomalias nos dados e criar previsões. Tais modelos detectam características e relações nos dados, algo que não pode ser realizado por deduções e observações de pessoas, por exemplo, uma pessoa é capaz de determinar que pessoas que utilizam bicicletas para irem ao trabalho não moram longe do mesmo, porém o algoritmo é capaz de encontrar características não óbvias (MICROSOFT, 2013). O funcionamento do algoritmo Microsoft Clustering é realizado da seguinte maneira: determina a relação de acordo com similaridades e define os primeiros clusters. Após a definição dos primeiros clusters, o algoritmo efetua cálculo para determinar o agrupamento dos pontos; a partir desse ponto, o algoritmo realiza uma redefinição nos agrupamentos para criação de novos clusters que definirão melhor a representação dos dados, o algoritmo efetua essa redefinição até que não seja mais possível melhorar o resultado pelas redefinições dos clusters (MICROSOFT, 2013). Alguns dados estão agrupados em clusters e outros ainda estão dispersos, conforme o algoritmo executa seu processo de agrupamento, os dados seguem agrupando-se em clusters, de acordo com suas similaridades, todo o processo é finalizado quando o algoritmo não encontra mais um melhor agrupamento para os dados. A fase de implementação do algoritmo Microsoft Clustering pode ser efetivada de duas maneiras: a primeira determina que um ponto de dados só pode pertencer a um cluster específico, onde uma única probabilidade é calculada para determinar a vinculação de um dado a um determinado cluster; a segunda pode ser efetuada com um método chamado de Clustering flexível, onde um dado pertence a vários agrupamentos e que a probabilidade é calculada para cada combinação de pontos de dados e agrupamentos (MICROSOFT, 2013). 24 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 É possível determinar qual o método a ser utilizado pelo algoritmo Microsoft Clustering no parâmetro Clustering Method, caso o mesmo não seja especificado, é utilizado o método padrão, chamado de EM evolutivo. Existe também a possibilidade de execução do k-means, método de atribuição e associação de clusters, que se caracteriza por minimizar a diferença entre os itens de um cluster e maximizar a distância entre os agrupamentos (DE VILLE, 2001). Existe a possibilidade de customização do algoritmo Microsoft Clustering, ou seja, o algoritmo suporta diversos parâmetros que determinam o comportamento, desempenho e exatidão dos resultados, a tabela 2 evidencia os parâmetros que podem ser utilizados no algoritmo. Os parâmetros que podem ser definidos em Clustering Method são os seguintes: primeiramente, é exibido o EM evolutivo que seria o parâmetro padrão, caso não seja definido, o qual executa de modo iterativo os clusters e ajusta os dados com intuito de determinar a probabilidade de um dado existir em determinado cluster; o EM não evolutivo possui as mesmas características do EM evolutivo, a diferença se encontra na quantidade de registros utilizados na verificação inicial, o EM evolutivo inicialmente utiliza 50.000 registros na verificação, o EM não evolutivo executa o conjunto de dados independente do tamanho dos registros. Entretanto isso demanda requisitos de memória significativos, o K-means evolutivo também utiliza os primeiros 50.000 registros para atingir o bom ajuste dos clusters e o k-means não evolutivo não efetua restrições de tamanho de registros para determinar o ajuste dos clusters. Além da escolha do método do algoritmo, é possível determinar outros parâmetros. Cluster_Count determina o número de clusters que serão criados, se não for especificado, o algoritmo cria o número máximo de clusters possíveis, Cluster_Seed determina o valor de incremento, utilizado para criar dois primeiros agrupamentos, Minimum_Support especifica o número de suporte mínimo necessário para a criação dos agrupamentos, Modelling_Cardinality especifica a quantidade de candidatos durante a criação dos agrupamentos, Stopping_Tolerance parâmetro utilizado para especificar quando o algoritmo efetua as verificações e chega ao término do modelo (MICROSOFT, 2013). Após toda a construção do modelo de agrupamentos e das verificações do algoritmo Microsoft Clustering, é necessário efetuar consultas para retornar os resultados da aplicação do algoritmo, com isso é possível recuperar informações detalhadas sobre os padrões descobertos na análise dos clusters. 25 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 O Microsoft Clustering é um algoritmo que faz parte do conjunto de ferramentas do analyses services, que por sua vez é utilizado dentro do sistema gerenciador de banco de dados Microsoft SQL Server. Esse sistema permite que seja apresentado a representação dos dados, na forma de rede, não só na forma tabular como ocorre normalmente em consultas, mas também com arcos e uma codificação em cores, algo que torna claro as relações dos dados nos clusters (ÁLFARO, et, al, 2008). 3. METODOLOGIA A implementação do algoritmo Microsoft Clustering ocorre, primeiramente, ao usuário acessar o sistema, o mesmo realiza uma inserção de dados na tabela registro e, nessa tabela, são salvas informações de tempo inicial, tempo final e identificador do usuário. Após essa inserção, no primeiro acesso do sistema, o usuário é direcionado até a página inicial para as primeiras interações, no referido trabalho o tempo de contagem regressiva do cronometro foi de cinco minutos. Ao interagir com o ambiente os dados de cliques do mouse são salvos na tabela contador, juntamente com o identificador único de cada usuário e com o identificador de cada categoria clicada; esse processo é realizado até o cronômetro chegar a zero, após chegar a zero o sistema realiza verificação para a geração dos clusters e detecção do perfil, caso os prérequisitos para essa verificação estejam corretos. Como no algoritmo Microsoft Clustering não existe parâmetros como suporte mínimo, suas verificações para detecção do perfil são realizadas de maneira geral, de modo mais simples e eficiente. O fluxo das informações, dentro dos códigos e arquivos, no sistema, são basicamente os mesmos, o aluno ao entrar no sistema é direcionado até a página “verifica.php”, após os dados são direcionados até o arquivo “contador.php”. Nesse arquivo, é realizada a verificação da contagem de cliques do usuário. A consulta sql (Figura 1) demonstra essa verificação. Figura 1 - Consulta sql algoritmo Microsoft Clustering $sql = mysql_query ("select count_acess from contador where usuario = '".$_SESSION['id']."'"); if(mysql_num_rows($sql) == 0) { echo "<script> location.href='inicio_aluno.php';</script> "; } else{ $cons = mysql_query ("update usuarios set permissao = 4 where id = '".$_SESSION['id']."'"); echo "<script>alert('Foi detectado seu perfil');location.href ='perfil_detectado.php' </script> "; ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 26 Nessas verificações, primeiramente, é realizada, na primeira linha, uma consulta na tabela contador, na coluna count_acess, caso o resultado da consulta seja um número de linhas igual a zero, o sistema direciona o aluno novamente até a página inicial do sistema e o cronometro é reiniciado, se for diferente de zero o sistema emite mensagem de aviso ao usuário e avisa que seu perfil foi detectado e o redireciona até a página “perfil_detectado.php”. No final dessas verificações, o aluno já terá disponível um link com as suas respectivas sugestões de materiais para visualização e aproveitamento do ambiente, assim o sistema já estará adaptado aos interesses de cada aluno, de forma a ajudá-lo a ter um aproveitamento mais eficiente em suas pesquisas e estudos. 4. RESULTADOS E DISCUSSÕES O sistema foi desenvolvido utilizando um conjunto de ferramentas e a combinação de diferentes recursos de tecnologia da informação; para a base de dados foi utilizado o sistema gerenciador de banco de dados MYSQL, a criação da interface do sistema foi utilizado HTML juntamente com CSS, por fim para tornar o ambiente um sistema dinâmico foi utilizado a linguagem de programação PHP. O ambiente construído consiste em três diferentes tipos de acesso, sendo que o primeiro seria o módulo do usuário administrador, onde o mesmo cadastra todos os usuários do sistema e delega suas respectivas permissões no sistema, também permite visualizar relatórios como a quantidade de acesso de todos os usuários em cada link da página. A Figura 2 ilustra uma das telas do ambiente. Figura 2 – Tela da interface administrador do sistema 27 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 Na Figura 2, o usuário administrador tem a disposição um menu horizontal, o primeiro botão é “início”; esse botão redireciona o administrador a tela inicial do sistema, seja qual for a página que o mesmo se encontra. O segundo botão é “cadastrar usuário” , ao clicar nesse botão o administrador é redirecionado para a interface de cadastro de novos usuários, basta o administrador inserir o nome do usuário, senha e o nível de permissão (administrador, professor ou aluno) e o sistema insere um novo usuário. O segundo seria o modulo do usuário professor, onde o mesmo tem as permissões de postar todos os materiais disponíveis para os usuários do tipo aluno no sistema, além de poder escrever nos campos disponíveis do sistema, o mesmo ainda permite a funcionalidade de upload de materiais, como: arquivos pdf, doc, entre outros. O terceiro é o modulo dos alunos, esse acesso contempla toda a parte de visualização dos materiais postados pelos professores no ambiente, sendo que após a interação do usuário com o sistema o algoritmo é aplicado e o mesmo tenta detectar o perfil do usuário, caso seja possível o sistema automaticamente irá recomendar mais materiais, de acordo com seu perfil. No presente estudo, foram aplicados diversos testes com a intenção de encontrar possíveis falhas e erros no sistema desenvolvido; os testes aplicados foram caixa branca e caixa preta. O teste caixa branca consiste em uma análise realizada no código fonte do sistema e na sua lógica de desenvolvimento e funcionamento, é testada toda a parte do back-end do sistema, nesse tipo de teste é realizada uma busca por erros na lógica e no comportamento do sistema, os testes de caixa branca utilizados foram testes de unidade, validação e segurança (BEQUE, 2009). O teste de unidade busca identificar erros na lógica do software separadamente em cada módulo do sistema (Fontoura, 2008). Assim foram testadas, de maneira separadas, as funcionalidades de cada módulo, no módulo do administrador foi testado o cadastro de usuários, cadastro de materiais auxiliares e toda a parte de geração de relatórios e comparação de dados oriundos dos relatórios e os dados contidos no banco de dados. No módulo dos professores, foi testado o envio de materiais para o sistema, foi verificado se as informações postadas pela interface do professor estavam chegando no lugar correto, de acordo com curso e disciplina, onde o material foi escolhido para ser alocado. 28 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 Na parte dos alunos, foi testado o acesso aos materiais e ao correto direcionamento das páginas com relação à navegação, isso foi necessário devido à quantidade de opções que se encontram disponível para o usuário, também a parte de sugestões de materiais foi testada, pois, de acordo com o perfil detectado, somente o material relacionado a seu respectivo perfil deveria estar disponível para a visualização e acesso do aluno. O teste de validação verifica se as funções criadas no sistema estão funcionando de maneira correta, ou seja, se cada função criada está realizando suas atribuições, de acordo com as especificações escritas nos códigos do sistema. (SOMMERVILLE, 2011). Foi realizado teste de segurança com relação ao acesso dos usuários, para isso foram feitas diversas tentativas de acesso com usuários sem cadastro no sistema; só é permitida entrada de usuários previamente cadastrados pelo usuário administrador. Também existe um controle de seção para cada usuário, assim se algum usuário tentar acessar o sistema digitando diretamente o endereço de uma das páginas internas, sem efetuar login, o mesmo irá emitir uma mensagem de erro, informando que para acessar essa página se deve ter efetuado login no sistema. Os testes caixa preta são testes efetuados com relação ao front-end do software, ou seja, toda a parte de interface e interação com os usuários, e os usuários têm a informação do que se espera do sistema, o que ele deverá realizar, sem ter conhecimento sobre a estrutura dos códigos e a lógica aplicada para o desenvolvimento do mesmo. O teste caixa preta foi aplicado a uma população de 35 alunos, sendo que metade dessa população está entre o sexto e sétimo semestre, o restante se encontra no segundo semestre do Curso de Ciência da Computação da Universidade de Cruz Alta. Conforme o autor (Barbetta, 2002), o teste aplicado a uma população finita deve integrar, no caso do trabalho proposto, alunos de semestre inicial e final. Primeiramente foi explicado aos alunos o objetivo da pesquisa e realizada uma introdução sobre o sistema proposto. Após foram efetuados testes do algoritmo GSP, sendo estipulado primeiramente tempo de dez minutos para interação dos usuários no sistema, após dez minutos foi incrementado mais cinco, para finalizar a varredura do algoritmo, nos dados coletados na navegação desses usuários. No segundo momento, foi efetuado teste do algoritmo Microsoft Clustering, onde foi determinado tempo de cinco minutos para a detecção do perfil dos usuários. Quando se finalizou a interação com o sistema, foram aplicados dois questionários, um para cada 29 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 algoritmo com onze perguntas cada, relacionadas aos seguintes domínios: interação, recomendação e usabilidade do sistema. Para a elaboração do questionário foi utilizado o software makesurvey; essa ferramenta web disponibiliza uma interface de criação, edição e geração de relatórios das perguntas do questionário implementado. 5. CONSIDERAÇÕES FINAIS A utilização de recursos computacionais para desempenhar atividades e auxiliar de maneira correta a execução das mais diversas tarefas é algo de muita importância, nos dias de hoje. O presente estudo teve como objetivo utilizar o algoritmo de Mineração de conteúdo da web Microsoft Clustering, medindo sua eficiência na detecção de contexto do usuário durante a interação com um ambiente educacional, a fim de agrupar perfis semelhantes, buscando similaridades entre eles e recomendando materiais educacionais. Para a aplicação do algoritmo foi desenvolvido um sistema que simula um ambiente educacional, utilizando a linguagem de programação php, juntamente com o SGDB mysql, ou seja, a técnica teve validação em um ambiente web. A partir da implementação do algoritmo, no ambiente, nos testes executados de caixa branca e preta, e dos resultados obtidos por meio da análise da métrica alfa de cronbach, pode-se concluir que o algoritmo Microsoft Clustering obteve desempenho esperado, na tarefa proposta para esse trabalho. O resultado obtido justifica-se, além da análise de resultados que o mesmo necessita de menos parâmetros para execução de suas tarefas e, consequentemente, detecção do perfil do usuário no sistema. A grande tarefa do presente estudo era testar a eficiência do algoritmo Microsoft Clustering para a detecção de contexto de determinado usuário no ambiente, assim com o êxito dessa aplicação é possível determinar que com um perfil gerado é muito mais fácil ajudar um aluno em estágio de aprendizado dentro da internet, e isso é mais uma opção a todos os métodos de ensino conhecidos, hoje. O sistema desenvolvido poderá ser utilizado como recurso ao apoio do desenvolvimento cultural e de aprendizado do indivíduo, pode ser implementado numa escola ou até numa universidade, desde que sofra algumas alterações para poder suprir um número maior de usuários e materiais disponíveis em sua base de dados. 30 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 Após a conclusão do presente estudo, pode-se notar o potencial dessa área e assim o desenvolvimento de novas aplicações e estudos, a partir da implementação desse algoritmo dentro do ambiente criado: Aplicar a vinculação de professor a respectivo curso e categoria dentro do ambiente para uma maior segurança dos materiais presentes no sistema; Desenvolver opção para o aluno responder as tarefas via ambiente com a opção de upload das respostas via arquivo ou escrita no próprio ambiente; Aumentar a variedade e quantidade de materiais disponíveis no ambiente. REFERÊNCIAS ABED - Associação Brasileira de educação http://www.abed.org.br/ >.Acessado em: maio. 2013. a Distância. Disponível em;< ÁLFARO, Paulo Jorge, MENDES Armando, FERREIRA Aires. Suporte à Decisão em Tecnologias de comunicação: Um Caso Com Utilização de Metodologias OLAP e Data Mining. Centro de Estudos de Economia Aplicada do Atlântico – CEEAPLA WP No. 09/2008. BEQUE, Luciéli Tolfo. Avaliação dos Requisitos para Teste de Um sistema operacional Embarcado. Dissertação de mestrado do programa de pós-graduação em computação da Universidade Federal do Rio Grande do sul – UFRGS, 2009. BOULLOSA, José Roberto de Freitas Boullosa; Um ambiente para mineração de utilização da web. Dissertação de Mestrado do programa de pós-graduação de engenharia da Universidade Federal do Rio de Janeiro – UFRJ, 2002. BOHN, Vanessa Cristiane Rodrigues; Comunidades de Prática na Formação Docente: Aprendendo a Usar Ferramentas da Web 2.0. Dissertação de Mestrado do Programa de Pós-graduação em estudos linguísticos da faculdade de letras da Universidade Federal de Minas Gerais – UFMG, 2010. CHIARA, Ramon; Aplicação de técnicas de Data Mining em Logs de Servidores Web. Dissertação de mestrado ao instituto de ciências matemáticas e de computação – ICMC , Universidade de São Paulo – USP, 2003. CHIARA, Ramon; Aplicação de técnicas de Data Mining em Logs de Servidores Web. Dissertação de mestrado ao instituto de ciências matemáticas e de computação – ICMC , Universidade de São Paulo – USP, 2003. DIAS, Thiago Magela Rodrigues; Uma Arquitetura Orientada a Serviços para emprego em sistemas de Mineração de dados web. Dissertação de mestrado do curso de mestrado em modelagem matemática e computacional do Centro Federal de Educação Tecnológica de Minas Gerais – CEFET, 2008. 31 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2 DE VILLE. Microsoft Data Mining: Integrated Business Intelligence for e-commerce and Knowledge Management. Boston: Digital Press, 2001. GELLER, Marlise; TAROUCO, Liane Rockenbach; FRANCO Sérgio Kieling. Educação a Distância e Estilos Cognitivos: construindo um novo olhar sobre os ambientes virtuais. Tese (Doutorado em Informática na Educação), Programa de Pós-Graduação em Informática na Educação, Universidade Federal do Rio Grande do Sul, 2004. GAEBLER, Rafael; Agentes Inteligentes para Pesquisa na Internet. Monografia apresentada á Universidade Federal de Santa Catarina – UFSC, 2004. LINOFF, G.S , BERRY ,M.J.A; Mining The Web, Transforming Customer Data Into Custumer Value. V. 1, 2001, p.43. MAGALHÃES, Lúcia Helena; Uma Análise de ferramentas para mineração de conteúdo de páginas web. Dissertação de Pós Graduação De Engenharia Da Universidade Federal do Rio De Janeiro - UFRJ, 2008. MARINHO, Leandro Balby, GIRARDI Rosario; Mineração na web. Revista Eletrônica de iniciação cientifica – REIC, Ano III, n.II, Junho de 2003. MICROSOFT - Disponivel em; <http://msdn.microsoft.com> Acessado em: Junho 2013. RIGO, Sandro José; Integração de Recursos da Web Semântica e mineração de uso para personalização de Sites. Tese (Doutorado em Ciência da computação), Programa da Pósgraduação em computação, Universidade Federal do Rio Grande do Sul, 2008. SOMMERVILLE, Ian, Engenharia de Software. 9 ed., p.540, 2011. SOUZA, Luis Carlos Couto; Metodologia de mineração de dados aplicada a navegação de dispositivos moveis. Dissertação de Mestrado apresentada ao programa de Pós-graduação em engenharia civil da Universidade Federal do Rio de Janeiro – UFRJ, 2009. SANTOS, Rodrigo Gonçalves; Utilização de Técnicas Data Mining na Busca de Conhecimento na Web. Trabalho de conclusão de curso de bacharelado em informática do Instituto de física e matemática da Universidade Federal de Pelotas – UFPEL – 2001. SANTOS, Rafael; Conceitos de Mineração de Dados na Web. XV Simpósio Brasileiro de Sistemas Multimídia e Web – Fortaleza/CE – 2009. SILVA, Pedro Henrique de Oliveira; Sistema Hipermídia Adaptativo Baseado no Descobrimento e Análise de Padrões de Uso Utilizando Mineração na Web. Dissertação de mestrado em modelagem matemática e computacional do Centro Federal de Educação Tecnológica de Minas Gerais - CEFET, 2010. SILVA, Nyara de Araújo; CobMiner – Mineração de Padrões Arborescentes com Restrições. Dissertação de Mestrado em Ciência da Computação da Universidade Federal de Uberlândia – UFU, 2007. 32 ________________________________________ REVISTA DI@LOGUS ISSN 2316-4034 – Volume 4 nº 2