If you are upgrading SQL 2005 to SQL 2008 or an earlier version of SQL 2005 to a newer version (such as SP1 to SP3), then you can do this with database mirroring. Then you don't need to do the tail backup or any of the manual steps when it comes time to switchover. You just need to perform a failover.
Best part is, you can update the client conenction strings ahead of time to have the new server as the principal and the old server as the mirror and the client will automatically switch to the new machine.
And if you want, you could then upgrade the old server and keep using it as a mirror for the new server.