Accepted Papers with Abstracts

Harrie Passier, Sjaak Smetsers, Lex Bijlsma, Kees Huizing, Ruurd Kuiper and Harold Pootjes.

A Structured Design Methodology for Concurrent Programming

Abstract: Learning how to design and implement a concurrent program is hard. Most
textbooks on Java programming only treat concurrency in terms of syntax and examples. They pay little attention to systematically designing concurrent programs. As a result, design experience is to be acquired in a master-apprentice setup of supervised lab classes with immediate, personal feedback.

In this paper, we describe a systematic design method in which the development of a concurrent program is divided into a sequence of explicit, manageable steps which scaffolds students' learning of concurrency concepts and their application. This methodology is intended to improve the procedural development skills of students, providing them with the necessary knowledge and self-efficacy to tackle the problem at hand.

Furthermore, current education moves towards more independent learning. In distance education, for example, immediate feedback on how to proceed in case of problems is often absent. Additionally, enrollment in university courses increased steadily over the last decade which forces educators to spend less time on individual support: students often have to solve problems on their own. To make such independent learning feasible, also as regards providing feedback, a systematic approach is indispensable.


Trudie Benadé and Janet Liebenberg.

Students’ Experiences with Pair Programming Principles in an Excel Course

Abstract: A copious amount of studies on pair programming exist, but the use of pair programming principles in Excel courses have not been explored in detail. The purpose of this paper is to use the Unified Theory of Acceptance and Use of Technology (UTAUT) as a lens to understand students’ experiences with pair programming principles in an Excel Course. A mixed methods approach was used to conduct the research and for the quantitative part of the study a survey was used and the qualitative data was acquired through the comments of 335 survey respondents taking an Excel course. Both the qualitative and quantitative findings showed that the majority of students had a positive experience and the use of pair programming principles in an Excel course can therefore be recommended, even more so in large classes.

Yasemin Gülbahar and Filiz Kalelioglu.

Competencies of High School Teachers and Training Issues for Computer Science Education

Abstract: With the advent of new technologies and approaches for teaching coding and programming at all ages, many countries including Turkey have revised their computer science curriculum. These revisions have resulted in serious training needs being highlighted for teachers with inadequate competencies to meet the expected learning outcomes. Hence, the purpose of this study was to explore; (a) the self-perceived competencies of teachers about the topics in the curriculum, (b) perceptions about programming, programming tools and approaches, and (c) contribution of university education to their teaching profession. The findings revealed that most teachers believe they are not sufficiently competent to be an effective computer science teacher. Related to this finding, most of them especially mentioned their training needs for programming, emerging tools and technologies. Plus more than half of the participants think that the higher education curriculum is inadequate to meet teacher expectations and to create competent teachers. The computer science discipline is evolving with problems in both technological and pedagogical aspects almost worldwide. This paper aims to provide some insight to the problems and possible solutions to teacher training issues.

Line R Kolås and Robin Munkvold.

Learning through construction – a roller coaster ride of academic emotions?

Abstract: Learning through construction in higher IT education, where students design and develop IT-artifacts (software, apps, etc.) in project-based work, is a way of preparing students for the world outside, working in the intense industry of Media Technology. An active learning process, where students create software, also involves a variety of academic emotions. This paper presents the results of a survey done with 127 students following a bachelor course, focusing on the academic emotions experienced throughout the course period. The research question is “Which emotions do students experience in an academic setting of learning through construction?” The findings provide insights on academic emotions among students working in teams to create concepts for learning apps.

Anna Mavroudi and Monica Divitini.

Beliefs and perceptions about enabling factors among computing education stakeholders in Norway

Abstract: Teacher self-efficacy can have an impact both on teaching practices and to student learning. The purpose of this case study was to gain a better understanding of the difficulties that computer education stakeholders face, focusing on resources allocation and other stakeholders’ involvement in their activities. Thirty-two persons participated in the study. A questionnaire was disseminated to them which was inspired by the work of Bandura on teachers’ self-efficacy. The modified version involved a 2x2 pattern: two main factors (influence school resources and enlist community involvement) measured across two aspects (self-efficacy and perceived importance). The results indicate high levels of self-efficacy and perceived importance for both aspects: school resources and community involvement. Furthermore, in some cases, the results indicate moderate to high associations. Also, the findings indicate same levels of self-efficacy on both genders and across different prior experience groups. The results can be interpreted through the prism of the Norwegian computing education context, but also in comparison with the literature and have the potential to inform educational policy and research on the topic at stake.

Elisa Reci and Andreas Bollin.

Managing the Quality of Teaching in Computer Science Education

Abstract: The quality of teaching plays a crucial role in informatics classes. Important elements that influence the quality are the teachers, the methodology, the environment and so on, which can also be interpreted as elements of a teaching process. Consequently, some standards to assess the teaching process of informatics classes should be looked at closer in respect to quality. In a similar situation, the Software Engineering Institute (SEI) addressed the issue of quality, and it came up with a Capability Maturity Model Integration (CMMI) for monitoring and improving the processes for software development. Spurred by the CMMI model and the desire to improve the teaching quality of informatics classes, especially in primary and secondary schools, we propose a Teaching Maturity Model (TeaM). Within this paper, we introduce a draft version of our TeaM model built by the collection of the best practices from industry and informatics teachers.

Priya Bansal, Rade Latinovitch, Tom Lazar, Patrick McGee and Dennis Brylow.

XinuPi3: Teaching Multicore Concepts Using Embedded Xinu

Abstract: As computer platforms become more advanced, there is an escalating need to teach the complex concepts which they are capable of executing. This paper addresses one such need by presenting XinuPi3, a port of the lightweight instructional operating system {\em Embedded Xinu} to the Raspberry Pi 3. The Raspberry Pi 3 improves upon previous generations of inexpensive, credit card-sized computers by including a quad-core, ARM-based processor, opening the door for educators to demonstrate essential aspects of modern computing like inter-core communication and genuine concurrency.

Embedded Xinu has proven to be an effective teaching tool for demonstrating low-level concepts on single-core platforms, and it is currently used to teach a range of systems courses at multiple universities. As of this writing, no other bare metal educational operating system supports multicore computing. XinuPi3 provides a suitable learning environment for beginners on genuinely concurrent hardware. This paper provides an overview of the key features of the XinuPi3 system, as well as the novel embedded system education experiences it makes possible.

Silvio Giaffredo, Luisa Mich and Marco Ronchetti.

From the project-based learning method towards the competence-based approach to education

Abstract: The competence-based approach to education has been found to be effective for teaching. Introduced in Italian secondary schools in 2010 by the Ministry for Education, it has hardly had a real adoption. The paper illustrates a study which investigates how education in Italian schools could be made more competence-based. The goal is to find effective ways to support the adoption of the competence-based approach in the Italian secondary schools, with the aim at making the education more competence-based. Focusing on the Computer Science teachers, who often use the project-based learning method, the study investigates if this method helps to inductively embrace the competence-based approach. With the aim at understanding how Computer Science teaching is competence-based, we designed and realized an action-research course. The course started with an introduction to the project-based learning method, followed by the observation of teachers implementing this method. The preliminary results suggest that the project-based learning method can drive towards the competence based approach, provided the projects are carefully designed and subsequently managed.

Daniel Heres and Jurriaan Hage.

A Quantitative Comparison of Program Plagiarism Detection Tools

Abstract: In this work we compare a total of 9 different tools for the detection of source code plagiarism. We evaluated the plagiarism or copy detection tools CPD, JPlag, Sherlock, Marble, moss, Plaggie and SIM and two baselines, one based on the Unix tool diff and one based on the difflib module from the Python Standard Library. We provide visualizations of the output of these tools and compare the performance of each tool when running it on different tasks by comparing both the F-measures and the area under the precision- recall-curve (AUC-PR). We compare the performance using these metrics on each task and identify the best performing tools.

Linda Marshall.

Student Curriculum Development Buy-in - A Study from an Educational Software Development Module

Abstract: Curriculum design has changed from the traditional centralised approach where a lecturer was provided with the curriculum and content they had to teach to an approach where lecturers are able to provide their own flavour to the curriculum based on their knowledge and expertise. With the change in society and democratic citizenship, the role of the student in curriculum design is coming to the fore. Buy enabling students to buy-in to the curriculum they are to be taught provides them with a sense of ownership and motivates them to learn the content presented.
In this paper a module presented to fourth year students is used to show how when students are enabled to negotiate their curriculum, the content proposed during the negotiations deviates slightly over the years. From the results, the curricula presented after negotiation may look different in their approach, but all have common themes forming their foundation.

Lucia Budinská and Karolina Mayerova.

Graph Tasks in Bebras Contest - What does it have to do with gender?

Abstract: Bebras contest has been part of Slovak informatics for 10 years, making contestants familiar with information technologies, computer science concepts and improving their digital skills and computational thinking. In this article we take a look at task group which connects computer science concepts with computational thinking - graph tasks (for example trees, graphs, square grids, graph algorithms...). We focused on the three lowest categories of the Slovak contest, which include pupils of the whole primary school (aged 8 to 15) and analysed the tasks of the last four years. We used both qualitative and quantitative data analysis research methods. Based on the coded data, we obtained the subcategories which we further analysed, focusing on identification of the specifics of the tasks in which there were significant differences between boys and girls. Using comparative analysis, we found that boys are better in tasks with simple (relatively abstract) representation of the structure which is described by a larger amount of text, but the main point of the task is to identify the problem and create or uncover a strategy for finding a solution. Girls' performance is better in tasks that have less text, relatively more complicated representation of the structure and are focused on simple operations over graphs or reading them.

Henrik Nygren, Juho Leinonen and Arto Hellas.

Tracking Students Internet Browsing in a Machine Exam

Abstract: Traditionally, introductory computer science courses have focused on teaching programming, and have not included teaching information retrieval skills. However, a large part of a programmer's time is spent looking at documentation or browsing the internet for guidance on how to solve the small subtasks that programming often consists of or which library to use for a specific need.

We have developed a browser-plugin that tracks how students use online resources during a machine exam. Such a tool could be used -- for example -- to detect whether there is a difference between the browsing behavior of high- and low-performing students. To this end, we conduct a case study with the tool where we examine students' browsing in a high-stakes machine exam from which the best students are granted the right to study at a university.

In the future, the tool could be used to examine students' browsing and possibly inform decisions on how to teach information retrieval skills to students.