The indirect model is best suited for the teaching of concepts, patterns, and abstractions and provides seven teaching functions for doing so advance organization of examples and nonexamples, use of questions to guide search and discovery, use of student ideas, student self-evaluation, and group discussion.