I could see this as maybe something for a small software engineering course to do. maybe. I think in those cases it might even be better to split the class into teams and have them develop a product idea, elect people to various roles, and execute the plan as a semester long project. Midterms, quizzes, etc become sprint reviews and plannings. It would be great if you could get some of the b-school kids to roll over for a combined class where they takeover PMing.
Admittedly I am cynical. But the way I got into programming was many, many years before I started my CS degree. I just built cool things I needed. I got into reverse engineering because being a lazy high schooler I wanted to build trainers for video games so I could get a high level without actually working on it. Call it pathetic - sure. But playing video games is so boring. It's much more fun to get them to play for you :).
What ever happened to just being interested? I hesitate to suggest this but could it because a lot of people are getting into computer science strictly for the job? So that they reach the terminal points in the program and are completely without direction?
I dunno, just rambling I guess. This just strikes me as so odd.