After upgrading to a newer iPhone, how does keeping the old one around for development purposes work?
When I upgraded from 3 to 4, after I setup the iPhone 4 to sync with my computer, I took the iPhone 3 and used the reset-erase function on the iPhone and then when I connected it to my iTunes, I gave it a new name (so I could setup different sync options). I use it as an extra ipod-like device for the kids to play with or watch movies on when we are traveling.

Note: the iPhone 4 has a different sized SIM card than the iPhone 3 so you won't be just swapping them. I had to go to the AT&amp;T store to affect the move from my iPhone 3 to iPhone 4. The iPhone 3 just has an inactive SIM card in it.

I didn't have to Jailbreak it to keep using it. And you can still use it with XCode Organizer to install applications that you are developing for testing purposes.