A team is much more flexible if everyone knows enough about every part of the system to work on it. Instead of having a few people overloaded with work while other team members have little to do, the whole team can be productive. Any number of developers can be assigned to the hottest part of the system. Flexible load balancing of this type is a manager's dream come true. Simply encourage everyone to try working on a new section of the system at least part of each iteration.
Pair programming makes it possible without loosing productivity and ensures continuity of thought.
One person from a pair can be swapped out while the other continues with a new partner if desired. Cross training is a good idea.