Empirical studies of computer-science learning
Understanding how people learn software modelling and development
As software governs increasingly more of our lives, we need more people to be able to understand software and software development and to actively engage with it. This requires training: we need to teach people how software works, and how to develop it themselves. To do so, we need to understand how people learn software development. What are the key concepts? In what order should they be presented? What are good pedagogic approaches? What are common misconceptions and how can we address them? Does modelling make it easier for people to engage in software development and if so, how?
We have been doing some initial work using qualitative studies to improve our understanding of how students learn programming and software development. More work is needed in this area and I am looking for PhD students to help with this work. I’m particularly interested in extending this work into understanding and supporting students learning modelling and model-driven engineering.