Christoph Frädrich

dblp:190/2998 · DBLP profile ↗
← Back
5ranked-venue papers
2as first author
0since 2021 · last 2020
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 3Artificial intelligence and machine learning · 1Security and privacy · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Program analysis · 44% Program verification · 44% Programming languages and type systems · 13%

Topics — the 3 heaviest of 3, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › static analysis
abstract interpretation
0.412020
Verified from Scratch: Program Analysis for Learners' Programs · ASE 2020
Program verification › model checking
software model checking
0.412020
Verified from Scratch: Program Analysis for Learners' Programs · ASE 2020
Programming languages and type systems
language semantics
0.112020
Verified from Scratch: Program Analysis for Learners' Programs · ASE 2020

Methods — techniques the papers use, named apart from their topics

software model checking · 0.4abstract interpretation · 0.4
YearPublicationVenuePosition
2020 Common Bugs in Scratch Programs
abstract
Bugs in SCRATCH programs can spoil the fun and inhibit learning success. Many common bugs are the result of recurring patterns of bad code. In this paper we present a collection of common code patterns that typically hint at bugs in SCRATCH programs, and the LitterBox tool which can automatically detect them. We empirically evaluate how frequently these patterns occur, and how severe their consequences usually are. While fixing bugs inevitably is part of learning, the possibility to identify the bugs automatically provides the potential to support learners.
Christoph Frädrich, Florian Obermüller, Nina Körber, Ute Heuer, Gordon Fraser 0001
ITiCSE1
2020 Verified from Scratch: Program Analysis for Learners' Programs
abstract
Block-based programming languages like Scratch support learners by providing high-level constructs that hide details and by preventing syntactically incorrect programs. Questions nevertheless frequently arise: Is this program satisfying the given task? Why is my program not working? To support learners and educators, automated program analysis is needed for answering such questions. While adapting existing analyses to process blocks instead of textual statements is straightforward, the domain of programs controlled by block-based languages like Scratch is very different from traditional programs: In Scratch multiple actors, represented as highly concurrent programs, interact on a graphical stage, controlled by user inputs, and while the block-based program statements look playful, they hide complex mathematical operations that determine visual aspects and movement. Analyzing such programs is further hampered by the absence of clearly defined semantics, often resulting from ad-hoc decisions made by the implementers of the programming environment. To enable program analysis, we define the semantics of Scratch using an intermediate language. Based on this intermediate language, we implement the Bastet program analysis framework for Scratch programs, using concepts from abstract interpretation and software model checking. Like Scratch, Bastet is based on Web technologies, written in TypeScript, and can be executed using NodeJS or even directly in a browser. Evaluation on 279 programs written by children suggests that Bastet offers a practical solution for analysis of Scratch programs, thus enabling applications such as automated hint generation, automated evaluation of learner progress, or automated grading.
Andreas Stahlbauer, Christoph Frädrich, Gordon Fraser 0001
ASE2
2020 Search-Based Testing for Scratch Programs
Adina Deiner, Christoph Frädrich, Gordon Fraser 0001, Sophia Geserer, Niklas Zantner
SSBSE2
2019 An Empirical Evaluation of Search Algorithms for App Testing
Leon Sell, Michael Auer, Christoph Frädrich, Michael Gruber, Philemon Werli, Gordon Fraser 0001
ICTSS3
2016 Integrity and Authenticity Protection with Selective Disclosure Control in the Cloud & IoT
Christoph Frädrich, Henrich Christopher Pöhls, Wolfgang Popp, Noëlle Rakotondravony, Kai Samelin
ICICS1