Skip to main content

2020 | OriginalPaper | Buchkapitel

Decoding Source Code Comprehension: Bottlenecks Experienced by Senior Computer Science Students

verfasst von : Pakiso J. Khomokhoana, Liezel Nel

Erschienen in: ICT Education

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Source code comprehension (SCC) continues to be a challenge to undergraduate CS students. Understanding the mental processes that students follow while comprehending source code can be crucial in helping students to overcome related challenges. The ‘Decoding the Disciplines’ (DtDs) paradigm that is gaining popularity world-wide provides a process to help students to master the mental actions they need to be successful in a specific discipline. In focusing on the first DtDs step of identifying mental obstacles (“bottlenecks”), this paper describes a study aimed at uncovering the major SCC bottlenecks that senior CS students experienced. We followed an integrated methodological approach where data were collected by asking questions, observations, and artefact analysis. Thematic analysis of the collected data revealed a series of SCC difficulties specifically related to arrays, programming logic, and control structures. The identified difficulties, including findings from the literature as well as our own teaching experiences, were used to compile a usable list of SCC bottlenecks. By focusing on senior students (instead of first-year students), the identified SCC bottlenecks point to learning difficulties that need to be addressed in introductory CS courses.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
Benchmark for international comparability.
 
2
This observation points to the psychology of programming which is a field of research since the late 1960s/early 1970s [44].
 
Literatur
1.
Zurück zum Zitat Alston, P., Walsh, D., Westhead, G.: Uncovering ‘threshold concepts’ in web development: an instructor perspective. ACM Trans. Comput. Educ. 15(1), 1–18 (2015)CrossRef Alston, P., Walsh, D., Westhead, G.: Uncovering ‘threshold concepts’ in web development: an instructor perspective. ACM Trans. Comput. Educ. 15(1), 1–18 (2015)CrossRef
2.
Zurück zum Zitat Anyango, J.T., Suleman, H.: Teaching programming in Kenya and South Africa: what is difficult and is it universal? In: Proceedings of the 18th Koli Calling International Conference on Computing Education Research. ACM (2018) Anyango, J.T., Suleman, H.: Teaching programming in Kenya and South Africa: what is difficult and is it universal? In: Proceedings of the 18th Koli Calling International Conference on Computing Education Research. ACM (2018)
3.
Zurück zum Zitat Bosse, Y., Gerosa, M.A.: Difficulties of programming learning from the point of view of students and instructors. EEE Lat. Am. Trans. 15(11), 2191–2199 (2017)CrossRef Bosse, Y., Gerosa, M.A.: Difficulties of programming learning from the point of view of students and instructors. EEE Lat. Am. Trans. 15(11), 2191–2199 (2017)CrossRef
4.
Zurück zum Zitat du Boulay, B.: Some difficulties of learning to program. J. Educ. Comput. Res. 2(1), 57–73 (1986)CrossRef du Boulay, B.: Some difficulties of learning to program. J. Educ. Comput. Res. 2(1), 57–73 (1986)CrossRef
5.
Zurück zum Zitat Boustedt, J., et al.: Threshold concepts in computer science: do they exist and are they useful? In: Proceedings of the 38th SIGCSE Technical Symposium on Computer Science Education, pp. 504–508. ACM (2007) Boustedt, J., et al.: Threshold concepts in computer science: do they exist and are they useful? In: Proceedings of the 38th SIGCSE Technical Symposium on Computer Science Education, pp. 504–508. ACM (2007)
6.
Zurück zum Zitat Butler, M., Morgan, M.: Learning challenges faced by novice programming students studying high level and low feedback concepts. In: Proceedings Ascilite Singapore, pp. 99–107 (2007) Butler, M., Morgan, M.: Learning challenges faced by novice programming students studying high level and low feedback concepts. In: Proceedings Ascilite Singapore, pp. 99–107 (2007)
7.
Zurück zum Zitat Charters, E.: The use of think-aloud methods in qualitative research: an introduction to think-aloud methods. Brock Educ. 12(2), 68–82 (2003) Charters, E.: The use of think-aloud methods in qualitative research: an introduction to think-aloud methods. Brock Educ. 12(2), 68–82 (2003)
8.
Zurück zum Zitat Creswell, J.W., Creswell, J.D.: Research Design: Qualitative, Quantitative, and Mixed Methods Approaches. SAGE, Thousand Oaks (2017) Creswell, J.W., Creswell, J.D.: Research Design: Qualitative, Quantitative, and Mixed Methods Approaches. SAGE, Thousand Oaks (2017)
9.
Zurück zum Zitat Cunningham, K., Blanchard, S., Ericson, B., Guzdial, M.: Using tracing and sketching to solve programming problems: replicating and extending an analysis of what students draw. In: Proceedings of the International Conference on Computing Education Research, pp. 164–172. ACM (2017) Cunningham, K., Blanchard, S., Ericson, B., Guzdial, M.: Using tracing and sketching to solve programming problems: replicating and extending an analysis of what students draw. In: Proceedings of the International Conference on Computing Education Research, pp. 164–172. ACM (2017)
10.
Zurück zum Zitat Deitel, P.J., Deitel, H., Deitel, A.: Visual Basic 2012 — How to Program. Pearson Education, London (2013)MATH Deitel, P.J., Deitel, H., Deitel, A.: Visual Basic 2012 — How to Program. Pearson Education, London (2013)MATH
11.
Zurück zum Zitat Diaz, A., Middendorf, J., Pace, D., Shopkow, L.: The history learning project: a department ‘decodes’ its students. J. Am. Hist. 94(4), 1211–1224 (2008)CrossRef Diaz, A., Middendorf, J., Pace, D., Shopkow, L.: The history learning project: a department ‘decodes’ its students. J. Am. Hist. 94(4), 1211–1224 (2008)CrossRef
12.
Zurück zum Zitat Fitzgerald, S., Simon, B., Thomas, L.: Strategies that students use to trace code: an analysis based in grounded theory. In: Proceedings of the 1st International Workshop on Computing Education Research, pp. 69–80. ACM (2004) Fitzgerald, S., Simon, B., Thomas, L.: Strategies that students use to trace code: an analysis based in grounded theory. In: Proceedings of the 1st International Workshop on Computing Education Research, pp. 69–80. ACM (2004)
13.
Zurück zum Zitat Garner, S., Haden, P., Robins, A.: My program is correct but it doesn’t run: a preliminary investigation of novice programmers’ problems. In: Australasian Computing Education Conference, pp. 173–180. Australian Computer Society Inc., Newcastle (2005) Garner, S., Haden, P., Robins, A.: My program is correct but it doesn’t run: a preliminary investigation of novice programmers’ problems. In: Australasian Computing Education Conference, pp. 173–180. Australian Computer Society Inc., Newcastle (2005)
14.
Zurück zum Zitat German, A., Menzel, S., Middendorf, J., Duncan, F.J.: How to decode student bottlenecks to learning in computer science. In: Proceedings of the 45th Technical Symposium on Computer Science Education, p. 733. ACM (2014) German, A., Menzel, S., Middendorf, J., Duncan, F.J.: How to decode student bottlenecks to learning in computer science. In: Proceedings of the 45th Technical Symposium on Computer Science Education, p. 733. ACM (2014)
15.
Zurück zum Zitat Goldman, K., et al.: Identifying important and difficult concepts in introductory computing courses using a delphi process. In: Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education, pp. 256–260. ACM (2008) Goldman, K., et al.: Identifying important and difficult concepts in introductory computing courses using a delphi process. In: Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education, pp. 256–260. ACM (2008)
16.
Zurück zum Zitat Grover, S., Basu, S.: Measuring student learning in introductory block-based programming: examining misconceptions of loops, variables, and boolean logic. In: Proceedings of the SIGCSE Technical Symposium on Computer Science Education, pp. 267–272. ACM (2017) Grover, S., Basu, S.: Measuring student learning in introductory block-based programming: examining misconceptions of loops, variables, and boolean logic. In: Proceedings of the SIGCSE Technical Symposium on Computer Science Education, pp. 267–272. ACM (2017)
17.
Zurück zum Zitat Gurevich, Y.: Logic and the challenge of computer science. In: Börger, E. (ed.) Current Trends in Theoretical Computer Science, pp. 1–57. Computer Science Press (1988) Gurevich, Y.: Logic and the challenge of computer science. In: Börger, E. (ed.) Current Trends in Theoretical Computer Science, pp. 1–57. Computer Science Press (1988)
18.
Zurück zum Zitat Hyland, E., Clynch, G.: Initial experiences gained and initiatives employed in the teaching of Java programming in the Institute of Technology Tallaght. In: Joint Proceedings of the Inaugural Conference on the Principles and Practice of Programming, and 2nd Workshop on Intermediate Representation engineering for Virtual Machines, pp. 101–106. ACM (2002) Hyland, E., Clynch, G.: Initial experiences gained and initiatives employed in the teaching of Java programming in the Institute of Technology Tallaght. In: Joint Proceedings of the Inaugural Conference on the Principles and Practice of Programming, and 2nd Workshop on Intermediate Representation engineering for Virtual Machines, pp. 101–106. ACM (2002)
20.
Zurück zum Zitat Kallia, M., Sentance, S.: Computing teachers’ perspectives on threshold concepts: functions and procedural abstraction. In: Proceedings of the WIPSCE 12th Workshop on Primary and Secondary Computing Education, pp. 15–24 (2017) Kallia, M., Sentance, S.: Computing teachers’ perspectives on threshold concepts: functions and procedural abstraction. In: Proceedings of the WIPSCE 12th Workshop on Primary and Secondary Computing Education, pp. 15–24 (2017)
21.
Zurück zum Zitat Keen, A., Mammen, K.: Program decomposition and complexity in CS1. In: Proceedings of the 46th Technical Symposium on Computer Science Education, pp. 48–53. ACM (2015) Keen, A., Mammen, K.: Program decomposition and complexity in CS1. In: Proceedings of the 46th Technical Symposium on Computer Science Education, pp. 48–53. ACM (2015)
22.
Zurück zum Zitat Klenke, K.: Qualitative Research in the Study of Leadership, 2nd edn. Emerald Publishing, Bingley (2016)CrossRef Klenke, K.: Qualitative Research in the Study of Leadership, 2nd edn. Emerald Publishing, Bingley (2016)CrossRef
23.
Zurück zum Zitat Lister, R., et al.: A multi-national study of reading and tracing skills in novice programmers. ACM SIGCSE Bull. 36(4), 119–150 (2004)CrossRef Lister, R., et al.: A multi-national study of reading and tracing skills in novice programmers. ACM SIGCSE Bull. 36(4), 119–150 (2004)CrossRef
24.
Zurück zum Zitat Malik, S.I., Coldwell-Neilson, J.: A model for teaching an introductory programming course using ADRI. Educ. Inf. Technol. 22(3), 1089–1120 (2017)CrossRef Malik, S.I., Coldwell-Neilson, J.: A model for teaching an introductory programming course using ADRI. Educ. Inf. Technol. 22(3), 1089–1120 (2017)CrossRef
25.
Zurück zum Zitat Marshall, C., Rossman, G.B.: Designing Qualitative Research, 6th edn. SAGE, Thousand Oaks (2016) Marshall, C., Rossman, G.B.: Designing Qualitative Research, 6th edn. SAGE, Thousand Oaks (2016)
26.
Zurück zum Zitat McCracken, M., et al.: A multi-national, multi-institutional study of assessment of programming skills of first-year CS students. In: Working Group Reports from ITiCSE on Innovation and Technology in Computer Science Education, pp. 125–180. ACM (2001) McCracken, M., et al.: A multi-national, multi-institutional study of assessment of programming skills of first-year CS students. In: Working Group Reports from ITiCSE on Innovation and Technology in Computer Science Education, pp. 125–180. ACM (2001)
28.
Zurück zum Zitat Middendorf, J., Pace, D.: Decoding the disciplines: a model for helping students learn disciplinary ways of thinking. New Dir. Teach. Learn. 98, 1–12 (2004)CrossRef Middendorf, J., Pace, D.: Decoding the disciplines: a model for helping students learn disciplinary ways of thinking. New Dir. Teach. Learn. 98, 1–12 (2004)CrossRef
29.
Zurück zum Zitat Middendorf, J., Shopkow, L.: Overcoming Student Learning Bottlenecks: Decode Your Disciplinary Critical Thinking. Stylus Publishing/LLC (2018) Middendorf, J., Shopkow, L.: Overcoming Student Learning Bottlenecks: Decode Your Disciplinary Critical Thinking. Stylus Publishing/LLC (2018)
30.
Zurück zum Zitat Milne, I., Rowe, G.: Difficulties in learning and teaching programming: views of students and tutors. Educ. Inf. Technol. 7(1), 55–66 (2002)CrossRef Milne, I., Rowe, G.: Difficulties in learning and teaching programming: views of students and tutors. Educ. Inf. Technol. 7(1), 55–66 (2002)CrossRef
31.
Zurück zum Zitat Mutanu, L., Machoka, P.: Enhancing computer students’ academic performance through explanatory modeling. In: Tait, B., et al. (eds.) SACLA 2019. CCIS, vol. 1136, pp. 227–243 (2020) Mutanu, L., Machoka, P.: Enhancing computer students’ academic performance through explanatory modeling. In: Tait, B., et al. (eds.) SACLA 2019. CCIS, vol. 1136, pp. 227–243 (2020)
32.
Zurück zum Zitat Pace, D.: The Decoding the Disciplines Paradigm: Seven Steps to Increased Student Learning. Indiana University Press (2017) Pace, D.: The Decoding the Disciplines Paradigm: Seven Steps to Increased Student Learning. Indiana University Press (2017)
33.
Zurück zum Zitat Patton, M.Q.: Qualitative Research & Evaluation Methods: Integrating Theory and Practice, 4th edn. SAGE, Thousand Oaks (2015) Patton, M.Q.: Qualitative Research & Evaluation Methods: Integrating Theory and Practice, 4th edn. SAGE, Thousand Oaks (2015)
34.
Zurück zum Zitat Pinnow, E.: Decoding the disciplines: an approach to scientific thinking. Psychol. Learn. Teach. 15(1), 94–101 (2016)CrossRef Pinnow, E.: Decoding the disciplines: an approach to scientific thinking. Psychol. Learn. Teach. 15(1), 94–101 (2016)CrossRef
35.
Zurück zum Zitat Plowright, D.: Using Mixed Methods: Frameworks for an Integrated Methodology. SAGE, Thousand Oaks (2011)CrossRef Plowright, D.: Using Mixed Methods: Frameworks for an Integrated Methodology. SAGE, Thousand Oaks (2011)CrossRef
36.
Zurück zum Zitat Qian, Y., Lehman, J.: Students’ misconceptions and other difficulties in introductory programming: a literature review. ACM Trans. Comput. Educ. 18(1), 1–24 (2017)CrossRef Qian, Y., Lehman, J.: Students’ misconceptions and other difficulties in introductory programming: a literature review. ACM Trans. Comput. Educ. 18(1), 1–24 (2017)CrossRef
37.
Zurück zum Zitat Rouse, M., Phillips, J., Mehaffey, R., Mcgowan, S., Felten, P.: Decoding and disclosure in students-as-partners research: a case study of the political science literature review. Int. J. Stud. Partn. 1(1), 1–14 (2017) Rouse, M., Phillips, J., Mehaffey, R., Mcgowan, S., Felten, P.: Decoding and disclosure in students-as-partners research: a case study of the political science literature review. Int. J. Stud. Partn. 1(1), 1–14 (2017)
38.
Zurück zum Zitat Sanders, K., McCartney, R.: Threshold concepts in computing: past, present, and future. In: Proceedings of the 16th International Conference on Computing Education Research, pp. 91–100. ACM (2016) Sanders, K., McCartney, R.: Threshold concepts in computing: past, present, and future. In: Proceedings of the 16th International Conference on Computing Education Research, pp. 91–100. ACM (2016)
39.
Zurück zum Zitat Shaft, T.M., Vessey, I.: The relevance of application domain knowledge: the case of computer program comprehension. Inf. Syst. Res. 6(3), 286–299 (1995)CrossRef Shaft, T.M., Vessey, I.: The relevance of application domain knowledge: the case of computer program comprehension. Inf. Syst. Res. 6(3), 286–299 (1995)CrossRef
40.
Zurück zum Zitat Shopkow, L.: How many sources do i need? Hist. Teach. 50(2), 169–200 (2017) Shopkow, L.: How many sources do i need? Hist. Teach. 50(2), 169–200 (2017)
41.
Zurück zum Zitat Shopkow, L., Diaz, A., Middendorf, J., Pace, D.: From bottlenecks to epistemology in history: changing the conversation about the teaching of history in colleges and universities. In: Changing the Conversation about Higher Education. Rowman & Littlefield Publishing (2013) Shopkow, L., Diaz, A., Middendorf, J., Pace, D.: From bottlenecks to epistemology in history: changing the conversation about the teaching of history in colleges and universities. In: Changing the Conversation about Higher Education. Rowman & Littlefield Publishing (2013)
42.
Zurück zum Zitat Timmermans, J., Barnett, J.: The Role of Identifying and Decoding Bottlenecks in the Redesign of Tax Curriculum. In: Society for Teaching and Learning in Higher Education Conference, Canada (2013) Timmermans, J., Barnett, J.: The Role of Identifying and Decoding Bottlenecks in the Redesign of Tax Curriculum. In: Society for Teaching and Learning in Higher Education Conference, Canada (2013)
43.
Zurück zum Zitat Verpoorten, D., et al.: Decoding the disciplines — a pilot study at the University of Liege (Belgium). In: Proceedings of 2nd EuroSoTL Conference, pp. 263–267 (2017) Verpoorten, D., et al.: Decoding the disciplines — a pilot study at the University of Liege (Belgium). In: Proceedings of 2nd EuroSoTL Conference, pp. 263–267 (2017)
44.
Zurück zum Zitat Weinberg, G.M.: The Psychology of Computer Programming. Van Nostrand Reinhold/Litton Educational Publishing (1971) Weinberg, G.M.: The Psychology of Computer Programming. Van Nostrand Reinhold/Litton Educational Publishing (1971)
45.
Zurück zum Zitat Whalley, J.L., et al.: An Australasian study of reading and comprehension skills in novice programmers, using the bloom and SOLO taxonomies. In: Proceedings of the 8th Australasian Conference on Computer Science Education, pp. 243–252 (2006) Whalley, J.L., et al.: An Australasian study of reading and comprehension skills in novice programmers, using the bloom and SOLO taxonomies. In: Proceedings of the 8th Australasian Conference on Computer Science Education, pp. 243–252 (2006)
46.
Zurück zum Zitat Wilkinson, A.: Decoding learning in law: collaborative action towards the reshaping of university teaching and learning. Educ. Media Int. 51(2), 124–134 (2014)MathSciNetCrossRef Wilkinson, A.: Decoding learning in law: collaborative action towards the reshaping of university teaching and learning. Educ. Media Int. 51(2), 124–134 (2014)MathSciNetCrossRef
47.
Zurück zum Zitat Willes, K.L.: Data cleaning. In: The SAGE Encyclopedia of Communication Research Methods. SAGE (2017) Willes, K.L.: Data cleaning. In: The SAGE Encyclopedia of Communication Research Methods. SAGE (2017)
Metadaten
Titel
Decoding Source Code Comprehension: Bottlenecks Experienced by Senior Computer Science Students
verfasst von
Pakiso J. Khomokhoana
Liezel Nel
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-35629-3_2