Tese de Doutorado: 30/11/2010, 09:00.

postado em 10 de nov de 2010 03:01 por Hyggo Oliveira de Almeida   [ 14 de fev de 2011 04:43 atualizado‎(s)‎ ]
Aluna: Andrea Mendonça.
Título: Programação Orientada ao Problema: Uma Metodologia para Entendimento de Problemas e Especificação no Contexto de Ensino de Programação para Iniciantes.
Local: Auditório do CEEI.
Banca Examinadora: Evandro de Barros Costa, DSc, IC/UFAL (Orientador), Dalton Serey Guerrero, DSc, DSC/UFCG (Orientador), Christina von Flach Garcia Chavez, DSc, UFBA, Sérgio Castelo Branco Soares, DSc, UFPE, Jorge C. Abrantes de Figueiredo, DSc, DSC/UFCG, Tiago Lima Massoni, DSc, DSC/UFCG.
Data: 30/11/2010.
Hora: 09:00.

Resumo: Tradicionalmente, as disciplinas de programação introdutória enfatizam o desenvolvimento do raciocínio lógico e a construção de programas mais que qualquer outra habilidade. Nestas disciplinas, problemas bem definidos são recursos utilizados para auxiliar os estudantes na aprendizagem de programação. Entretanto, essa abordagem de ensino apresenta um problema: ela não expõe os estudantes a um processo de resolução de problemas realístico, que contempla o espaço do problema (entendimento de problemas e especificação de requisitos) em conjunto com o espaço da solução (construção de programas). Em virtude disto, são freqüentes os relatos da literatura acerca das dificuldades dos estudantes iniciantes em lidar com entendimento de problemas mal-definidos e especificação de requisitos. Para tratar o problema apresentado, nós defendemos a tese de que as disciplinas de programação introdutória devem (i) utilizar estratégias de ensino que assumam a programação como parte da Engenharia de Software; e (ii) desenvolver atividades que permitam aos estudantes irem da especificação dos requisitos ao programa, por meio da resolução de problemas mal definidos. Baseados nesta tese, nós concebemos uma metodologia de ensino denominada Programação Orientada ao Problema (POP). POP caracteriza-se por um conjunto de atividades que podem ser facilmente inseridas na disciplina de programação para iniciantes. Ela é constituída por um ciclo de resolução de problemas que põe em prática atividades típicas da Engenharia de Software, tais como, elicitação e especificação de requisitos, testes e programação. Nós avaliamos POP por meio de estudos de caso e experimentos controlados. Nos experimentos, nós adotamos um conjunto de variáveis que consideramos representativas do bom desempenho dos estudantes para lidar com o espaço do problema em conjunto com o espaço da solução. Das variáveis observadas, em 83,3% delas os estudantes POP foram mais eficientes que os estudantes não POP. Para exemplificarmos, nos dois experimentos, os estudantes POP documentaram, em média, mais de 79% de requisitos que os estudantes não POP. Além disso, implementaram 4 versões a menos do programa para atender a todos os requisitos, quando comparados aos estudantes não-POP. Embora os resultados não possam ser generalizados, o tratamento que fizemos das ameaças à validade  nos permite aferir a qualidade dos resultados obtidos.

Agradecemos a sua presença.