For discussion: How much do you re-use assignments from year to year?
I think in computer science, assignment re-use is much more common than in other areas. In part that's because other sciences more naturally have "parametrized" problems -- you change the numbers, you get at least a nominally different problem. CS assignments don't always naturally fit that mold. Programming assignments can require a long time to design, and don't naturally parametrize. (Indeed, part of the goal in writing a program is that you can give the program different inputs!) With theoretical assignments, you can try to change the setting (the Kleinberg/Tardos book does a nice job trying to give different settings -- story problems -- in various exercises for specific techniques), but if you're asking for a proof, it can be hard to modify substantially. Good problems often get re-used.
A problem with assignment re-use that I'm unfortunately quite familiar with as an ex-member (and currently "on-call consultant") for Harvard's administrative board is that solutions start to circulate and copying can occur. When one student copies another within a class, it can already be difficult. (The question of whether the information was "given" or "taken" can be important in deciding the appropriate response.) What about when one student copies work from a student who has already finished the class? What responsibility, if any, does your institution expect people who have finished a class to take for not sharing their work inappropriately?