[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2401796.2401799acmotherconferencesArticle/Chapter ViewAbstractPublication Pageskoli-callingConference Proceedingsconference-collections
research-article

Exploring programming misconceptions: an analysis of student mistakes in visual program simulation exercises

Published: 15 November 2012 Publication History

Abstract

Visual program simulation (VPS) is a form of interactive program visualization in which novice programmers practice tracing computer programs: using a graphical interface, they are expected to correctly indicate each consecutive stage in the execution of a given program. Naturally, students make mistakes during VPS; in this article, we report a study of such mistakes.
Visual program simulation tries to get students to act on their conceptions; a VPS-supporting software system may be built so that it reacts to student behaviors and provides feedback tailored to address suspected misconceptions. To focus our efforts in developing the feedback given by our VPS system, UUhistle, we wished to identify the most common mistakes that students make and to explore the reasons behind them. We analyzed the mistakes in over 24,000 student-submitted solutions to VPS assignments collected over three years. 26 mistakes stood out as relatively common and therefore worthy of particular attention. Some of the mistakes appear to be related to usability issues and others to known misconceptions about programming concepts; others still suggest previously unreported conceptual difficulties. Beyond helping us develop our visualization tool, our study lends tentative support to the claim that many VPS mistakes are linked to programming misconceptions and VPS logs can be a useful data source for studying students' understandings of CS1 content.

References

[1]
P. Bayman and R. E. Mayer. A Diagnosis of Beginning Programmers' Misconceptions of BASIC Programming Statements. Communications of the ACM, 26(9):677--679, 1983.
[2]
A. Berglund and R. Lister. Introductory Programming and the Didactic Triangle. In T. Clear and J. Hamer, editors, Twelfth Australasian Computing Education Conference (ACE 2010), volume 103 of CRPIT, pages 35--44. Australian Computer Society, 2010.
[3]
M. Clancy. Misconceptions and Attitudes that Interfere with Learning to Program. In S. Fincher and M. Petre, editors, Computer Science Education Research, pages 85--100. Routledge, 2004.
[4]
A. A. diSessa. A History of Conceptual Change Research: Threads and Fault Lines. In R. Sawyer, editor, The Cambridge Handbook of the Learning Sciences, pages 265--282. Cambridge University Press, 2006.
[5]
B. du Boulay. Some Difficulties of Learning to Program. Journal of Educational Computing Research, 2(1):57--73, 1986.
[6]
A. Eckerdal and M. Thuné. Novice Java Programmers' Conceptions of "Object" and "Class", and Variation Theory. SIGCSE Bulletin, 37(3):89--93, 2005.
[7]
A. Elliott Tew. Assessing Fundamental Introductory Computing Concept Knowledge in a Language Independent Manner. PhD thesis, School of Interactive Computing, Georgia Institute of Technology, 2010.
[8]
A. E. Fleury. Parameter Passing: The Rules the Students Construct. SIGCSE Bulletin, 23(1):283--286, 1991.
[9]
S. Holland, R. Griffiths, and M. Woodman. Avoiding Object Misconceptions. SIGCSE Bulletin, 29(1):131--134, 1997.
[10]
M. Hristova, A. Misra, M. Rutter, and R. Mercuri. Identifying and Correcting Java Programming Errors for Introductory Computer Science Students. SIGCSE Bulletin, 35(1):153--156, 2003.
[11]
C. D. Hundhausen, S. A. Douglas, and J. T. Stasko. A Meta-Study of Algorithm Visualization Effectiveness. Journal of Visual Languages and Computing, 13(3):259--290, 2002.
[12]
W. M. Kunkle. The Impact of Different Teaching Approaches and Languages on Student Learning of Introductory Programming Concepts. PhD thesis, Drexel University, 2010.
[13]
L. Ma. Investigating and Improving Novice Programmers' Mental Models of Programming Concepts. PhD thesis, Department of Computer & Information Sciences, University of Strathclyde, 2007.
[14]
F. Marton. Our Experience of the Physical World. Cognition and Instruction, 10(2):227--237, 1993.
[15]
N. Myller. Automatic generation of prediction questions during program visualization. Electronic Notes in Theoretical Computer Science, 178:43--49, 2007.
[16]
T. L. Naps, G. Rößling, V. Almstrum, W. Dann, R. Fleischer, C. Hundhausen, A. Korhonen, L. Malmi, M. McNally, S. Rodger, and J. Á. Velázquez-Iturbide. Exploring the Role of Visualization and Engagement in Computer Science Education. SIGCSE Bulletin, 35(2):131--152, 2003.
[17]
G. özdemir and D. B. Clark. An Overview of Conceptual Change Theories. Eurasia Journal of Mathematics, Science & Technology Education, 3(4):351--361, 2007.
[18]
A. Pears and M. Rogalli. mJeliot: A Tool for Enhanced Interactivity in Programming Instruction. In A. Korhonen and R. McCartney, editors, Proceedings of the 11th Koli Calling International Conference on Computing Education Research, Koli Calling '11, pages 10--15. ACM, 2011.
[19]
R. T. Putnam, D. Sleeman, J. A. Baxter, and L. K. Kuspa. A Summary of Misconceptions of High School BASIC Programmers. Journal of Educational Computing Research, 2(4):459--72, 1986.
[20]
N. Ragonis and M. Ben-Ari. A Long-Term Investigation of the Comprehension of OOP Concepts by Novices. Computer Science Education, 15(3):203--221, 2005.
[21]
J. Sajaniemi, M. Kuittinen, and T. Tikansalo. A Study of the Development of Students' Visualizations of Program State during an Elementary Object-Oriented Programming Course. Journal of Educational Resources in Computing, 7(4):1--31, 2008.
[22]
Simon. Assignment and Sequence: Why Some Students Can't Recognize a Simple Swap. In A. Korhonen and R. McCartney, editors, Proceedings of the 11th Koli Calling International Conference on Computing Education Research, Koli Calling '11, pages 16--22. ACM, 2011.
[23]
T. Sirkiä. Recognizing Programming Misconceptions -- An Analysis of the Data Collected from the UUhistle Program Simulation Tool. Master's thesis, Department of Computer Science and Engineering, Aalto University, 2012.
[24]
D. Sleeman, R. T. Putnam, J. Baxter, and L. Kuspa. Pascal and High School Students: A Study of Errors. Journal of Educational Computing Research, 2(1):5--23, 1986.
[25]
J. P. Smith, III, A. A. diSessa, and J. Roschelle. Misconceptions Reconceived: A Constructivist Analysis of Knowledge in Transition. Journal of the Learning Sciences, 3(2):115--163, 1994.
[26]
J. Sorva. Students' Understandings of Storing Objects. In R. Lister and Simon, editors, Proceedings of the Seventh Baltic Sea Conference on Computing Education Research (Koli Calling 2007), volume 88 of CRPIT, pages 127--135. Australian Computer Society, 2007.
[27]
J. Sorva. Visual Program Simulation in Introductory Programming Education. Doctoral dissertation, Department of Computer Science and Engineering, Aalto University, 2012.
[28]
J. Sorva. Notional Machines and Introductory Programming Education. ACM Transactions on Computing Education, (accepted).
[29]
J. Sorva and T. Sirkiä. UUhistle -- A Program Visualization Tool for Introductory Programming Education (web site), n.d. http://www.uuhistle.org/.
[30]
M. Teif and O. Hazzan. Partonomy and Taxonomy in Object-Oriented Thinking: Junior High School Students' Perceptions of Object-Oriented Basic Concepts. SIGCSE Bulletin, 38(4):55--60, 2006.

Cited By

View all
  • (2024)From Blocks to Text: Bridging Programming MisconceptionsJournal of Educational Computing Research10.1177/0735633124124004762:5(1302-1326)Online publication date: 2-Apr-2024
  • (2024)Assessing the Understanding of Expressions: A Qualitative Study of Notional-Machine-Based Exam QuestionsProceedings of the 24th Koli Calling International Conference on Computing Education Research10.1145/3699538.3699554(1-12)Online publication date: 12-Nov-2024
  • (2024)Grasping the Unseen: TA Insights into Teaching Subtle Concepts in Computer ScienceProceedings of the 2024 on Innovation and Technology in Computer Science Education V. 110.1145/3649217.3653601(157-163)Online publication date: 3-Jul-2024
  • Show More Cited By

Index Terms

  1. Exploring programming misconceptions: an analysis of student mistakes in visual program simulation exercises

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    Koli Calling '12: Proceedings of the 12th Koli Calling International Conference on Computing Education Research
    November 2012
    187 pages
    ISBN:9781450317955
    DOI:10.1145/2401796
    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]

    Sponsors

    • Univ. Eastern Finland: University of Eastern Finland
    • Tampere University of Technology
    • Univ. Turku: University of Turku
    • Aalto University

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 15 November 2012

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. CS1
    2. introductory programming education
    3. misconceptions
    4. program visualization
    5. visual program simulation

    Qualifiers

    • Research-article

    Conference

    Koli Calling '12
    Sponsor:
    • Univ. Eastern Finland
    • Univ. Turku

    Acceptance Rates

    Overall Acceptance Rate 80 of 182 submissions, 44%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)143
    • Downloads (Last 6 weeks)12
    Reflects downloads up to 12 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)From Blocks to Text: Bridging Programming MisconceptionsJournal of Educational Computing Research10.1177/0735633124124004762:5(1302-1326)Online publication date: 2-Apr-2024
    • (2024)Assessing the Understanding of Expressions: A Qualitative Study of Notional-Machine-Based Exam QuestionsProceedings of the 24th Koli Calling International Conference on Computing Education Research10.1145/3699538.3699554(1-12)Online publication date: 12-Nov-2024
    • (2024)Grasping the Unseen: TA Insights into Teaching Subtle Concepts in Computer ScienceProceedings of the 2024 on Innovation and Technology in Computer Science Education V. 110.1145/3649217.3653601(157-163)Online publication date: 3-Jul-2024
    • (2024)Students Struggle with Concepts in Dijkstra's AlgorithmProceedings of the 2024 ACM Conference on International Computing Education Research - Volume 110.1145/3632620.3671096(154-165)Online publication date: 12-Aug-2024
    • (2024)The Correctness of the Mental Model of Arrays After Instruction for CS1 StudentsProceedings of the 55th ACM Technical Symposium on Computer Science Education V. 110.1145/3626252.3630943(806-811)Online publication date: 7-Mar-2024
    • (2023)Explain Trace: Misconceptions of Control-Flow StatementsComputers10.3390/computers1210019212:10(192)Online publication date: 24-Sep-2023
    • (2023)Towards Automated Interactive Tutoring - Focussing on Misconceptions and Adaptive Level-Specific FeedbackProceedings of the 5th European Conference on Software Engineering Education10.1145/3593663.3593692(226-235)Online publication date: 19-Jun-2023
    • (2023)SIDE-lib: A Library for Detecting Symptoms of Python Programming MisconceptionsProceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 110.1145/3587102.3588838(159-165)Online publication date: 29-Jun-2023
    • (2023)Coping With Scoping: Understanding Scope and ParametersProceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 110.1145/3587102.3588798(201-207)Online publication date: 29-Jun-2023
    • (2023)Seeing Program Output Improves Novice Learning GainsProceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 110.1145/3587102.3588796(180-186)Online publication date: 29-Jun-2023
    • 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