Teaching Basic Software Engineering to Senior High School Students

Teaching Basic Software Engineering to Senior High School Students

Barbara Köhler (Technische Universität München, Germany), Michaela Gluchow (Technische Universität München, Germany) and Bernd Brügge (Technische Universität München, Germany)
DOI: 10.4018/978-1-4666-4062-7.ch009
OnDemand PDF Download:


Software Engineering (SE) is an increasingly important topic as software projects increase in size, budget, and duration. The authors suggest starting teaching SE already to high school students instead of waiting until their freshman year at university. This chapter shows the principles the authors used for creating such courses. First, the authors explain which software lifecycle model the authors use, why, and how it needs to be tailored for students with very little development experience. Second, the authors discuss the educational models the authors apply to increase motivation and counter the inert knowledge problem often observed in lectures. The authors mainly focus on goal-based scenarios and scaffolding, two constructivist design methods. Finally, the authors present a case study of one course they conducted in fall 2011 with eleven high school students between ages 16 and 18.
Chapter Preview

Course Design Theory

In our course we pursue two main objectives: First we want students to gain transferable knowledge about software engineering and basic programming skills. Second we want them to be motivated, eager to learn more about software engineering. Every design decision should be made in accordance with those goals while also taking into account our target group: senior high school students or freshmen, who have little or no knowledge about programming and software engineering. In the following section we discuss the major theories applied in designing the course. This includes theory behind principles from educational technologies as well as Software Engineering.

Complete Chapter List

Search this Book: