Analogus: Um Ambiente para Auxílio ao Ensino de Programação Orientado pelo Raciocínio por Analogia

  • Gilson P. dos Santos Júnior UFCG
  • Joseana Macêdo Fechine UFCG
  • Evandro de Barros Costa UFCG / UFAL

Resumo


Aprender a solucionar problemas algoritmicamente é um dos principais desafios no aprendizado das disciplinas de introdução à programação, uma vez que os alunos iniciantes sentem dificuldades em empregar uma das principais formas de raciocínio utilizadas pelos programadores experientes: raciocínio por meio de analogia. Para auxiliar o aluno no aprimoramento das habilidades de resolução de problemas por meio de analogias foi desenvolvido o Analogus. O Analogus é um ambiente de resolução de problemas de programação que ajuda ao aluno a identificar problemas resolvidos similares ao atual, por meio de um raciocinador baseado em casos, ao mesmo tempo um chatterbot o auxilia a refletir sobre os aspectos de similaridade.

Referências

Aamodt, A. and Plaza, E. (1994). Case-based reasoning: foundational issues, methodological variations, and system approach. 7:1:39–59.

Agudo, B. D., Pedro, Juan, and Sánchez, A. (2007). Building cbr systems with jcolibri. Special Issue on Experimental Software and Toolkits of the Journal Science of Computer Programming, 69(1-3):68–75.

Barreto, E., Romao, M., Neto, F., Mendonça, A., Santos, G. P. S., and Fechine, J. M. (2008). Uma aplicação de algoritmos genéticos interativos para composição de listas de problemas de programação.

Bergin, J., Brady, A., Duvall, R., Proulx, V., and Rasala, R. (2001). Using patterns in the classroom. In CCSC ’01: Proceedings of the sixth annual CCSC northeastern conference on The journal of computing in small colleges, páginas 5–7, , USA. Consortium for Computing Sciences in Colleges.

de Barros, L. N., Ana, Delgado, K. V., and Matsumoto, P. M. (2005). A tool for programming learning with pedagogical patterns. In eclipse ’05: Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange, páginas 125–129, New York, NY, USA. ACM.

Delgado, K. V. (2005). Diagnóstico baseado em modelos num sistema tutor inteligente para programação com padrões pedagógicos. Master’s thesis, Instituto de Matemática e Estatística da Universidade de São Paulo.

Haberman, B. and Muller, O. (2008). Teaching abstraction to novices: Pattern-based and adt-based problem-solving processes. In 38th ASEE/IEEE Frontiers in Education Conference.

Koslosky, M. A. (1999). Aprendizagem baseada em casos - um ambiente de ensino de programação. Master’s thesis, Universidade Federal de Santa Catarina.

Leonhardt, M. D., Castro, D. D., Dutra, R. L., and Tarouco, L. M. (2003). Elektra: Um chatterbot para uso em ambiente educacional. 1.

Leonhardt, M. D., Tarouco, L., Vicari, R. M., Santos, E. R., and Dos (2007). Using chatbots for network management training through problem-based oriented education. In Advanced Learning Technologies, 2007. ICALT 2007. Seventh IEEE International Conference on, páginas 845–847.

Mattos, M. M. (2002). Learning how to build abstractions in programming logics classes. 6.

Muller, O. (2005). Pattern oriented instruction and the enhancement of analogical reasoning. In ICER ’05: Proceedings of the 2005 international workshop on Computing education research, páginas 57–67, New York, NY, USA. ACM.

Muller, O. (2008). Developing algorithmic problem-solvin skills - the rationale underlying a course.

Muller, O., Ginat, D., and Haberman, B. (2007). Pattern-oriented instruction and its influence on problem decomposition and solution construction. In ITiCSE ’07: Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education, páginas 151–155, New York, NY, USA. ACM.

Muller, O., Haberman, B., and Averbuch, H. (2004). (an almost) pedagogical pattern for pattern-based problem-solving instruction. In ITiCSE ’04: Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education, páginas 102–106, New York, NY, USA. ACM.

Oliveira, C. H. J. S., Greghi, R. R., and Pimentel, E. P. (2008). Ambiente para assistência à aprendizagem e programação baseado em padrões pedagógicos.

Pirrone, R., Cannella, V., and Russo, G. (2008). Gaiml: A new language for verbal and graphical interaction in chatbots. In Complex, Intelligent and Software Intensive Systems, 2008. CISIS 2008. International Conference on, páginas 715–720.

Proulx, V. K. (2000). Programming patterns and design patterns in the introductory computer science course. In SIGCSE ’00: Proceedings of the thirty-first SIGCSE technical symposium on Computer science education, páginas 80–84, New York, NY, USA. ACM.

Recio-García, J. A., Díaz-Agudo, B., and González-Calero, P. (2008). Jcolibri2 tutorial. Technical report.

Santos, Costa, E., and Fechine, J. M. (2008). Raciocínio baseado em casos para auxílio a alunos na resolução de problemas por analogia - uma abordagem para representação e recuperação de casos.
Publicado
20/07/2009
SANTOS JÚNIOR, Gilson P. dos; FECHINE, Joseana Macêdo; COSTA, Evandro de Barros. Analogus: Um Ambiente para Auxílio ao Ensino de Programação Orientado pelo Raciocínio por Analogia. In: WORKSHOP SOBRE EDUCAÇÃO EM COMPUTAÇÃO (WEI), 17. , 2009, Bento Gonçalves/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2009 . p. 499-508. ISSN 2595-6175.