skip to main content
10.1145/1117696.1117722acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

A tool for programming learning with pedagogical patterns

Published: 16 October 2005 Publication History

Abstract

Programming Patterns help create a shared language for communicating insight and experience about programming problems and their solutions. Inspired by this idea, we developed the PROPAT e-learning tool: an Eclipse IDE that allows students of a first Computer Science course to learn how to program using pedagogical patterns, i.e., a set of programming patterns recommended by Computer Science educators. PROPAT has been implemented as an Eclipse plugin with two main perspectives: the Teacher Perspective and the Student Perspective. To identify some of the students' mistakes, the PROPAT plug-in also includes a program diagnosis system that uses Model Based Diagnosis techniques from the Artificial Inteligence.

References

[1]
Patterns and Software: Essential Concepts and Terminology http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html.
[2]
Astrachan, O. and Wallingford, E. (1998). Loop Patterns. http://www.cs.duke.edu/ola/patterns/plopd/loops.html.
[3]
Barros, L. N., Delgado, K. V., and G. Machion, A. C. (2004). An ITS for programming to explore practical reasoning. In Proceedings of the Brazilian Conference on Computer in Education.
[4]
Bergin, J. (1999). Patterns for Selection Version 4. http://csis.pace.edu/ bergin/patterns/Patternsv4.html.
[5]
Bridgeman, S. (2002). Intro to Computing I. http://cs.colgate.edu/faculty/stina/courses/cosc/101/f02/syllabus.html.
[6]
CDT Plug-in (2000). The eclipse CDT Plug-in. http://www.eclipse.org/cdt'/.
[7]
Delgado, K. V. and de Barros, L. N. (2004). Propat: A programming ITS based on pedagogical patterns. In Proceedings of Intelligent Tutoring Systems, volume 3220 of Lecture Notes in Computer Science, pages 812--814. Springer Verlag.
[8]
Teaching Research and Development with the Eclipse Platform (2004). http://eclipse.ime.usp.br.
[9]
Johnson, W. L. and Soloway, E. (1984). Proust: Knowledge-based program understanding. In Proceedings of the 7th international conference on Software engineering, Florida, United States, pages 369 -- 380.
[10]
Mateis, C., Stumptner, M., and Wotawa, F. (2000). A Value-Based Diagnosis Model for Java Programs. In 11th International Workshop on Principles of Diagnosis (DX). http://www.dbai.tuwien.ac.at/staff/wotawa/dx2000c.ps.gz.
[11]
Parr, Terence. (1989). ANTLR: Parser Generator http://www.antlr.org/.
[12]
Porter, R. and Calder, P. (2003). A pattern-based problem-solving process for novice programmers. In Proceedings of the fifth Australasian Conference on Computing Education, pages 231--238. Australian Computer Society, Inc.
[13]
Proulx, V. K. (2000). Programming patterns and design patterns in the introductory computer science course. In Proceedings of the thirty-first SIGCSE Technical Symposium on Computer Science Education, pages 80--84. ACM Press.
[14]
Wallingford, E. (2001). The Elementary Patterns Home Page. http://www.cs.uni.edu/wallingf/patterns/elementary/.
[15]
Winslow, E. (1996). Programming Pedagogy - A Psyclological Overview. In ACM SIGCSE Bulletin. Vol. 28 No.3.

Cited By

View all
  • (2024)Identification of Student Programming Patterns through Clickstream Data2024 IEEE International Conference on Computing, Power and Communication Technologies (IC2PCT)10.1109/IC2PCT60090.2024.10486775(1153-1158)Online publication date: 9-Feb-2024
  • (2022)[Paper] A Study of Grammar-Concept Understanding Problem in C Programming Learning Assistant SystemITE Transactions on Media Technology and Applications10.3169/mta.10.19810:4(198-207)Online publication date: 2022
  • (2021)A Study of Element Fill-in-Blank Problems for C Programming Learning Assistant SystemInternational Journal of Information and Education Technology10.18178/ijiet.2021.11.6.152011:6(255-261)Online publication date: 2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
eclipse '05: Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
October 2005
141 pages
ISBN:1595933425
DOI:10.1145/1117696
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 October 2005

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. computer-based learning
  2. debugging and testing tools
  3. teaching introductory undergraduate programming

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 38 of 79 submissions, 48%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Identification of Student Programming Patterns through Clickstream Data2024 IEEE International Conference on Computing, Power and Communication Technologies (IC2PCT)10.1109/IC2PCT60090.2024.10486775(1153-1158)Online publication date: 9-Feb-2024
  • (2022)[Paper] A Study of Grammar-Concept Understanding Problem in C Programming Learning Assistant SystemITE Transactions on Media Technology and Applications10.3169/mta.10.19810:4(198-207)Online publication date: 2022
  • (2021)A Study of Element Fill-in-Blank Problems for C Programming Learning Assistant SystemInternational Journal of Information and Education Technology10.18178/ijiet.2021.11.6.152011:6(255-261)Online publication date: 2021
  • (2019)Scaffolding support through integration of learning materialSmart Learning Environments10.1186/s40561-019-0107-06:1Online publication date: 23-Dec-2019
  • (2017)Multi‐DGAS: A pattern based educational framework design for power transformers faults interpretation and comparative performance analysisComputer Applications in Engineering Education10.1002/cae.2187226:2(215-227)Online publication date: 30-Aug-2017
  • (2015)Learning to program using hierarchical model-based debuggingApplied Intelligence10.1007/s10489-015-0659-943:3(544-563)Online publication date: 1-Oct-2015
  • (2013)Cole-Programming: Shaping Collaborative Learning Support in EclipseIEEE Revista Iberoamericana de Tecnologias del Aprendizaje10.1109/RITA.2013.22849538:4(153-162)Online publication date: Nov-2013
  • (2013)Teaching computer programming based on patterns with activities and collaborative games using concrete materials for high school students2013 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2013.6685109(1604-1610)Online publication date: Oct-2013
  • (2012)Teaching novice programming using goals and plans in a visual notationProceedings of the Fourteenth Australasian Computing Education Conference - Volume 12310.5555/2483716.2483722(43-52)Online publication date: 31-Jan-2012
  • (2012)Using fuzzy logic applied to software metrics and test cases to assess programming assignments and give adviceJournal of Network and Computer Applications10.1016/j.jnca.2011.11.00235:2(695-712)Online publication date: 1-Mar-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media