Date of Award


Degree Name

MS in Computer Science


Computer Science


David Janzen


Design Patterns have insinuated themselves into the forefront of computer science and software engineering practice. To this end, there has been much scholarship about the proper way to introduce them into the classroom. Studies indicate that understanding the contexts in which design patterns are to be used is one of the most (if not the most) difficult challenge in applying design patterns. However, little research on the topic attempts to solve the problem of better illuminating this context problem, preferring instead to focus on simplification of the patterns and better examples to explain them. This paper discusses a new paradigm through which the teaching of design patterns can be viewed, one which focuses on conceptual examples and contexts as the key elements in teaching design patterns. To better illustrate this new ideology, several short instructional videos, each employing this approach with a different design pattern were created. Their effectiveness was subsequently assessed, relative to traditional lecture that focused more on teaching the structure of the patterns.