Michael Kölling

Prof. Michael Kölling


Research Focus & Metrics

Academic Career Length

32Years (1995-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
19 February 2024 in ACM Transactions on Computing Education
Verified
Journal Article
Open access
MMMarcus Messer
Marcus Messer
NBNeil C. C. Brown
Neil C. C. Brown
MKMichael Kölling
Michael Kölling
Miaojing ShiMiaojing Shi
Miaojing Shi
We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language paradigm, degree of automation, and evaluation techniques. Most papers assess the correctness of assignments in object-oriented languages. Typically, these tools use a dynamic technique, primarily unit testing, to provide grades and feedback to the students or static analysis techniques to compare a submission with a reference solution or with a set of correct student submissions. However, these techniques’ feedback is often limited to whether the unit tests have passed or failed, the expected and actual output, or how they differ from the reference solution. Furthermore, few tools assess the maintainability, readability, or documentation of the source code, with most using static analysis techniques, such as code quality metrics, in conjunction with grading correctness. Additionally, we found that most tools offered fully automated assessment to allow for near-instantaneous feedback and multiple resubmissions, which can increase student satisfaction and provide them with more opportunities to succeed. In terms of techniques used to evaluate the tools’ performance, most papers primarily use student surveys or compare the automatic assessment tools to grades or feedback provided by human graders. However, because the evaluation dataset is frequently unavailable, it is more difficult to reproduce results and compare tools to a collection of common assignments.

1 December 2003 in Computer Science Education
Verified
Journal Article
Closed access
MKMichael Kölling
Michael Kölling
BQBruce Quig
Bruce Quig
APAndrew Patterson
Andrew Patterson
JRJohn Rosenberg
John Rosenberg
Many teachers experience serious problems when teaching object-orientation to beginners or professionals. Many of these problems could be overcome or reduced through the use of more appropriate tools. In this paper, we introduce BlueJ, an integrated development environment designed for teaching object-orientation, and discuss how the use of this tool can change the approach to teaching.

1 November 2010 in ACM Transactions on Computing Education
Verified
Journal Article
Open access
PDF file
MKMichael Kölling
Michael Kölling
Greenfoot is an educational integrated development environment aimed at learning and teaching programming. It is aimed at a target audience of students from about 14 years old upwards, and is also suitable for college- and university-level education. Greenfoot combines graphical, interactive output with programming in Java, a standard, text-based object-oriented programming language. This article first describes Greenfoot and then goes on to discuss design goals and motivations, strengths and weaknesses of the system, and its relation to two environments with similar goals, Scratch and Alice.

5 March 2014
Verified
Conference Paper
Open access
PDF file
NBNeil Christopher Charles Brown
Neil Christopher Charles Brown
MKMichael Kölling
Michael Kölling
DMDavin McCall
Davin McCall
IUIan Utting
Ian Utting

9 November 2015
Verified
Conference Paper
Open access
PDF file
MKMichael Kölling
Michael Kölling
NBNeil C. C. Brown
Neil C. C. Brown
AAAmjad Altadmri
Amjad Altadmri
Block-based programming systems, such as Scratch or Alice, are the most popular environments for introducing young children to programming. However, mastery of text-based programming continues to be the educational goal for students who continue to program into their teenage years and beyond. Transitioning across the significant gap between the two editing styles presents a difficult challenge in school-level teaching of programming. We propose a new style of program manipulation to bridge the gap: frame-based editing. Frame-based editing has the resistance to errors and approachability of block-based programming while retaining the flexibility and more conventional programming semantics of text-based programming languages. In this paper, we analyse the issues involved in the transition from blocks to text and argue that they can be overcome by using frame-based editing as an intermediate step. A design and implementation of a frame-based editor is provided.

1 November 2010 in ACM Transactions on Computing Education
Verified
Journal Article
Open access
PDF file
IUIan Utting
Ian Utting
SCStephen Cooper
Stephen Cooper
MKMichael Kölling
Michael Kölling
JMJohn Maloney
John Maloney
MRMitchel Resnick
Mitchel Resnick
This article distills a discussion about the goals, mechanisms, and effects of three environments which aim to support the acquisition and development of computing concepts (problem solving and programming) in pre-University and non-technical students: Alice, Greenfoot, and Scratch. The conversation started in a special session on the topic at the 2010 ACM SIGCSE Symposium on Computer Science Education and continued during the creation of the resulting Special Issue of the ACM Transactions on Computing Education.