Good approaches to integrate research and teaching?
An experience that worked out well in my past: in grad school as a TA, I helped to create an "intensive" section of the main introductory artificial intelligence course.  Students who opted into the intensive section did two projects and got 25% more units of course credit.

For each project, the students had two options, an "applied" option and a "research" option, each on something highly topical.  The research options were always restricted-scope versions of academic research problems that the professor and/or TAs were actually involved in.  This was a nice motivator for students, since they could see how what they were doing related to a real scientific problem.
The applied option was similarly relevant to industrial R&amp;D. For example, the machine learning project's applied option was typically to build a spam filter against whatever turned up in that year's "wild-harvested" corpus.  Students met with their TAs multiple times got guidance while working on the project, and were coached on how to produce a good technical report at the end.

These projects also gave a nice path to getting talented and interested students involved in research as undergraduates.  We made a point of reaching out to students whose projects were particularly good and offering to help get them connected with undergraduate research opportunities.  Many ended up working joining the professor's research group, and many others joined research groups of other professors where we helped make introductions.  A large fraction of those went on to grad school, and at least some to faculty positions (though I don't think anybody ever did a proper quantitative assessment). In effect, doing a "trial run" of working on research-style projects in class both helped students discover interest in research that they might not have realized, and also helped reduce the risk for professors to take them on afterwards.

The main challenges in doing this were:


selecting appropriately scoped projects, complex and interesting enough to give the students a taste of research, but not requiring deep background or more than a few dozen hours of work, and
making sure TAs were sufficiently advanced as grad students to be able to coach the students well.