Software Dev Cycle As Part of CS Curriculum?
That was hands down the best software engineering course I took. The entire course is a series of short, intense team projects to develop an escalating series of more complex software products- starting from a simple day planner and working up to a networked multiplayer game, with graphics and all. This was back in 2000, and it was really all about learning new concepts like MVC and other design patterns and applying them on the fly.
The most important aspects by far were the small teams and the fast pace, both of which are perfect training for doing anything fun when you get out- like starting software companies. Technologies and methodologies change, understanding design and how to work with people under intense deadlines is always useful.