• Nenhum resultado encontrado

Uma rubrica para avaliação de cursos de programação centrada em avaliação automática

N/A
N/A
Protected

Academic year: 2021

Share "Uma rubrica para avaliação de cursos de programação centrada em avaliação automática"

Copied!
8
0
0

Texto

(1)

Uma rubrica para avaliação de cursos de programação

centrada em avaliação automática

Antonio S. Lobato2, Aleksandra S. Silva1, Adriano D. P. Lino1, Eloi L. Favero1,2,

Maria da Penha A. A. Harb1, Silvana R. de Brito1, Lucélia P. Gonçalves

1

Programa de Pós-Graduação em Engenharia Elétrica - Universidade Federal do Pará (UFPA) Caixa postal 479 - 66075-110 - Belém - Pará – Brasil 2

Programa de Pós-Graduação em Ciência da Computação - Universidade Federal do Pará (UFPA) Caixa postal 479 - 66075-110 - Belém - Pará – Brasil

aleka@unama.br,{aleka, alobato, adrianod, favero, mpenha, srossy}@ufpa.br, luceliapgoncalves@gmail.com

Abstract. A rubric is a form or system that allows evaluating in accord to

different criteria and levels of knowledge. In the context of the automatic evaluation for programming, the rubrics can be used to define the criteria of the teacher’s evaluation and to adjust the evaluation system for different projects of courses. We present a solution based on automatic evaluation and rubrics to assist the evaluation of the programming activities.

Resumo. Uma rubrica é uma forma ou sistema que permite avaliar de acordo

com diferentes critérios e níveis de conhecimento. No contexto da avaliação automática para programação, as rubricas podem ser utilizadas para definir os critérios de avaliação do professor e adequar o sistema de avaliação para diferentes projetos de cursos. Rubricas centradas em atividades com avaliação automática é uma solução para inúmeros problemas no ensino de programação.

1. Introdução

Por muitos anos o sistema tradicional de avaliação escolar tem perpetuado. Entre os parceiros do processo de ensino-apredizagem (professor-aluno) há uma avaliação (prova) que medeia o saber repassado pelo professor e o adquirido pelo aluno. Importunamente este método tradicional caracteriza a avaliação somativa, que permite a observação da aprendizagem do aluno em um único momento, e não continuamente, processualmente.

Nos Cursos relacionados à área da computação existem várias disciplinas voltadas para a programação: Pascal, Java, Prolog, SQL, etc. No entanto ainda temos poucas ferramentas automáticas, que auxiliam tanto o aluno quanto o professor no processo ensino-aprendizagem. Este trabalho aponta alguns problemas existentes no ensino de disciplinas de programação e propõe uma solução para parte deles por meio da rubrica, que busca a dinamização do tradicional método avaliativo (pontual e somativo), visto que nela a avaliação se dará de forma continua e automática.

É bem verdade que na literatura especializada encontramos vários trabalhos de ferramentas, que auxiliam as atividades de programação [Almeida et al. 2002]. Porém, essas ferramentas tipicamente atuam de forma isolada, focalizando apenas algum aspecto da prática de ensino de uma disciplina de programação, tais como: a compilação e

(2)

execução do código; a prática de exercícios de programação com avaliação automática (avaliação pelo retorno) [Fowler 1999]; ou simuladores ou depuradores com animação de código [Stasko 1990].

Por outro lado também tem crescido o desenvolvimento de ferramentas de uso geral, que facilitam a criação de exercícios com avaliação automática. Por exemplo, sempre existiram sistemas de “instrução dirigida” baseado em questões objetivas com avaliação automática. Agora estamos caminhando em direção a sistemas que avaliam de forma automática também questões não objetivas: a) questões e problemas em que as respostas são Mapas Conceituais [Rocha et al. 2005]; b) questões com respostas discursivas [Santos et al. 2007].

Assim, a rubrica, vista como um sistema de classificação, além de dinamizar o processo avaliativo, permite ao professor uma melhor observação quanto ao desenvolvimento cognitivo do aluno, uma vez que a proficiência do educando é avaliada em todas as etapas e não em um único momento como se presta a avaliação tradicional. Segundo Airasian [1991], Popham [1995], Stiggins [1994 apud MEC2 2001] o conceito de rubrica é: “[...] um sistema de classificação pelo qual o professor determina a que nível de proficiência um aluno é capaz de desempenhar uma tarefa ou apresentar/evidenciar conhecimento de um conteúdo/conceito...”.

Este artigo propõe uma rubrica que reúne diferentes recursos, centrados em atividades com avaliação automática. A idéia é montar um curso centrado na web e dividido em módulos ou unidades. Cada módulo abrange um assunto, sobre o qual são elaborados exercícios simples e complexos, os quais testarão se o estudante apresenta resposta positiva ou negativa quanto ao processo de aprendizagem. O trabalho está estruturado da seguinte forma: a seção 2 apresenta alguns trabalhos relacionados ao tema rubrica, a 3 trata dos problemas e soluções no acompanhamento dos estudantes em atividades de programação; já a 4 apresenta o uso da rubrica de avaliação em um estudo de caso e, finalmente, a 5 apresenta as considerações finais do trabalho.

2. Trabalhos Relacionados

2.1 Ambientes para ensino de programação

Na literatura encontramos diversas ferramentas desenvolvidas para o ensino de programação. Muitas utilizam uma pseudo-linguagem para descrever algoritmos: uma linguagem intermediária entre a linguagem natural e uma linguagem de programação, com o objetivo de facilitar o entendimento do código por parte dos estudantes. Nesta categoria, Almeida et al. [2004] descrevem o ambiente AMBAP e Silva e Favero [2005] descrevem o ambiente VisualPseudo. Noutra linha, Gomes e Mendes [2000] descrevem o ambiente SICAS, centrado em fluxogramas com símbolos diagramáticos, focando mais a estrutura dos algoritmos.

Outra abordagem que vem sendo pesquisada há algum tempo é a animação de algoritmos, como exemplo temos os sistemas de BALSA [Brown e Sedgewick 1984], TANGO [Stasko 1990] e JAWAA [Pierson e Rodger 1998]. Esses sistemas ainda não mostram a animação do algoritmo associado à estrutura dados (ou apenas permitem acesso a um subconjunto limitado de estruturas de dados). Já o JEliot [Moreno et al. 2004] é um sistema que permite a visualização e animação de qualquer código Java inclusive mostrando as estruturas de dados. Outro exemplo é o ProPAT [Barros et al. 2005] que,

(3)

como um plugin para o Eclipse, permite duas perspectivas: a perspectiva do estudante, que escolhe exercícios de programação e desenvolve soluções para estes, e a do professor, que pode especificar novos exercícios aos estudantes. O ProPAT utiliza, para isso, uma base de dados em XML.

2.2 Rubrica

Já existem artigos relacionados à utilização da rubrica como meio de dinamizar o processo de avaliação da aprendizagem, entre eles pode-se citar: “Utilização de Rubricas na avaliação de aprendizagem em atividades desenvolvidas a distância” [Roque 2006]. Porém, o referido trabalho limita-se somente a um esboço de utilização da mesma no processo avaliativo. Não há uma ambiente automatizado de aprendizagem para sua aplicabilidade.

3. Problemas e soluções no acompanhamento dos estudantes em atividades de programação

Examinando os diversos trabalhos relacionados a ambientes automatizados de apoio as atividades de programação bem como outros levantados na experiência com nosso ambiente de apoio ao ensino de SQL [Lino et al. 2007], coletamos a seguinte lista de problemas:

a) Problema da avaliação pelo retorno: Os sistemas que avaliam algoritmos pelo método avaliação pelo retorno testam se o programa do aluno retorna o mesmo que o programa-resposta do professor. Uma solução parcial para este problema foi desenvolvida em um ambiente de programação SQL em Lino et al. [2007].

b) Problema de pouco tempo para aulas práticas de laboratório: Temos o problema do tempo de aula reduzido, onde o estudante frequentemente não tem a oportunidade de analisar sua solução para o problema proposto. A solução para este problema é utilizar um método de avaliação automática para os exercícios de programação.

c) Problema do acompanhamento continuado: Do ponto de vista do professor, o elevado número de estudantes compromete o acompanhamento de cada solução

de programação proposta. Uma solução é disponibilizar um ambiente via Web

com avaliação automática, onde o aluno pode acessá-lo a qualquer momento. d) Problema do acompanhamento não presencial: A ausência física do professor,

em parte, passa a ser um problema. Essa dificuldade deve-se à comunicação limitada do professor com o estudante, daí para prover um feedback rápido (senão imediato), numa atividade de laboratório, o professor pode ser auxiliado por um monitor. Ainda assim, dependendo dos recursos disponíveis, nem sempre é possível dispor de monitores suficientes para executar essa tarefa. A solução parcial está em oferecer um AVA (ambiente virtual de aprendizagem) em que o discente não tivesse dificuldade de manuseio e que seja assistido por um tutor inteligente. Em parte o AVA amigável pode trazer uma maior motivação ao aluno. e) Problema de avaliação de questões não objetivas. O grande desafio das questões

não objetivas é desenvolver sistemas que trabalhem com avaliação automática das questões não objetivas, que podem ser de notações diagramáticas como mapas conceituais ou questões discursivas.

(4)

4. Estudo de caso: rubrica de avaliação para aprendizagem de programação

Um ambiente virtual de apoio ao processo de ensino-aprendizagem de programação deve prover ferramentas e facilidades para o estudante praticar suas atividades. Além disso, deve propiciar a interação entre professores e estudantes de maneira dinâmica e deve ter também um processo de acompanhamento centrado na avaliação formativa e continuada. Este ambiente deve fornecer ao professor informações valiosas a respeito das dificuldades dos estudantes, possibilitando ajustes na prática de ensino, dando novas oportunidades para cada estudante aprender, melhorar e refletir sobre o seu desempenho. Ao final do processo, cabe ao professor a tarefa de consolidar a avaliação, atribuindo valores para compor a nota ou conceito final.

Alguns autores, como Roque [2004], Depresbiteris [1989] e Busching [1998], recomendam o uso de rubricas na avaliação, pois elas permitem um detalhamento mais claro do processo de avaliação e ao mesmo tempo facilitam o diagnóstico de problemas específicos dentro do processo de ensino-aprendizagem.

4.1 Ambiente utilizado: LabSQL

A rubrica proposta está sendo utilizada em um ambiente para o ensino de SQL On-Line - LabSQL [Lino et al. 2007]. O LabSQL é um ambiente interativo para auxiliar os estudantes no aprendizado de SQL e pode ser utilizado como ferramenta de apoio ao professor para realizar avaliações nas atividades de laboratório. Atualmente, esse ambiente já foi utilizado em mais de uma dezena de turmas de disciplina de Banco de Dados (BD) dos Cursos de Bacharelado em Ciência da Computação e Sistemas de Informação da Universidade Federal do Pará (UFPA) para ensino de programação de SQL.

4.2. Interface de aprendizagem no LabSQL

No LabSQL, o estudante possui interfaces apropriadas para diferentes tipos de questões. No caso das questões de programação, cada consulta pode ser submetida ao Interpretador SQL (figura 1), que executa e retorna o resultado da consulta, utilizando a base de testes; se a execução da consulta do estudante retorna o resultado correto, então o seu código é avaliado pelas métricas, que em essência medem a distância da consulta em relação à resposta do professor. Pelas métricas, a resposta do estudante pode superar a resposta do professor (por exemplo, 104%) dando ao estudante maior motivação (“idéia de superação do professor”). O professor pode (opcionalmente) comentar a resposta de cada estudante. As interações dos estudantes são registradas para acompanhamento pelos professores.

(5)

Figura 1. Interface do estudante: Avaliação automática de uma consulta SQL (à esquerda) e sumário das submissões (á direita).

4.3. Composição de uma rubrica para a avaliação de programação

No LabSQL, o professor pode estruturar um curso (ou parte do curso) em módulos, sendo que cada módulo pode ser composto de diferentes atividades, como por exemplo: questões objetivas/subjetivas, diagramáticas ou de programação. Além disso, as atividades podem ser campeonatos ou mini-aplicações. Existem atividades durante todo o curso que podem servir como meio de avaliação indireto: participações em fóruns, mensagens entre estudantes e outras interações no ambiente.

A estrutura do curso é fundamental para a construção da rubrica. O professor pode montar uma rubrica, por exemplo, para um curso todo (considere um curso de extensão em SQL) ou para cada avaliação do curso (por exemplo, uma rubrica para cada uma das avaliações bimestrais). No exemplo abaixo utilizamos a rubrica para cobrir uma parte da avaliação da disciplina de BD, considerando essencialmente as atividades de laboratório.

Utilizamos o esquema de rubricas (tabela 1), com pesos diferenciados para cada módulo. A partir da rubrica, os mecanismos de avaliação automática para o LabSQL sugerem um conceito (Excelente, Bom, Regular, Insuficiente) para cada estudante. O estudante e o professor têm acesso à avaliação durante o curso.

Tabela 1: Esquema de rubricas dos módulos do Curso de SQL

Atividades Descrição Dimensão Peso

Módulo I Conceitos de BD (banco de dados) relacionais e MER

1,2,4 0.5 Módulo II Criação de BD, consultas com uma tabela, e

operações de atualização

1,2,3,4 1.0 Módulo III Consultas com várias tabelas 1,2,3,4 1.0 Módulo IV Tipos de dados e expressões 1,2,3,4 1.0 Módulo V Group by & Having & Consultas complexas 1,2,3,4 1.0 Módulo VI Juntando tudo: Consultas Complexas 1,2,3,4 1.0 Campeonato Campeonatos relacionados a um ou mais

módulos

1,2,3,4 0.3

Mini-Aplicação

Modelagem Conceitual e Construção de pequenas aplicações

1,2,3,4 0.5 Módulo VII Tópicos especiais: store procedures &

triggers

1,2,3,4 1.0

Cada módulo possui também uma sub-rubrica, com pesos estabelecidos para cada critério definido pelo professor (peso por grupo). Abaixo, na tabela 2, temos o exemplo de uma sub-rubrica que é utilizada no curso de BD com o uso do ambiente LabSQL.

Tabela 2: Sub-Rubrica para um módulo

Dim Critério Estratégias Peso/

estratégia Peso/ Critério/Dimensão 1 Informação/leitura Questões objetivas Preencher lacunas 0.5% 0.5% 0.1% 2 Raciocínio conceitual, Questões subjetivas 0.5% 0.5% 0.2%

(6)

relacional entre múltiplos conceitos Mapa conceitual 3 Conhecimento prático (programação) Avaliação pelo retorno Processo de refatoração 0.7% 0.3% 0.6% 4 Comportamento subjacente às atividades 1) fóruns 2) submissões 3) acessos 4) atividade 0.3% 0.3% 0.1% 0.3% 0.1%

Nessa rubrica, são estabelecidos pesos para cada estratégia que compõe o módulo. Uma estratégia está associada a um critério de avaliação, sendo esse critério avaliado ou não em um módulo (a relação entre a tabela 1 e 2 é realizada pela coluna dimensão na rubrica do curso); cada estratégia também possui um peso, que determina sua participação no critério avaliado, e cada critério também possui um peso dentro do módulo avaliado.

A figura 2 mostra a tela da rubrica implementada no LabSQL, onde o professor pode gerenciar os pesos das dimensões, bem como atribuir pesos para cada módulo.

Figura 2: Tela da rubrica no LabSQL.

4.4. Interface de mediação a partir da rubrica proposta

A interface de mediação contempla as interações do professor com os estudantes, a especificação de problemas e soluções e apresentação dos resultados a partir da rubrica.

O professor pode acompanhar o estudante considerando a rubrica por módulo (figura 3) ou por avaliação (a rubrica completa). A visualização por estudante pode ser resumida ou detalhada. O detalhamento apresenta o resultado da avaliação automática individual de cada estratégia utilizada (na figura 2 foram utilizadas questões V/F, discursivas e de programação). O relatório permite identificar diversos aspectos para acompanhamento das atividades dos estudantes (número de tentativas, pontuação), contendo links para o detalhamento e encaminhamento do feedback personalizado pelo professor.

(7)

Pergunta 1- T

(Idq.108) (Idq.110) 2-T (Idq.116) 3-R (Idq.120) 4- R (Idq.121) 5-R (Idq.123) 6- R (Idq.128) 7- P (Idq.130) 8-P (Idq.131) 9- P (Idq.132) 10-P F ina lNota

Maior

Pontuação: 1 1 7 7.76 8.25 7 102.88 103.96 109.12 100 9

Nº Tentativas: 1/1 1/1 1/3 1/3 1/3 1/1 1/25 1/25 1/25 1/25

Pergunta (Idq.106) 1- T (Idq.111) 2-T (Idq.118) 3-R (Idq.120) 4- R (Idq.121) 5-R (Idq.122) 6- R (Idq.125) 7- P (Idq.127) 8-P (Idq.130) 9- P (Idq.132) 10-P F ina lNota Maior

Pontuação: 1 1 6 7 5.94 5.29 96.23 114.65 106.69 101.87 8.42

Nº Tentativas: 1/1 1/1 2/3 2/3 2/3 1/1 1/25 2/25 5/25 6/25

03 08 80 230 1 - A D A LB ER T OR D OS R EM ÉD IOS SILVA J UN IO

03 08 8012 01 - A LB ER T O WILLIA M S C OR R E A F ER R EIR A

Figura 3. Relatório de acompanhamento do aprendiz em exercícios de SQL

No nível da rubrica por avaliação, o professor pode visualizar o desempenho de cada estudantes por módulo e/ou global de acordo com os módulos realizados (figura 3). O estudante visualiza apenas o registro de seu próprio desempenho, sendo possível, assim como o professor, enviar um feedback para o professor sobre a estratégia utilizada, bastando para isso, clicar no módulo que deseja comentar. Como resultado, o professor recebe o feedback dos estudantes e pode reavaliar as estratégias utilizadas, considerando fatores tais como tempo médio que os estudantes levam para responder uma questão e grau de dificuldade da questão. A figura 4 é baseada na rubrica da tabela 2 (os nomes dos estudantes foram omitidos).

M 1 M 2 M 3 M 4 M 5 M 6 M 7 C ampeo nato s A plicacaoM ini N o ta F inal C o nceito

Aluno 1 7,00 9,64 9,50 8,50 9,75 9,00 8,75 9,00 9,50 9,05 EXC Aluno 2 2,75 6,00 2,00 6,50 6,30 4,50 5,00 5,50 3,50 4,80 INS Aluno 3 8,00 8,20 9,90 4,00 8,50 7,75 9,50 8,43 8,65 8,04 BOM Aluno 4 6,00 2,00 6,00 9,50 6,00 4,00 2,00 9,50 8,81 5,45 REG Aluno 5 7,50 4,00 8,50 3,00 9,30 6,00 7,50 8,55 6,70 6,57 REG N o me M ó dulo s

A co mpanhamento do C urso em Janeiro de 2007

Figura 4. Relatório de freqüência por avaliação.

5. Considerações Finais

O aspecto mais subjetivo da atividade de programação está diretamente ligado à criatividade. Esse aspecto pode ser medido e utilizado para motivar o estudante a aperfeiçoar sua solução, refatorando o código em direção ao “programa ideal”.

Essa proposta apresenta uma rubrica de programação centrada na coleta de informações a partir de exercícios que são automaticamente avaliados pelo sistema bem como com medidas indiretas de avaliação (que são dados coletados no uso do ambiente para cada aluno). A principal motivação está na agilidade do feedback para o estudante ao mesmo tempo em que buscamos reduzir a sobrecarga de trabalho do professor nas atividades de laboratório, como dúvidas triviais ou com a correção de pequenos exercícios em sala. Esse benefício deve contribuir para melhorar a qualidade das interações dos estudantes com o professor.

Variações da rubrica proposta vêm sendo usadas em mais de uma dezena de turmas de uma disciplina de Banco de Dados, na UFPA, em cursos de graduação (Bacharelado em Ciência da Computação e Sistemas de Informação) e cursos de Especialização. Atualmente, estamos estendendo esta solução para novas linguagens de programação: Introdução a Programação com Java e Introdução a Programação em Prolog.

(8)

Almeida, Eliana S.; Costa, Evandro De B.; Silva, Klebson Dos S.; Paes, Rodrigo De B.; Almeida, André Atanasio M.; BRAGA, Julian D. Herrera. Ambap: um ambiente de

apoio ao aprendizado de programação. In: Anais do Workshop Sobre Educação Em

Computação, Florianópolis, 2002.

____.J. D., Filho, L.J.S., Almeida, H.O.A, Costa, E.B., Vieira, B.L., Melo1, M.D. “Um Ambiente Integrado para auxílio ao Ensino de Ciência da Computação”, Revista Digital da CVA, Vol. 2 – nº8, Setembro, 2004

Barros, L.N., Mota, A.P.S., Delgado, K.V., Matsumoto, P.M. “A Tool for Programming Learning with Pedagogical Patterns", eclipse’05, San Diego, Estados Unidos, 2005. Busching B. (1998) Grading inquiry projects, In: Anderson, Rebecca S., Speck, Bruce W.

(Editors), Changing the Way We Grade Student Performance, p.89-96.

Depresbiteris, L. (1989) O desafio da avaliação da aprendizagem: dos fundamentos a uma proposta inovadora, São Paulo, E.P.U.

Fowler, M. (1999) “Refactoring: Improving the design of existing programs”, Addison-Wesley, Glass (1998) R. L. Glass. "Maintenance: Less is not more", IEEE Software, July/August.

Gomes, A. E MENDES, A. J. Suporte à aprendizagem da programação com o ambiente

SICAS. Actas do V Congresso Ibero-Americano de Informática Educativa, Viña del

Mar, Chile, 2000.

Lino, A. D. P., Silva, A. S., Santos, T.L.T. Harb, M.P.A.H., Favero, E.L., Brito, S.R.

Avaliação automática de consultas SQL em ambiente virtual de ensino-aprendizagem.

Conferencia Ibérica de Sistemas y Tecnologías de la Información. CISTI 2007.

Moreno,A. , N., Sutinen, E. ,Ben-Ari, M. "Visualizing Programs with Jeliot 3", Proceedings of the Advanced Visual Interfaces, 2004.

Pierson , W.C., Rodger, S.H., "Web-based Animation of Data Structures Using JAWAA",1998.

Rocha, F. E. L., Costa Jr, J. V., Favero, E. L. Como usar Ontologias na Aprendizagem Significativa mediada por Mapas conceituais, Revista Brasileria de Informática na Educação (RBIE) , 13(2), 53-64, 2005.

Roque, Gianna Oliveira (2004) “Uma proposta de um modelo de avaliação de aprendizagem por competências para cursos a distância baseados na web”, Dissertação de Mestrado em Informática, Rio de Janeiro, UFRJ/ IM /NCE, xii, 158 f.:il.

____, Elia, M. da F. et al. Utilização de rubricas na avaliação da aprendizagem em atividades desenvolvidas a distancia, XII Workshop de Informática na Escola, Campo Grande, 2006. Santos, T.L.T, Lino, A. P. A. S., Silva, Santos, T.L.T. Harb, M.P.A.H., Favero, E.L.

Avaliação automática de questões conceituais discursivas. TIL´2007. Congresso da

Referências

Documentos relacionados

Nessa situação temos claramente a relação de tecnovívio apresentado por Dubatti (2012) operando, visto que nessa experiência ambos os atores tra- çam um diálogo que não se dá

Equipamentos de emergência imediatamente acessíveis, com instruções de utilização. Assegurar-se que os lava- olhos e os chuveiros de segurança estejam próximos ao local de

Segundo José Ribas Vieira, “A Faculdade de Direito de Niterói exerceu para o antigo Estado do Rio de Janeiro o mesmo papel desempenhado pela antiga Faculdade Nacional de Direito

O objetivo desse estudo é realizar uma revisão sobre as estratégias fisioterapêuticas utilizadas no tratamento da lesão de LLA - labrum acetabular, relacionada à traumas

Por fim, dada as previstas asserções, o presente artigo conclui a nulidade da Língua Esperanto como proposta de embate ao imperialismo americano, conquanto, o

Assim, a adaptação da Escala de Silhuetas (KAKESHITA, 2004) de acordo com o biótipo brasileiro buscou atender às recomendações quanto a adequação de um instrumento ao contexto

54 hora que o aluno for fazer a matricula, pra que o professor possa começa a ser pontuado profissionalmente e com essa pontuação ele possa ou ser premiado o alguém investir pra

Para tanto, as amostras sangüíneas foram obtidas de 3 pacientes com adenocarcinoma de próstata, sendo que um deles havia sido submetido ao tratamento radioterápico.. As