4 research outputs found

    Promoting Programming Learning. Engagement, Automatic Assessment with Immediate Feedback in Visualizations

    Get PDF
    The skill of programming is a key asset for every computer science student. Many studies have shown that this is a hard skill to learn and the outcomes of programming courses have often been substandard. Thus, a range of methods and tools have been developed to assist students’ learning processes. One of the biggest fields in computer science education is the use of visualizations as a learning aid and many visualization based tools have been developed to aid the learning process during last few decades. Studies conducted in this thesis focus on two different visualizationbased tools TRAKLA2 and ViLLE. This thesis includes results from multiple empirical studies about what kind of effects the introduction and usage of these tools have on students’ opinions and performance, and what kind of implications there are from a teacher’s point of view. The results from studies in this thesis show that students preferred to do web-based exercises, and felt that those exercises contributed to their learning. The usage of the tool motivated students to work harder during their course, which was shown in overall course performance and drop-out statistics. We have also shown that visualization-based tools can be used to enhance the learning process, and one of the key factors is the higher and active level of engagement (see. Engagement Taxonomy by Naps et al., 2002). The automatic grading accompanied with immediate feedback helps students to overcome obstacles during the learning process, and to grasp the key element in the learning task. These kinds of tools can help us to cope with the fact that many programming courses are overcrowded with limited teaching resources. These tools allows us to tackle this problem by utilizing automatic assessment in exercises that are most suitable to be done in the web (like tracing and simulation) since its supports students’ independent learning regardless of time and place. In summary, we can use our course’s resources more efficiently to increase the quality of the learning experience of the students and the teaching experience of the teacher, and even increase performance of the students. There are also methodological results from this thesis which contribute to developing insight into the conduct of empirical evaluations of new tools or techniques. When we evaluate a new tool, especially one accompanied with visualization, we need to give a proper introduction to it and to the graphical notation used by tool. The standard procedure should also include capturing the screen with audio to confirm that the participants of the experiment are doing what they are supposed to do. By taken such measures in the study of the learning impact of visualization support for learning, we can avoid drawing false conclusion from our experiments. As computer science educators, we face two important challenges. Firstly, we need to start to deliver the message in our own institution and all over the world about the new – scientifically proven – innovations in teaching like TRAKLA2 and ViLLE. Secondly, we have the relevant experience of conducting teaching related experiment, and thus we can support our colleagues to learn essential know-how of the research based improvement of their teaching. This change can transform academic teaching into publications and by utilizing this approach we can significantly increase the adoption of the new tools and techniques, and overall increase the knowledge of best-practices. In future, we need to combine our forces and tackle these universal and common problems together by creating multi-national and multiinstitutional research projects. We need to create a community and a platform in which we can share these best practices and at the same time conduct multi-national research projects easily.Siirretty Doriast

    Efficient Use of Teaching Technologies with Programming Education

    Get PDF
    Learning and teaching programming are challenging tasks that can be facilitated by using different teaching technologies. Visualization systems are software systems that can be used to help students in forming proper mental models of executed program code. They provide different visual and textual cues that help student in abstracting the meaning of a program code or an algorithm. Students also need to constantly practice the skill of programming by implementing programming assignments. These can be automatically assessed by other computer programs but parts of the evaluation need to be assessed manually by teachers or teaching assistants.There are a lot of existing tools that provide partial solutions to the practical problems of programming courses: visualizing program code, assessing student programming submissions automatically or rubrics that help keeping manual assessment consistent. Taking these tools into use is not straightforward. To succeed, the teacher needs to find the suitable tools and properly integrate them into the course infrastructure supporting the whole learning process. As many programming courses are mass courses, it is a constant struggle between providing sufficient personal guidance and feedback while retaining a reasonable workload for the teacher.This work answers to the question "How can the teaching of programming be effectively assisted using teaching technologies?" As a solution, different learning taxonomies are presented from Computer Science perspective and applied to visualization examples so the examples could be used to better support deeper knowledge and the whole learning process within a programming course. Then, different parts of the assessment process of programming assignments are studied to find the best practices in supporting the process, especially when multiple graders are being used, to maintain objectivity, consistency and reasonable workload in the grading.The results of the work show that teaching technologies can be a valuable aid for the teacher to support the learning process of the students and to help in the practical organization of the course without hindering the learning results or personalized feedback the students receive from their assignments. This thesis presents new visualization categories that allow deeper cognitive development and examples on how to integrate them efficiently into the course infrastructure. This thesis also presents a survey of computer-assisted assessment tools and assessable features for teachers to use in their programming assignments. Finally, the concept of rubric-based assessment tools is introduced to facilitate the manual assessment part of programming assignments

    Enhancing comprehension in open distance learning computer programming education with visualization

    Get PDF
    This thesis describes a research project aimed at improving the tracing skills of first-year programming students enrolled for an introductory C++ course at an open distance learning institution by means of a tutorial in the form of a program visualization tool to teach the students to draw variable diagrams. The research was based on the findings from the BRACElet project (Clear, Whalley, Robbins, Philpott, Eckerdal, Laakso & Lister, 2011). A design-based research methodology was followed. To guide the process of developing the tutorial, a framework of 26 guidelines for developing and using visualization tools to teach programming was synthesized from the literature on computing education research CER, educational psychology and computer graphics. Guidelines were supplemented with reasons or explanations for their recommendation and considerations to be taken into account when using a guideline. The framework was enhanced by lessons learnt during the development and testing of the tutorial. The tutorial was tested and refined during two implementation cycles. Both cycles included quantitative and qualitative investigations. All students registered for the introductory module received the tool with their study material. For the quantitative investigations, students completed a questionnaire after using the tutorial. Through the questionnaire biographical data was acquired, the manner in which students used the tutorial and how they experienced using it. The responses to the questionnaires were statistically analysed in combination with respondents’ final marks. The statistical modelling indicated that the students’ biographical properties (a combination of level of programming experience, marks obtained for Mathematics and English in matric and first-time registration for COS1511 or not), had the biggest impact on their final marks by far. During the qualitative investigations students were eye tracked in a Human-Computer Interaction laboratory. The gaze replays in both cycles revealed that students’ reading skills impacted largely on their success, connecting with the findings from the quantitative investigations. Reflections on why the tutorial did not achieve its purpose; and why poor reading skills may have such a strong effect on learning to program, contribute some theoretical understanding as to how novices learn to program.Computer ScienceD. Phil. (Computer Science
    corecore