In his post on DB Snapshots, Andrew Calvett offers some great examples of how to use DB Snapshots.  I'll offer another. 

I currently work with a General Ledger and Accounts Receivables system that has some large batch cycles.  Testing for these behemoths can take hours at a time, which only changes a fraction of the database.  A second run of a batch test sometimes must wait on a database restore, which severly limits the number of test cycles in a day.  I'm working to use snapshots to speed up the database restore time, allowing the QA team to get more than 1 test per day. 

Pros :
Restore performance could be greatly increased
More testing = better code (or so you'd hope)

Cons:
If the batch changes a lot of data, size could be a factor
There will be some performance overhead as a write to the source DB means a copy of the page to the snapshot DB.

What do you think about database snapshots?  How are you using them?

Jon