My research with respect to this topic focuses on the teaching of human (cognitive and social) aspects of software engineering in general and on the teaching of software engineering as a reflective practice in particular. The ‘reflective practice’ perspective, introduced by Schön in 1983, guides professionals to rethink their creations during and after the completion of the formation process. Based on the analysis of the field of software engineering, I have examined the fitness of a ‘reflective practice’ perspective to software engineering in general, and to software engineering education in particular (Hazzan, 2002). As a continuation of this study, my research focuses now on the teaching of software development methods in general and agile software development in particular. For further information, look at my Column/Blog @ System Design Frontier.
Book: Hazzan, O. and Tomayko, J. (2004). Human Aspects of Software Engineering, Charles River Media.