Teaching Student Programmers How to Model: Opportunities and Challenges

Robert France


In my experience, students with some programming expertise (or students who believe they are programming experts) tend to view software modeling with great skepticism. They often feel that modeling adds accidental complexity to the software development process as they perceive it.

While we should acknowledge that there may be some elements of truth in their views (new methods, tools and techniques do bring additional baggage that can initially contribute to accidental complexity), we, as educators, should also try to leverage such skepticism in an opportunistic manner. In this talk I'll present some thoughts on how we can leverage such skepticism and also discuss some of the challenges of teaching students how to discover and use "good" abstractions in their models.


You can find the slides of the presentation here.