Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3568812.3603477acmconferencesArticle/Chapter ViewAbstractPublication PagesicerConference Proceedingsconference-collections
abstract

On Students’ Experiences with Algorithm Tracing using Pair Programming

Published: 13 September 2023 Publication History

Abstract

We have seen students struggling with fully understanding the algorithms when required to trace pseudocode for an Algorithmics course, even though examples and exercises on tracing each algorithm are provided throughout. This course is being taught in year 2 of the new Graduate Apprenticeship in Software Engineering programme (GA) [2], covering fundamental string and graph algorithms and basic computability topics.
Code tracing helps students develop valid mental models of a program [7], while sketching [5, 9], used for tracing code via pen-and-paper drawing visualising program states or other computing processes, may help students manage cognitive load while understanding the notional machine [8] behind an algorithm. Hence sketching is fitting for tracing algorithm pseudocode.
Pair programming (PP) [3] has been successfully adopted in CS education as a collaborative learning activity [6] where both learners work in pairs to solve a task, with one being the driver and the other the navigator, and swapping roles regularly. In a previous investigation on using PP for constructing finite state automata [1], we have found that GA students enjoyed working in pairs.
We aim to investigate the feasibility of employing PP for algorithm tracing, similar to its application in programming. Our initial research question is: How do GA students experience the use of pair programming for tracing pseudocode of string and graph algorithms?
Algorithms were taught over two weeks in block-mode, with one-hour lecture followed by a one-hour tutorial session each day, and 2-3 tracing exercises per tutorial. Students were encouraged to use PP for all tracing exercises during tutorials. In March 2023 we ran a pilot study to gather initial feedback on the PP setup. We asked students’ opinions on what they liked and what they didn’t like about using PP for algorithm tracing via an anonymous, online survey consisting of two open-ended questions. Seven out of 25 students enrolled in the course responded. The inductive thematic analysis of the survey responses shows that most students enjoyed collaboration to build up their understanding of algorithms. Themes around insufficiently supportive setup and time-consuming activity have been identified.
The results of this pilot study suggest that while the activity was perceived as valuable, the PP setup requires enhancements. Future actions include: increase tutorial sessions structure with timing guidelines for each tracing exercise; provide blank paper and/or digital templates for tracing each algorithm; regularly assess progress in pairs and encourage students to seek assistance when encountering difficulties; utilise information from previous courses that use PP to pair up students with similar computational thinking skills [4]. To support students who opt to not use PP, we will explore methods to actively engage them. This includes identifying and utilising computer-based tools to assist with visualising algorithm execution and offering additional tutor support.
We will continue using PP for tracing algorithms in the upcoming teaching session and further investigate the students’ experiences and their perceived and assessed performance when using PP.

References

[1]
Oana Andrei. 2022. A Practice Enquiry Design to Investigate How Pair Programming Can Help with Constructing Automata. In Proceedings of UKICER 2022, Keith Quille, Joseph Maguire, and Brett A. Becker (Eds.). ACM, 20:1.
[2]
Matthew Barr and Jack Parkinson. 2019. Developing a Work-based Software Engineering Degree in Collaboration with Industry. In Proceedings of the 1st UK & Ireland Computing Education Research Conference, UKICER 2019, Janet Carter, Brett A. Becker, and Neil C. C. Brown (Eds.). ACM, 9:1–9:7.
[3]
K. Beck and C. Andres. 2004. Extreme Programming Explained: Embrace Change (2nd ed.). Addison-Wesley Professional.
[4]
Grant Braught, John MacCormick, and Tim Wahls. 2010. The Benefits of Pairing by Ability. In Proceedings of the 41st ACM Technical Symposium on Computer Science Education(SIGCSE’10), Gary Lewandowski, Steven A. Wolfman, Thomas J. Cortina, and Ellen Lowenfeld Walker (Eds.). ACM, 249–253.
[5]
Kathryn Cunningham, Sarah Blanchard, Barbara Ericson, and Mark Guzdial. 2017. Using Tracing and Sketching to Solve Programming Problems: Replicating and Extending an Analysis of What Students Draw. In Proceedings of the 2017 ACM Conference on International Computing Education Research, ICER 2017, Josh Tenenberg, Donald Chinn, Judy Sheard, and Lauri Malmi (Eds.). ACM, 164–172.
[6]
B. Hanks, S. Fitzgerald, R. McCauley, L. Murphy, and C. Zander. 2011. Pair programming in education: a literature review. Computer Science Education 21, 2 (2011), 135–173.
[7]
Matthew Hertz and Maria Jump. 2013. Trace-based teaching in early programming courses. In The 44th ACM Technical Symposium on Computer Science Education, SIGCSE 2013, Tracy Camp, Paul T. Tymann, J. D. Dougherty, and Kris Nagel (Eds.). ACM, 561–566.
[8]
Juha Sorva. 2013. Notional machines and introductory programming education. ACM Trans. Comput. Educ. 13, 2 (2013), 8:1–8:31.
[9]
Benjamin Xie, Greg L. Nelson, and Amy J. Ko. 2018. An Explicit Strategy to Scaffold Novice Program Tracing. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education, SIGCSE 2018, Tiffany Barnes, Daniel D. Garcia, Elizabeth K. Hawthorne, and Manuel A. Pérez-Quiñones (Eds.). ACM, 344–349.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICER '23: Proceedings of the 2023 ACM Conference on International Computing Education Research - Volume 2
August 2023
140 pages
ISBN:9781450399753
DOI:10.1145/3568812
Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 September 2023

Check for updates

Qualifiers

  • Abstract
  • Research
  • Refereed limited

Conference

ICER 2023
Sponsor:

Acceptance Rates

Overall Acceptance Rate 189 of 803 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 44
    Total Downloads
  • Downloads (Last 12 months)35
  • Downloads (Last 6 weeks)6
Reflects downloads up to 12 Nov 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media