Abstract
In the current labor market, a large number of people engage in programming activities, even without being trained developers. Fostering Software Engineering (SE) principles at the K-12 level can increase the quality of the code that students will write in their future careers. Middle school students usually learn Computer Science (CS) as part of other disciplines; thus, the challenge is achieving the CS learning objectives and foster SE principles while fulfilling the curricular objectives. In this work, we describe a didactic module and its assessment framework; moreover, we report the results of a classroom experience that shows the effectiveness of the proposed approach. This work provides educators with a practical example of how to cover several areas of technology in a way for middle school students to be engaged and to spark future interest. The results encourage us to work on the development of the next modules dedicated to middle schools.