aalto1 untyped-item.component.html
Design of a tutorial system within a professional IDE to support programming education
Loading...
URL
Journal Title
Journal ISSN
Volume Title
School of Science |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
Department
Major/Subject
Mcode
Language
en
Pages
58
Series
Abstract
Programming tutorials offer guided hands-on exercises to students. Programming tutorials can run within a professional Integrated Development Environment (IDE), or a simpler more abstract working environment. By working directly within a professional-grade IDE, students can become accustomed to the features of the IDE, for example, for debugging, that they would otherwise first use in a professional environment.
This thesis presents a feasible design for an interactive tutorial system within a professional IDE in the context of Aalto University’s introductory programming courses. The tutorial system was built as part of an IntelliJ plugin that was previously developed and used in introductory Scala programming courses. The thesis showcases the development process of an interactive tutorial system, with the challenges that emerged and the solutions that the development team reached. The proposed design is outlined in detail, including factors such as requirements, architecture, user interface and configuration that are of interest from a software engineering perspective. Finally, there is an example exercise accompanied with explanations of how the tutorial works behind the scenes. The thesis contains an evaluation of the proposed system against existing advice in the literature about novel educational tools. It examines how this design matches the literature advice, how it does not follow the existing advice, and why. The evaluation is based on heuristics from software engineering and education literature, and analysis using the Technology Acceptance Model (TAM).
The primary result of the thesis is a feasible design of a tutorial system integrated with a professional IDE. Second, the thesis concludes that the tutorial has the potential to be accepted by the students. Finally, by critically evaluating the design, the thesis finds areas of improvement and argues that a hint system is what would enhance the tutorial system’s educational value the most.