Setting up a new theme.

I want to setup a new theme on our school's website but would like to keep the current theme and layout present for visitors. Is there a way I can change the theme and widgets etc. while visitors see the current theme/layout? I don't really want to do a new install and transfer databases etc., that was a pain last time!

Any help would be great.