Abstract
Besides professional programmers, many “end-user programmers” write code in their daily life. Given that so much of end-user-created software suffers from quality problems, Software Engineering (SE) is no longer solely applicable to the professional context: a clear computational processing can be useful in everyday life. While the expansion of programming skills acquisition initiatives in K-12 (i.e., primary and secondary schools) has contributed to improving learners’ coding ability, there have not been many studies devoted to the teaching/learning of SE concepts. In this chapter, we focus on understanding how it is possible to bring the benefits of Agile techniques inside the classroom. Moreover, our goal is to show how each selected practice (such as user stories and pair programming) can be leveraged or adapted to the educational context; to this end, tools already adopted in schools are considered as possible substitutes of professional ones.