Re-use of programming patterns or problem solving? Representation of scratch programs by TGraphs to support static code analysis

Mike Talbot, Katharina Geldreich, Julia Sommer, Peter Hubwieser

Publikation: Beitrag in Buch/Bericht/KonferenzbandKonferenzbeitragBegutachtung

7 Zitate (Scopus)

Abstract

Novice programmers seem to learn basic programming skills amazingly fast by using visual programming environments like Scratch or Snap. Yet at a second glance, in many cases, the students' programming projects make use of pre-learned solution patterns like collision detection. Aiming to investigate how far such pre-learned patterns are used and adapted, we have to analyze the program structure of a substantially large number of Scratch projects, e.g. from the Scratch repository, in a very detailed way. To automate the static code analysis of these projects, we developed a scheme to transform Scratch projects into a common graph format (TGraph), which was used up to now to analyze programs in Java and Haskell as well as UML diagrams and mathematical solutions. In a second step, this representation enabled us to apply a SQL-like query language for graphs (GReQL) to detect programming patterns in students' Scratch projects. This paper describes the design of our TGraph scheme for Scratch as well as how to query patterns in Scratch code using GReQL, in order to stimulate the use of this methodology by other researchers. As a feasibility study, we report its application on the outcomes of one of our Scratch courses attended by 143 children aged 8-12 years. The study showed that with the presented methodology any code structure can be detected in Scratch projects. To check the validity of the methodology, the programs were additionally checked manually for the occurrence of two patterns - the results were consistent.

OriginalspracheEnglisch
TitelProceedings of the 15th Workshop in Primary and Secondary Computing Education, WiPSCE 2020
Redakteure/-innenTorsten Brinda, Michal Armoni
Herausgeber (Verlag)Association for Computing Machinery
ISBN (elektronisch)9781450387590
DOIs
PublikationsstatusVeröffentlicht - 28 Okt. 2020
Veranstaltung15th Workshop in Primary and Secondary Computing Education, WiPSCE 2020 - Virtual, Online, Deutschland
Dauer: 28 Okt. 202030 Okt. 2020

Publikationsreihe

NameACM International Conference Proceeding Series

Konferenz

Konferenz15th Workshop in Primary and Secondary Computing Education, WiPSCE 2020
Land/GebietDeutschland
OrtVirtual, Online
Zeitraum28/10/2030/10/20

Fingerprint

Untersuchen Sie die Forschungsthemen von „Re-use of programming patterns or problem solving? Representation of scratch programs by TGraphs to support static code analysis“. Zusammen bilden sie einen einzigartigen Fingerprint.

Dieses zitieren