Implementando um sistema de Gerenciamento de
Transcrição
Implementando um sistema de Gerenciamento de
Implementando um sistema de Gerenciamento de Questões para alunos de Ensino Fundamental Marcelo Josué Telles Instituto de Ciências de Ciências Exatas e Tecnológicas – Centro Universitário FEEVALE Licenciatura em Computação RS 239, nº 2755 CEP 93352-000 Novo Hamburgo – RS – Brasil [email protected] Abstract. The proposal of the present paper is to show details of development of a system that could be used in the laboratories of computer science at schools basic and average. They will be shown topics on each phase of modeling. The objectives of the system are storage and instantaneous correction of questions that understand disciplines worked in classroom, information about answers of the student, identify the correct answers, or not and time necessary to answer each question. Resumo: A proposta do presente trabalho é apresentar detalhes referentes à desenvolvimento de um sistema que poderá ser usado nos laboratórios de informática das escolas de ensino fundamental e médio. Serão exibidos tópicos sobre cada fase de implantação. Os objetivos do sistema são armazenamento e correção instantânea de questões que compreendam conteúdo de matérias trabalhadas em sala de aula, oferecer estatísticas sobre as respostas fornecidas pelos alunos e identificar quantitativamente os acertos, erros e tempo de resposta. 1. Introdução Este artigo apresenta o desenvolvimento de um software educativo para ser instalado nos laboratórios de informática das escolas. Será configurado um computador responsável pelo sistema. Este computador armazenará as informações em um banco de dados gerenciado pelo SGBDR (Sistema de Gerenciamento de Banco de Dados Relacionais) de código fonte aberto [Suehring 2002, p. 24] MySQL versão 5.0.27. Estes dados serão acessados por uma interface web¹ composta por páginas desenvolvidas usando a linguagem PHP [Choi et all 2001] e também recursos de HTML (HiperText Marcup Language) linguagem de marcação de hipertexto [Holzschlag 2004, p.130], JavaScript [Feather 1997], e CSS [Holzschlag 2004, p. 235]. Para hospedar as páginas será adotado o Servidor Apache 2 [Kabir 2002]. _________________ ¹ web é a tradução literal do inglês, significa “teia” ou “rede”. Termo usado para se referenciar a rede mundial de computadores, também chamado de WWW – World-Wide-Web. O sistema descrito neste artigo tem como objetivo proporcionar interatividade entre os alunos, uma vez que, será exibido um item de menu chamado “ranking”, o qual listará os alunos e suas devidas posições com relação um ao outro. A proposta de exibir um ranking dos alunos ocorre pelo seguinte motivo: alunos que estão em uma mesma faixa etária tendem a desafiar seus limites de acordo com a superação vista no outro. Atividades com caráter competitivo proporcionam momentos de socialização [Macedo et all 2003, p.147], por intermédio de regras que são impostas pelo jogo e, conseqüentemente, cobrada e fiscalizada pelos jogadores. Proporciona também progressos significativos na questão emocional e intelectual. Para apresentar as atividades dos alunos será disponibilizada uma interface intuitiva que promova a autonomia e seja de fácil compreensão, para captar a atenção de forma agradável. A solução proposta será desenvolvida usando tecnologias de fácil implementação, que conta com uma rica bibliografia, tanto em bibliotecas quanto na própria internet, onde facilmente encontram-se sites com conteúdos que explicam conceitos de uso e as novidades que em breve estarão a disposição. 2. O que será necessário? A seguir serão apresentados os recursos de hardware e software necessários. 2.1 Hardware As ferramentas usadas para criação, hospedagem e gerenciamento serão instaladas em um microcomputador convencional composto por: um processador de 1.0 GHZ, memória Ram de 512 de MB, disco rígido de 20Gb 7200 RPM, placa mãe com som e rede integrada e placa de vídeo 64 MB. Neste equipamento será instalado o sistema operacional Windows XP Professional Edition que será responsável pelos seguintes serviços: Apache 2.0.59, PHP 5.2.0, MySQL 5.0.27. Os equipamentos secundários necessitam processador de 200 MHZ ou superior, memória Ram de 32 MB, placa de rede, sistema operacional, cabos para conexão em rede [Tanenbaum 2003, p. 3] e um browser¹. _________________ ¹ browser é o mesmo que navegador de páginas da internet. Programa informático utilizado para visualizar e ouvir conteúdos alojados em sites da rede mundial de computadores. Como, por exemplo, Netscape Navigator, Internet Explorer, Opera, Fire Fox entre outros. 2.2 Softwares O sistema será composto de páginas, que serão desenvolvidas no editor de HTML First Page da EvrSoft [EvrSoft website (2007)]. A versão usada será a First Page 2000, que é gratuita. Oferece recursos avançados de códigos em HTML 4.0 e mais de 450 exemplos de comandos em JavaScript. A figura 1 mostra a tela de desenvolvimento do FirstPage 2000. Figura 1. First Page 2000 da EvrSoft – ferramenta de criação da interface. 2.2.1 Apache O sistema Apache foi escolhido, pois oferece velocidade e simplicidade. Este Servidor de http é responsável por 60% dos sites da Internet [Kabir 2002, p.3]. 2.2.2 PHP Em 1994 [Castagnetto et all 1999, p.9] surgiu a linguagem PHP/FI (Personal Home Page Tools/Forms Interpreter) primeira nomenclatura, criada por Rasmus Lerdof. Desde seu lançamento onde tinha apenas alguns tratamentos de formulários vem ganhando adeptos e aperfeiçoando suas funcionalidades. Com a evolução ao decorrer dos anos chegou-se ao PHP 5. O PHP, por ser gratuito [Converse 2001, p5], propagou-se rapidamente e fez com que muitos livros e sites fossem criados para divulgar eficientemente a linguagem. Dentre as vantagens do PHP, pode-se citar a portabilidade. Geralmente é possível usar o mesmo código em diferentes sistemas operacionais [Choi et all 2001, p.XVII]. A linguagem oferece recursos poderosos, desde acesso a banco de dados até criação de imagens, gráficos, arquivos PDF (Portable Document Format) [Adobe Acrobat website (2007)] e manipulação de arquivos. A versão cinco, que é a atual da linguagem, aborda um novo modelo orientado a objetos. Outra modificação desta versão é que não será mais dado suporte ao sistema operacional Windows 95, apesar de ser possível instalar um interpretador do PHP neste sistema operacional, não será mais estável e suportada, pelo fato da Microsoft ter oficialmente finalizado o suporte a este sistema operacional [Gutmans et all 2005, p. 8]. O site oficial do PHP, www.php.net, oferece uma grande fonte de explicações e exemplos dos comandos e funções da linguagem. A integração da interface apresentada para o usuário e o banco de dados será toda desenvolvida em PHP. Porém, visando uma fácil manutenção e possível migração ou mesmo acesso a outras bases de dados, o sistema adotará a biblioteca de acesso a dados ADODB [ADODB website (2007)], que é uma biblioteca de abstração de banco de dados. Fazendo uso desta biblioteca ou classe, como também é chamada, é possível projetar futuras mudanças de SGBDR sem maiores dificuldades, pois a função principal desta é dar suporte a inúmeros SGBDR’s, como os seguintes: MySQL, Oracle, Microsoft SQL Server, Sybase, Sybase Anywhere, Informix, PostgreSQL, FrontBase, Interbase (Firebird e variações da Borland), Foxpro, Access, ADO e ODBC. Atualmente existem alguns instaladores PHP triad, Easy PHP entre outros, porém é altamente recomendável a instalação manual, pois garante estabilidade e integridade do ambiente. Para gerenciar o banco de dados será usada a ferramenta de código fonte aberto, PhpMyAdmin 2.6.1. Esta foi desenvolvida, também, em PHP [PhpMyAdmin website (2007)]. O banco de dados usado nesta aplicação será criado e gerenciado pelo Software DBDesigner 4.0.5.6, uma ferramenta de uso livre [FabForce website (2007)], com suporte ao SGDBR MySQL. Também será usada a ferramenta disponibilizada pelo MySQL, a MysqlControl Center 0.9.4. 3. Uso Inicial do Sistema A figura 2, mostra a tela inicial do site que centralizará as atividades dos professores e dos alunos. Figura 2. Site que centralizará as atividades do professor e do aluno. O sistema nunca exclui, definitivamente, os cadastros. São geralmente desativados. Isso se deve a consistência dos dados, uma vez que os dados se relacionam é criada uma dependência. Exemplo: existe a turma A, é feito o cadastro de 20 alunos, todos pertencem a turma A. Agora deseja-se excluir a turma A. O que acontece com os 20 alunos da turma A que foi excluída? Ficam sem turma, gerando uma inconsistência. Inicialmente a escola recebe o sistema instalado no Servidor, com um usuário, previamente cadastrado, cujo nome de acesso (login) é Admin e a senha (password) é Admin. Usando este usuário, algum professor(a) ou secretário(a) deve entrar no sistema cadastrar as turmas existentes na escola, que é importante, pois será uma informação obrigatória para realização do segundo cadastro, que é dos professores. Finalmente deve ser alterada a senha do usuário Admin, por questões de segurança. 3.1 Turmas O cadastro das turmas é composto pelos seguintes campos: Ano, Etapa, Letra, Turno, conforme a figura 3: Figura 3. Cadastro das turmas. Os campos Ano, Letra e Turno são obrigatórios. A interface de cadastro obriga o preenchimento destes, não permitindo que seja efetuado o cadastro caso não sejam corretamente digitadas tais informações. Cada campo tem um controle independente que controla o que é informado pelo usuário, isso faz com que não seja possível digitar, por exemplo, um número no campo Letra. 3.2 Professores O cadastro dos professores solicita o nome completo, um nome de usuário no sistema (login) uma senha e alguma(s) turma(s). A figura 4 apresenta a tela de cadastro dos professores. A esquerda é exibida a lista das turmas, deve ser associado de uma a uma ao cadastro do professor. Todos os professores poderão fazer tudo que o usuário Admin faz. Figura 4. Cadastro do professor adicionando as turmas a que este leciona. Neste momento é aconselhável efetuar o cadastro das questões. Cada professor deve criar uma unidade de ensino e criar as questões referentes a esta unidade. 3.3 Questões O cadastro das questões é composto pelos seguintes campos: Unidade, Descrição, Figura da descrição, Alternativa A, figura da Alternativa A, Alternativa B, figura da Alternativa B, Alternativa C, figura da Alternativa C, Alternativa D, figura da Alternativa D, Alternativa E, figura da Alternativa E e Alternativa Correta. A figura 5 apresenta um exemplo. Figura 5. Exemplo de cadastro de uma questão. Campos Descrição, Alternativa A, Alternativa B, Alternativa Correta e Unidade são obrigatórios. Cada questão deve estar associada a uma unidade previamente ou simultaneamente cadastrada. Isso auxiliará no diagnóstico de correção. Será possível, por exemplo, avaliar todas as questões respondidas ou também apenas as questões referentes à unidade de ensino desejada. A partir deste momento cada aluno já pode fazer seu cadastro. A figura 6 mostra a tela de cadastro dos alunos: Figura 6. Interface de cadastro dos alunos. O cadastro dos alunos deve, preferencialmente, ser feito pelos próprios alunos. Ele é composto pelos seguintes campos: Nome, Data de nascimento, turma, nome de usuário no sistema ou login (apelido) e senha. Campos Nome, turma, login e senha são obrigatórios. Resumindo os passos iniciais para uso do sistema: 1 entrar com login Admin, senha Admin. 2 cadastrar as turmas. 3 cadastrar os professores. 4 trocar a senha do usuário Admin. 5 cadastrar as unidades e questões. 6 cadastrar os alunos. 4. Como Funciona o Sistema O sistema permite que seja criada uma relação entre alunos e turmas, ou seja, quando o aluno se cadastra ele informa em que turma esta estudando no ano atual, é possível no ano seguinte trocar a turma, mas isso será realizado de forma automática no final do ano. Cada turma tem um ou mais professores. Quando um aluno é cadastrado em determinada turma é criada uma relação, tal relacionamento possibilita que este aluno responda todas as questões de todos os professores que lecionam para esta turma. A consulta que realiza esta operação é a seguinte: SELECT questao.id as questao_ids, questao.descricao, questao.a, questao.b, questao.c, questao.d, questao.e, questao.correta, aluno.id, aluno.turma_id, turma_has_professor.turma_id, turma_has_professor.professor_id, professor_has_questao.professor_id, professor_has_questao.questao_id, professor.nome, professor.id, aluno_has_questao.questao_id, aluno_has_questao.aluno_id, aluno_has_questao.resposta_aluno, aluno_has_questao.data_respondida FROM questao, aluno, turma_has_professor, professor_has_questao LEFT JOIN professor on professor.id=professor_id LEFT JOIN aluno_has_questao on aluno_has_questao.questao_id=professor_has_questao.questao_id WHERE aluno.turma_id = turma_has_professor.turma_id AND turma_has_professor.professor_id = professor_has_questao.professor_id AND professor_has_questao.questao_id=questao.id AND questao.ativo = 1 AND aluno.id=".$aluno_id." ORDER BY descricao; Onde $aluno_id: é o aluno que esta logado atualmente no sistema Esta consulta retorna todas as questões do aluno logado, levando em consideração as questões que todos os professores da turma deste aluno tem direito de aplicar. Na interface é exibido se o aluno respondeu, se acertou ou errou a resposta. A figura 7 ilustra um exemplo desta listagem de questões. Figura 7. Lista de questões para o aluno logado. Cada aluno responde uma única vez cada questão. Porém é possível que os alunos consultem as questões já respondidas. O sistema irá indicar, caso ele tenha errado a questão, a resposta correta possibilitando assim uma forma simplificada de estudo. 4.1 Como se cadastrar no sistema Quando o professor se cadastra no sistema, ele informa para quais turmas irá lecionar. Assim todas as questões que lhe são permitidas, serão disponibilizadas para seus alunos. Um professor pode cadastrar uma questão e permitir que outros professores apliquem esta questão em suas turmas. Depois de efetuados os cadastros de turmas, professores, questões e alunos, o aluno deve responder as questões. A figura 8 mostra que a questão sobre a palavra “uva” deve ser disponibilizada para todos os alunos das turmas do professor “Marcelo” e da professora “Ana Paula”. Figura 8. Compartilhamento de questões entre os professores. Esta tela indica o professor autor da questão. O mesmo não pode aplicar a atividade, enquanto não estiver adicionado à lista (Professores(as) que tem direito de aplicar a questão). Isso se deve ao fato de que podem existir professores que tenham desejo de criar questões, mas as mesmas não são para seus alunos. O autor da questão é definido pelo sistema. O autor será o professor que efetuou o cadastro da mesma. Para cada questão cadastrada é obrigatório o preenchimento dos seguintes campos: unidade, descrição, duas alternativas (A e B), a resposta correta e a unidade. No entanto são permitidas até cinco alternativas (A, B, C, D e E). Tanto para a descrição, quanto para cada alternativa é permitido anexar uma figura¹. A figura 9 apresenta todos os campos para cadastro das questões. _________________ ¹ figura elas apresentam tamanho e formato pré-determinado, indicado nas instruções do cadastro da questão. Para impedir o armazenamento em cachê das figuras, e proteger o sistema de informações incoerentes é usada a função md5(). [PHP.net website 2007]. Figura 9. Interface de cadastros das questões. Outro detalhe importante referente ao cadastro das questões é quanto ao campo “alternativa correta”. Assim como todos os cadastros do sistema são permitidas alterações, porém uma alteração em uma questão que os alunos já tenham respondido implica em alterações na tabela que gerencia os acertos e erros dos alunos. Como exemplo tem-se a seguinte situação: A pergunta. Qual a primeira letra da palavra “uva”. E as alternativas: a)letra “o”, b)letra “u”. Cadastra-se a correta como “b)”. Em seguida os alunos respondem a questão: a aluna Beatriz marca letra “b”, a aluna Ana marca letra “a”, caso haja uma alteração no cadastro da questão e seja alterada a alternativa correta para “a”, resultara que a aluna Beatriz terá errado a questão e a aluna Ana terá acertado a questão. No segundo momento os alunos comparam as próprias respostas com as corretas, e os professores comparam o desempenho dos mesmos. 4.2 Informações internas Internamente o Sistema armazena outras informações. Tais informações são invisíveis para os alunos e professores, porém são de grande importância. Por exemplo, o cadastro dos professores e alunos armazena uma informação chamada id. O id serve para identificar e diferenciar cada aluno entre os demais. Tal identificação será usada para relacionar, dentre outras identificações: a turma que pertence, questão respondida por aluno, as turmas de cada professor, as questões que cada docente pode aplicar, identificar o autor da questão, verificar se o aluno já respondeu a questão. 4.3 Relacionamentos A figura 10 ilustra uma proposta de relacionamentos do sistema. Figura 10. Relacionamentos do sistema. 4. Benefícios do Sistema O presente Sistema adota este tipo de exercício (optar por uma alternativa), pois é de uso muito comum em vestibulares e concursos. É possível permitir que os alunos pratiquem este tipo de atividade de uma forma ilustrada, interativa e educacional. O uso do sistema colabora na identificação das dificuldades dos alunos. Por exemplo, as questões respondidas corretamente ou incorretamente, assim sucessivamente. Esta verificação identifica a unidade com maior índice de erros, possibilitando ao docente criar estratégias de fixação e entendimento do conteúdo. 5. Conclusões Este trabalho destina-se a auxiliar o professor a fazer exercícios e avaliar os alunos. A forma que será adotada para realização dos exercícios colabora para captar a atenção. Isso se deve pelo fato de que as atividades proporcionam, como sua conseqüência, uma competição saudável entre os alunos. É possível ter uma ampla analise quantitativa sobre acertos e erros das questões. Com o uso do sistema será possível identificar focos de estudos, ou seja, identificar áreas de estudo que os alunos não obtiveram índice satisfatório de acertos. Tal decisão será embasada nas respostas dadas pelos alunos para as questões de determinada unidade, que será apresentada nos relatórios estatísticos. Conclui-se que o sistema auxilia o professor, capta a atenção do aluno, promove interatividade, oferece ao aluno uma forma simplificada de estudo. 5.1 Trabalhos futuros O Sistema permite que sejam agregados inúmeros recursos a ele. Inserir sons e vídeos nas questões seria uma ramificação de grande utilidade. O recurso multimídia representa uma exigência adicional nos computadores secundários. Contudo, seria um atrativo muito eficiente. Seria conveniente disponibilizar uma interface que proporcionasse uma forma de estudo mais avançada. Para incrementar e dar continuidade a este sistema seria aconselhável adicionar um módulo de perguntas descritivas, um módulo que realize a interpretação e a correção das respostas. Outro recurso de grande importância seria um corretor ortográfico. Referencias Suehring, Steve (2002) “MySQL a Bíblia”, tradução Edson Furmankiewicz, Editora Elsevier – 2º reimpressão, Rio de Janeiro. Choi, Wankyu e Kent, Allan e Lea, Chris e Prasad, Ganesh e Ullman, Chris (2001) “Beginning PHP4 Programando”, tradução Aldir José Coelho Correia da Silva / Flávia Cruz, Editora Makron Books, São Paulo. Holzschlag, Molly E. (2004) “250 Segredos para Web Designers”, Tradução de Marcus Vieira, Editora Elsevier, Rio de Janeiro. Feather, Stephen (1997) “JavaScript em exemplos”, Tradução e revisão técnica Álvaro Rodrigues Antunes, Editora Makron Books do Brasil Editora Ltda, São Paulo-SP. Kabir, Mohammed J. (2002) “Apache 2 Server, a Bíblia”, Tradução Vandenberg D. Souza, Editora Campus, Rio de Janeiro. Macedo, Lino de e Petty, Ana Lúcia Sícoli e Passos, Norimar Christe (2003) “4 Cores Senha e Dominó: Oficinas de jogos em uma perspectiva construtivista e psicopedagógica”, Editora Casa do Psicólogo, São Paulo, página 147. Tanenbaum, Andrew S. (2003) “Redes de computadores”, tradução Vandenberg O. de Souza, Editora Elsevier – 9º reimpressão, Rio de Janeiro, página 3. EvrSoft website 2007 [online] Disponível em: http://www.evrsoft.com/ [Acessado em março de 2007]. Castagnetto, Jessus and Rawat, Harish and Schumann, Sascha and Scollo, Chris and Veliath, Deepak (1999) “Professional PHP Programing”, Editora Worx Press Ltd, Uk USA. Converse, Tim e Park, Joyce (2001) “PHP 4 A Bíblia” Editora Campus, Rio de Janeiro. Adobe Acrobat website (2007) [online] Disponível em: http://www.adobe.com/br/products/acrobat/adobepdf.html [Acessado em março de 2007]. Gutmans, Andi and Saether, Bakken and Rethans, Derick (2005) “PHP 5 Programação Poderosa”, tradução Marcelo Soares e Andreza Gonçalves, Editora Alta Books, Rio de Janeiro – RJ. ADODB website (2007) [online] Disponível em: http://adodb.sourceforge.net/ [Acessado em março de 2007]. PhpMyAdmin (2007) [online] Disponível http://www.phpmyadmin.net/home_page/index.php [Acessado em março de 2007]. em FabForce website 2007 [online] Disponivel em http://www.fabforce.net/products.php [Acessado em março de 2007]. PHP.net website (2007) [online] Disponível em http://br.php.net/header [Acessado em março de 2007].