Gibson, J. P. and O'Kelly, J. (2005) Software engineering as a model of understanding for learning and problem solving. [Conference Proceedings]