We design lessons that are well scripted and well organized, and that use multiple approaches to illustrating the principles or ideas being taught, Lessons are coherent, and oriented towards problem solving rather than to the rote mastery of facts and procedures. Problems are represented visually through a model-drawing approach which breaks the problems into various components. Our teaching approach helps students simplify and understand complex problems.