For shorter release cycles, I am becoming a fan of alphabetically ordered, thematic codenames. You never have to remember whether Ninkasi came before or after Rogue as long as you can sing the ABCs. But for longer release cycles, I prefer a more organic approach.

One other rule that you should have mentioned, no mention of codenames in the code itself. "Why are all of these classes prefix with TSU? And these other ones with T1?" Comments are OK, but variable names or class names are not.