Particularmente, lo automatizo mediante dos jobs, uno de backup en un punto compartido en la red, y otro con el restore correspondiente... y listo.
Para pisar la base de desarrollo sin que haya usuarios conectados... es más que simple:
ALTER DATABASE [DataBase]
SET OFFLINE WITH ROLLBACK IMMEDIATE
ALTER DATABASE [DataBase]
SET ONLINE
El ejemplo planteado está muy bien pero me resultado demasiado tedioso.
Enjoy!
Saludos, Daniel.