POPT: Uma Abordagem de Ensino de Programação Orientada a Problema e Testes
Teste de Software, Programação Orientada a Problema, Ensino.
Há um interesse crescente da comunidde de educação de Ciência da Computação com relação à inclusão de conceitos de testes em cursos introdutórios de programação. No entanto, inserir conceitos de teste de software para alunos iniciantes dos Cursos de Ciência da Computação pode ser particularmente difícil, pois além de aprender as estruturas básicas de programação (e.g., estruturas de controle, estruturas de repetição, comandos de entrada e saída), os alunos precisam lidar com as peculiaridades das técnicas e ferramentas de testes. Por esse motivo, as grades curriculares muitas vezes relegam tópicos de teste para períodos mais avançados ou cursos separados, fazendo com que os alunos pensem que teste de software é difícil, menos importante, ou opcional. Neste trabalho é proposta POPT (do ingles: Problem Oriented Programming and Testing) , uma abordagem de ensino de programação orientada a problema e testes para cursos introdutórios. O principal objetivo de POPT, é o de melhorar o método tradicional de ensino de introdução a programação que se concentra essencialmente na implementação e negligencia o teste. De acordo com POPT, as habilidades dos alunos devem ser desenvolvidas para lidar com problemas mal definidos, a partir do qual os alunos são estimulados a desenvolver casos de teste a fim de ampliar o entendimento sobre os requisitos e melhorar a qualidade do código gerado. Este trabalho apresenta POPT e um caso estudo realizado em um curso introdutório de programação de um Programa de Ciência da Computação da Universidade Federal do Rio Grande do Norte, Brasil. Os resultados do estudo mostraram que, quando comparado com uma abordagem tradicional, POPT estimula a implementação de programas de melhor qualidade – a primeira versão dos programas submetidos pelos alunos POPT passaram em duas vezes o número de casos de teste (definidos pelo professor) quando comparados aos alunos não POPT. Além disso, os alunos POPT apresentaram menos versões do programa e passaram mais tempo para apresentar a primeira versão para o sistema de avaliação automática, o que nos leva a pensar que os alunos são estimulados a pensar melhor sobre a solução que eles estão a programar.