Understanding Students' Failure to use Functions as a Tool for Abstraction - An Analysis of Questionnaire Responses and Lab Assignments in a CS1 Python Course.
Saved in:
| Title: | Understanding Students' Failure to use Functions as a Tool for Abstraction - An Analysis of Questionnaire Responses and Lab Assignments in a CS1 Python Course. |
|---|---|
| Authors: | HAGLUND, Pontus1 pontus.haglund@liu.se, STRÖMBÄCK, Filip1 filip.stromback@liu.se, MANNILA, Linda1 linda.mannila@liu.se |
| Source: | Informatics in Education. Dec2021, Vol. 20 Issue 4, p583-614. 32p. |
| Subject Terms: | *Problem solving, *Concept learning, *Students, Python programming language, Questionnaires |
| Abstract: | Controlling complexity through the use of abstractions is a critical part of problem solving in programming. Thus, becoming proficient with procedural and data abstraction through the use of user-defined functions is important. Properly using functions for abstraction involves a number of other core concepts, such as parameter passing, scope and references, which are known to be difficult. Therefore, this paper aims to study students' proficiency with these core concepts, and students' ability to apply procedural and data abstraction to solve problems. We collected data from two years of an introductory Python course, both from a questionnaire and from two lab assignments. The data shows that students had difficulties with the core concepts, and a number of issues solving problems with abstraction. We also investigate the impact of using a visualization tool when teaching the core concepts. [ABSTRACT FROM AUTHOR] |
| Copyright of Informatics in Education is the property of Informatics in Education and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.) | |
| Database: | Education Research Complete |
| FullText | Links: – Type: pdflink Text: Availability: 0 |
|---|---|
| Header | DbId: ehh DbLabel: Education Research Complete An: 154469894 AccessLevel: 6 PubType: Academic Journal PubTypeId: academicJournal PreciseRelevancyScore: 0 |
| IllustrationInfo | |
| Items | – Name: Title Label: Title Group: Ti Data: Understanding Students' Failure to use Functions as a Tool for Abstraction - An Analysis of Questionnaire Responses and Lab Assignments in a CS1 Python Course. – Name: Author Label: Authors Group: Au Data: <searchLink fieldCode="AR" term="%22HAGLUND%2C+Pontus%22">HAGLUND, Pontus</searchLink><relatesTo>1</relatesTo><i> pontus.haglund@liu.se</i><br /><searchLink fieldCode="AR" term="%22STRÖMBÄCK%2C+Filip%22">STRÖMBÄCK, Filip</searchLink><relatesTo>1</relatesTo><i> filip.stromback@liu.se</i><br /><searchLink fieldCode="AR" term="%22MANNILA%2C+Linda%22">MANNILA, Linda</searchLink><relatesTo>1</relatesTo><i> linda.mannila@liu.se</i> – Name: TitleSource Label: Source Group: Src Data: <searchLink fieldCode="JN" term="%22Informatics+in+Education%22">Informatics in Education</searchLink>. Dec2021, Vol. 20 Issue 4, p583-614. 32p. – Name: Subject Label: Subject Terms Group: Su Data: *<searchLink fieldCode="DE" term="%22Problem+solving%22">Problem solving</searchLink><br />*<searchLink fieldCode="DE" term="%22Concept+learning%22">Concept learning</searchLink><br />*<searchLink fieldCode="DE" term="%22Students%22">Students</searchLink><br /><searchLink fieldCode="DE" term="%22Python+programming+language%22">Python programming language</searchLink><br /><searchLink fieldCode="DE" term="%22Questionnaires%22">Questionnaires</searchLink> – Name: Abstract Label: Abstract Group: Ab Data: Controlling complexity through the use of abstractions is a critical part of problem solving in programming. Thus, becoming proficient with procedural and data abstraction through the use of user-defined functions is important. Properly using functions for abstraction involves a number of other core concepts, such as parameter passing, scope and references, which are known to be difficult. Therefore, this paper aims to study students' proficiency with these core concepts, and students' ability to apply procedural and data abstraction to solve problems. We collected data from two years of an introductory Python course, both from a questionnaire and from two lab assignments. The data shows that students had difficulties with the core concepts, and a number of issues solving problems with abstraction. We also investigate the impact of using a visualization tool when teaching the core concepts. [ABSTRACT FROM AUTHOR] – Name: AbstractSuppliedCopyright Label: Group: Ab Data: <i>Copyright of Informatics in Education is the property of Informatics in Education and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.) |
| PLink | https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=ehh&AN=154469894 |
| RecordInfo | BibRecord: BibEntity: Identifiers: – Type: doi Value: 10.15388/infedu.2021.26 Languages: – Code: eng Text: English PhysicalDescription: Pagination: PageCount: 32 StartPage: 583 Subjects: – SubjectFull: Problem solving Type: general – SubjectFull: Concept learning Type: general – SubjectFull: Students Type: general – SubjectFull: Python programming language Type: general – SubjectFull: Questionnaires Type: general Titles: – TitleFull: Understanding Students' Failure to use Functions as a Tool for Abstraction - An Analysis of Questionnaire Responses and Lab Assignments in a CS1 Python Course. Type: main BibRelationships: HasContributorRelationships: – PersonEntity: Name: NameFull: HAGLUND, Pontus – PersonEntity: Name: NameFull: STRÖMBÄCK, Filip – PersonEntity: Name: NameFull: MANNILA, Linda IsPartOfRelationships: – BibEntity: Dates: – D: 01 M: 12 Text: Dec2021 Type: published Y: 2021 Identifiers: – Type: issn-print Value: 16485831 Numbering: – Type: volume Value: 20 – Type: issue Value: 4 Titles: – TitleFull: Informatics in Education Type: main |
| ResultId | 1 |